Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
#1

как исправить часть в майне? - C++

05.12.2012, 23:05. Просмотров 513. Ответов 14
Метки нет (Все метки)

( как исправить часть в мейне, опечатка)
в матрице удалить все столбцы, в которых все элементы положительны.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream>
using namespace std;
int **create(int &n, int &m)
{cout<<"n="; cin>>n;;
cout<<"m="; cin>>m;
int **mas=new int*[n];
for (int i=0; i<n; i++) mas[i]=new int[m];
for (int i=0; i<n; i++)
for (int j=0; j<m; j++)
{cout<<"mas["<<i<<"]["<<j<<"]="; cin>>mas[i][j];}
return mas;
}
void print (int **mas, int n, int m)
{for (int i=0; i<n; i++, cout<<endl)
for (int j=0; j<m; j++) cout<<mas[i][j]<<"\t";}
void deleteMas(int**mas, int n)
{ for (int i=0; i<n; i++)
delete [] mas[i];
delete [] mas;}
int main()
{int a, n, m, k,sh;
int a**=create(n,m);
print(a,n,m);
cout<<"k="; cin>>k;
int l=0, i,j;
while (l<m)
{ int sh=0; for (i=0; i<n; i++) if (sh>0) sh++;}
else {for (int j=l; j<m-1; j++)
for (int i=0; i<n; i++)
a[i][j]=a[i][j+1]; m--;
print(a,n,m);}
deleteMas(a,n);
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.12.2012, 23:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос как исправить часть в майне? (C++):

GCC как часть библиотек линковать статически, а часть динамически? - C++
Просто пока лень Qt пересобирать, чтобы возыметь статик-либы. Нужно Qt линковать динамически, а boost, gmp, ... статически. Возможно ли...

Какие действия исполняет заданная часть программы? Если есть ошибки исправить их и объяснить исправления - C++
. . . class Anketa { char *fam; char *name; public: Anketa (); ~ Anketa ( char *str); ...

Разделить дробное число на 2 части: целая часть числа и его дробная часть - C++
Пользователь вводит с клавиатуры сумму в валюте (дробное число). Вывести по отдельности количество Рублей и количество копеек (например,...

Есть ли возможность в char-массив часть данных ввести в буквах, а часть в цифрах? - C++
подскажите пожалуйста, есть ли возможность в char массив часть данных ввести в буквах, а часть в цифрах (или в любой другой массив вбить...

Ошибка в задаче: Найти мин. k, которое будет удовлетворять условию: fabs(правая часть - левая часть) < 10^(-15) - C++
Задача: k изменяется от 0 до бесконечности ((4k+1)! / ^2) * x^2k = =1/2* X принадлежит интервалу (-1/4 ; 1/4) Найти мин....

Скопировать часть строки и часть удалить - C++
1. Удалить из строки ее часть с заданной позиции и заданной длины. 2. Скопировать часть строки с определенной позиции и определенной...

14
Kuzia domovenok
05.12.2012, 23:07
  #2

Не по теме:

сам это читай, умник

0
David Sylva
05.12.2012, 23:18
  #3

Не по теме:

Kuzia domovenok Согласен с тобой, только автор девушка.

0
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
05.12.2012, 23:20  [ТС] #4
что за бред, вместо помощи?
0
David Sylva
05.12.2012, 23:22
  #5

Не по теме:

Цитата Сообщение от Юлия2505 Посмотреть сообщение
что за бред, вместо помощи?
Барышня научитесь форматировать текст, пощадите зрения ребят.

0
I.M.
565 / 548 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
05.12.2012, 23:22 #6
Юлия2505, сделайте код читаемым, если хотите помощи. Я около 10 секунд искал только сам мейн
0
Croessmah
Эксперт CЭксперт С++
13513 / 7671 / 866
Регистрация: 27.09.2012
Сообщений: 18,872
Записей в блоге: 3
Завершенные тесты: 1
05.12.2012, 23:24 #7
Цитата Сообщение от Юлия2505 Посмотреть сообщение
что за бред, вместо помощи?
Вы сами в нем разбираетесь? Отформатируйте код, иначе его читать невозможно и вряд ли кто-то будет разбираться. С таким же успехом можно было всё в одну строчку записать.

Добавлено через 1 минуту
Жесть, но в глаза бросилось это:
C++
1
int a**=create(n,m);
это еще страшнее
0
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
05.12.2012, 23:28  [ТС] #8
по другому я не умею, я пару недель только как разбираюсь в С++, просто с условием основным помогите: удаляются столбцы, где все элементы положительны
0
David Sylva
1288 / 950 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
05.12.2012, 23:30 #9
Цитата Сообщение от Юлия2505 Посмотреть сообщение
по другому я не умею, я пару недель только как разбираюсь в С++, просто с условием основным помогите: удаляются столбцы, где все элементы положительны

Не по теме:

Пробелы не умеете между строчками ставить?

0
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
05.12.2012, 23:30  [ТС] #10
Цитата Сообщение от Croessmah Посмотреть сообщение
Вы сами в нем разбираетесь? Отформатируйте код, иначе его читать невозможно и вряд ли кто-то будет разбираться. С таким же успехом можно было всё в одну строчку записать.

Добавлено через 1 минуту
Жесть, но в глаза бросилось это:
C++
1
int a**=create(n,m);
это еще страшнее
основной костяк чисто с книги списывала и эту строчку в том числе
0
Croessmah
Эксперт CЭксперт С++
13513 / 7671 / 866
Регистрация: 27.09.2012
Сообщений: 18,872
Записей в блоге: 3
Завершенные тесты: 1
05.12.2012, 23:37 #11
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream>
using namespace std;
int **create(int &n, int &m)
{cout<<"n="; cin>>n;;
cout<<"m="; cin>>m;
int **mas=new int*[n];
for (int i=0; i<n; i++) mas[i]=new int[m];
for (int i=0; i<n; i++)
for (int j=0; j<m; j++)
{cout<<"mas["<<i<<"]["<<j<<"]="; cin>>mas[i][j];}
return mas;
}
void print (int **mas, int n, int m)
{for (int i=0; i<n; i++, cout<<endl)
for (int j=0; j<m; j++) cout<<mas[i][j]<<"\t";}
void deleteMas(int**mas, int n)
{ for (int i=0; i<n; i++)
delete [] mas[i];
delete [] mas;}
int main()
{int n, m, k,sh;
int **a=create(n,m);
print(a,n,m);
cout<<"k="; cin>>k;
int l=0, i,j;
while (l<m)
{ int sh=0; for (i=0; i<n; i++) if (sh>0) sh++;
else {for (int j=l; j<m-1; j++)
for (int i=0; i<n; i++)
a[i][j]=a[i][j+1]; m--;
print(a,n,m);}}
deleteMas(a,n);
return 0;
}
запускается, но работает все равно не правильно. Разбираться в логике тут как-то не хочется - глаза сломаешь.
0
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
05.12.2012, 23:38  [ТС] #12
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <iostream>
 
using namespace std;
 
int **create(int &n, int &m)
 
{cout<<"n="; cin>>n;
 
 
cout<<"m="; cin>>m;
 
int **mas=new int*[n];
 
for (int i=0; i<n; i++) mas[i]=new int[m];
 
for (int i=0; i<n; i++)
 
 
for (int j=0; j<m; j++)
 
{cout<<"mas["<<i<<"]["<<j<<"]="; cin>>mas[i][j];}
 
return mas;
 
}
 
void print (int **mas, int n, int m)
 
{for (int i=0; i<n; i++, cout<<endl)
 
for (int j=0; j<m; j++) cout<<mas[i][j]<<"\t";}
 
void deleteMas(int**mas, int n)
 
{ for (int i=0; i<n; i++)
 
delete [] mas[i];
 
delete [] mas;}
 
int main()
 
{int a, n, m, k,sh;
 
int a**=create(n,m);
 
print(a,n,m);
 
cout<<"k="; cin>>k;
 
int l=0, i,j;
 
while (l<m)
 
{ int sh=0; for (i=0; i<n; i++) if (sh>0) sh++;}
 
else {for (int j=l; j<m-1; j++)
 
for (int i=0; i<n; i++)
 
a[i][j]=a[i][j+1]; m--;
 
print(a,n,m);}
 
deleteMas(a,n);
 
return 0;
}
0
Croessmah
Эксперт CЭксперт С++
13513 / 7671 / 866
Регистрация: 27.09.2012
Сообщений: 18,872
Записей в блоге: 3
Завершенные тесты: 1
05.12.2012, 23:46 #13
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream>
using namespace std;
int **create(int &n, int &m)
{
    cout<<"n="; cin>>n;;
    cout<<"m="; cin>>m;
    int **mas=new int*[n];
    for (int i=0; i<n; i++) 
        mas[i]=new int[m];
    for (int i=0; i<n; i++)
        for (int j=0; j<m; j++){
            cout<<"mas["<<i<<"]["<<j<<"]="; 
            cin>>mas[i][j];
        }
    return mas;
}
void print (int **mas, int n, int m)
{
    for (int i=0; i<n; i++, cout<<endl)
        for (int j=0; j<m; j++) 
            cout<<mas[i][j]<<"\t";
}
void deleteMas(int**mas, int n)
{ 
    for (int i=0; i<n; i++)
        delete [] mas[i];
    delete [] mas;}
int main()
{
    int n, m, k,sh;
    int **a=create(n,m);
    print(a,n,m);
    cout<<"k="; cin>>k;
    int l=0, i,j;
    while (l<m)
    {
        int sh=0; 
        for (i=0; i<n; i++) 
            if (sh>0) 
                sh++;
            else{
                for(int j=l; j<m-1; j++)
                    for (int i=0; i<n; i++)
                        a[i][j]=a[i][j+1]; 
                m--;
                print(a,n,m);
            }
    }
    deleteMas(a,n);
    return 0;
}
Синтаксические исправил.
0
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
05.12.2012, 23:48  [ТС] #14
хоть на этом спасибо.
0
Croessmah
Эксперт CЭксперт С++
13513 / 7671 / 866
Регистрация: 27.09.2012
Сообщений: 18,872
Записей в блоге: 3
Завершенные тесты: 1
06.12.2012, 00:07 #15
Цитата Сообщение от Юлия2505 Посмотреть сообщение
хоть на этом спасибо.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include <iostream>
using namespace std;
int **create(int &n, int &m)
{
    cout<<"Column = "; cin>>n;;
    cout<<"Rows = "; cin>>m;
    int **mas=new int*[n];
    for (int i=0; i<n; i++) 
        mas[i]=new int[m];
    for (int i=0; i<n; i++)
        for (int j=0; j<m; j++){
            cout<<"mas["<<i<<"]["<<j<<"]="; 
            cin>>mas[i][j];
        }
    return mas;
}
void print (int **mas, int n, int m)
{
    for (int i=0; i<m; i++, cout<<endl)
        for (int j=0; j<n; j++) 
            cout<<mas[j][i]<<"\t";
}
void deleteMas(int**mas, int n)
{ 
    for (int i=0; i<n; i++)
        delete [] mas[i];
    delete [] mas;}
int DelCol(int ** (&arr), int &col, int &row, int k){
    if (k<0 && k>=col) {std::cout<<"\n\tError!!!\n"; return 1;};
    int ** temp=new int*[--col];
    bool bFlag;
    for(int i=0, bFlag=false;i<col;++i){
        if(i==k)
            bFlag=true;
        temp[i]=arr[((bFlag)?(i+1):i)];
    }
 
    delete [] arr;
    arr=temp;
    return 0;
}
int main()
{
    int n, m, k,sh;
    int **a=create(n,m);
    print(a,n,m);
    bool bflag=true;
    for(int i=0;i<n;++i,bflag=true){
        for(int j=0;j<m;++j){
            if(a[i][j]<0){bflag=false; break;}
        }
        if (bflag)
            DelCol(a,n,m,i);
    }
    std::cout<<std::endl;
    print(a,n,m);
    deleteMas(a,n);
    std::cin.get();
    std::cin.get();
    return 0;
}
0
06.12.2012, 00:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2012, 00:07
Привет! Вот еще темы с ответами:

как вывести часть массива? - C++
например массив А{10 3 4 5 1 9 4} а нужно вывести до его минимального значения, то есть B{10 3 4 5 1} Задача для С++

Как менять часть строки? - C++
Есть string word (&quot;&lt;tag=\&quot;c1\&quot;&gt;&quot;); Стоит поиск по этому word в тексте Хотелось бы сделать поиск в цикле, где можно было бы не только...

Как удалить часть файла? - C++
Друзья как просто без промежуточного файла или переписывания в новый файл оставить в исходном файле нужный блок т.е. ИСХОДНЫЙ ФАЙЛ:...

Как работает эта часть кода? - C++
element *el, *n_el; int i; n_el = (element *)malloc(sizeof(element)); printf(&quot;Vvedite FIO: &quot;); scanf(&quot;%32s %32s %32s&quot;,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru