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

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

Восстановить пароль Регистрация
 
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
05.12.2012, 23:05     как исправить часть в майне? #1
( как исправить часть в мейне, опечатка)
в матрице удалить все столбцы, в которых все элементы положительны.

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;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
05.12.2012, 23:07
  #2

Не по теме:

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

David Sylva
05.12.2012, 23:18
  #3

Не по теме:

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

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

Не по теме:

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

I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
05.12.2012, 23:22     как исправить часть в майне? #6
Юлия2505, сделайте код читаемым, если хотите помощи. Я около 10 секунд искал только сам мейн
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,902
Записей в блоге: 2
Завершенные тесты: 1
05.12.2012, 23:24     как исправить часть в майне? #7
Цитата Сообщение от Юлия2505 Посмотреть сообщение
что за бред, вместо помощи?
Вы сами в нем разбираетесь? Отформатируйте код, иначе его читать невозможно и вряд ли кто-то будет разбираться. С таким же успехом можно было всё в одну строчку записать.

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

Не по теме:

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

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

Добавлено через 1 минуту
Жесть, но в глаза бросилось это:
C++
1
int a**=create(n,m);
это еще страшнее
основной костяк чисто с книги списывала и эту строчку в том числе
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,902
Записей в блоге: 2
Завершенные тесты: 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;
}
запускается, но работает все равно не правильно. Разбираться в логике тут как-то не хочется - глаза сломаешь.
Юлия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;
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,902
Записей в блоге: 2
Завершенные тесты: 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;
}
Синтаксические исправил.
Юлия2505
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 12
05.12.2012, 23:48  [ТС]     как исправить часть в майне? #14
хоть на этом спасибо.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2012, 00:07     как исправить часть в майне?
Еще ссылки по теме:

C++ Есть ли возможность в char-массив часть данных ввести в буквах, а часть в цифрах?
Какие действия исполняет заданная часть программы? Если есть ошибки исправить их и объяснить исправления C++
Разделить дробное число на 2 части: целая часть числа и его дробная часть C++

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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,902
Записей в блоге: 2
Завершенные тесты: 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;
}
Yandex
Объявления
06.12.2012, 00:07     как исправить часть в майне?
Ответ Создать тему
Опции темы

Текущее время: 11:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru