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

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

Войти
Регистрация
Восстановить пароль
 
filimoncc
1 / 1 / 1
Регистрация: 02.12.2013
Сообщений: 104
#1

В чём ошибка? - C++

08.12.2013, 22:09. Просмотров 262. Ответов 7
Метки нет (Все метки)

В двумерном массиве удалить все строки, в которых среднее арифметическое элементов является двузначным числом.

Выдаёт ошибку 35:22: error: name lookup of 'z' changed for ISO 'for' scoping [-fpermissive]
В чём проблема?
И правильно ли я составил программу вообще?

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
#include <iostream>
#include <cstdlib>
using namespace std;
int main(){
    int a[100][100];
 
    int s=0, sa; int k=0;
 
   int n,m; cout<<"Vvedite n<=10 i m<=10 (kol-vo elementov v maccive)"<<endl;;cin>>n>>m;
   for (int i=0; i<n; i++){
 for (int j=0; j<m; j++)
{cout<<"a["<<i<<"]["<<j<<"]=";cin>>a[i][j];}
}
 
 
 
 
 
    for(int i=0;i<n; i++)
    {for (int j=0;j<m;j++)
    {s+=a[i][j];k++;}
    sa=s/k;
    if (abs(sa)>9&& abs(sa)<100)
    {
    for (int j=0;j<m;j++)
    {a[i][j]=a[i+1][j];}
             }
 
        }
for (int z=0; z<n; z++)
cout<<"\n";
for (int j=0; j<m; j++)
             cout<<a[z][j]<<"\t"; //в этой строке ошибка
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2013, 22:09     В чём ошибка?
Посмотрите здесь:

В чём ошибка? - C++
#include &lt;stdio.h&gt; #include &lt;math.h&gt; main() { float Pi=M_PI; float x,y,xn=2.5,xk=7.5,xh=0.5; printf(&quot;\n X Y\n&quot;); for (x=xn;x...

В чём ошибка? - C++
Описание проблемы: Открываю файл для чтения и записи. Записываю туда информацию. После этого, если: 1)я перевожу текущую позицию в...

в чём ошибка - C++
void load_file (queue *q) { char path; int count=0; system(&quot;cls&quot;); printf (&quot;\nVvedite put', imja i rashirenie...

В чём ошибка - C++
собственно вот. программа должна вывести логин, но не выводит его. по каким средствам можно заставить программу вывести логин #include...

в чём ошибка? - C++
не пойму в чём ошибка! :( выдаёт неправильное значение... Даны натуральное число n, действительное число х. Вычислить: ...

В чём ошибка - C++
Программа вылетает когда я пытаюсь по модулю найти. Объясните где я ошибся! // 2.cpp: определяет точку входа для консольного приложения. ...

В чём ошибка? - C++
Доброго времени суток! Есть задачка, есть кривое решение. :) Суть задачки такова: найти все простые числа до 1000 и вывести их на...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
08.12.2013, 22:19     В чём ошибка? #2
filimoncc, в фигурных скобочках вы обсчитались.
filimoncc
1 / 1 / 1
Регистрация: 02.12.2013
Сообщений: 104
08.12.2013, 22:36  [ТС]     В чём ошибка? #3
Ryuk, где конкретно?
VBmaster98
19 / 18 / 2
Регистрация: 30.09.2012
Сообщений: 35
08.12.2013, 22:54     В чём ошибка? #4
C++
1
2
3
4
5
6
7
8
9
10
11
using namespace std;
int main(){
    int a[100][100];
 
    int s=0, sa; int k=0;
 
   int n,m; cout<<"Vvedite n<=10 i m<=10 (kol-vo elementov v maccive)"<<endl;;cin>>n>>m;
   for (int i=0; i<n; i++){
 for (int j=0; j<m; j++)
{cout<<"a["<<i<<"]["<<j<<"]=";cin>>a[i][j];}
}//-лишняя скобка
если у Вас после for идет конец операций и Вы ставите } и сразу же ещё }(конец операций функции main???)...где возврощаемое значение main???return 0;???в конце...
значит это Ваша опечатка)Надесь что поможет)))
DU
1480 / 1056 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
08.12.2013, 23:03     В чём ошибка? #5
когда вот так абы как расставляют отступы тогда и возникают подобного рода проблемы.
требования к оформлению кода не из пальца высосаны, а здравым смыслом.
хорошо структуированный код легче понимать, легче искать ошибки.
не экономте на строчках. от этого читабельность кода сильно страдает.
вот на коленке расставил не особо разбираясь, что там у вас должно быть:
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
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
  int a[100][100];
 
  int s=0, sa; int k=0;
 
  int n,m;
  cout<<"Vvedite n<=10 i m<=10 (kol-vo elementov v maccive)"<<endl;
  cin>>n>>m;
 
  for (int i=0; i<n; i++)
  {
    for (int j=0; j<m; j++)
    {
      cout<<"a["<<i<<"]["<<j<<"]=";
      cin>>a[i][j];
    }
  }
 
  for(int i=0;i<n; i++)
  {
    for (int j=0;j<m;j++)
    {
      s+=a[i][j];k++;}
      sa=s/k;
      if (abs(sa)>9&& abs(sa)<100)
      {
        for (int j=0;j<m;j++)
        {
          a[i][j]=a[i+1][j];
        }
      }
    }
 
  // хз тут или дальше должна быть закрывающая.
  // c огириганльными отступами фиг разберешься.
 
  for (int z=0; z<n; z++)
    cout<<"\n";
 
  for (int j=0; j<m; j++)
    cout<<a[z][j]<<"\t"; //в этой строке ошибка
 
  return 0;
}
кажется наглючил в 28 строке. но суть - не найти вам ошибку, а показать, что
форматирование кода - полезная вещь. старайтесь придерживаться.
filimoncc
1 / 1 / 1
Регистрация: 02.12.2013
Сообщений: 104
08.12.2013, 23:17  [ТС]     В чём ошибка? #6
Со скобками разобрался, а вот сама программа не правильно работает. Помогите отладить правильно.

Добавлено через 3 минуты
Цитата Сообщение от VBmaster98 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
using namespace std;
int main(){
    int a[100][100];
 
    int s=0, sa; int k=0;
 
   int n,m; cout<<"Vvedite n<=10 i m<=10 (kol-vo elementov v maccive)"<<endl;;cin>>n>>m;
   for (int i=0; i<n; i++){
 for (int j=0; j<m; j++)
{cout<<"a["<<i<<"]["<<j<<"]=";cin>>a[i][j];}
}//-лишняя скобка
если у Вас после for идет конец операций и Вы ставите } и сразу же ещё }(конец операций функции main???)...где возврощаемое значение main???return 0;???в конце...
значит это Ваша опечатка)Надесь что поможет)))
Для помеченной вами закрывающейся скобки "лишняя скобка", в 8 строке в конце стоит открывающаяся. Так что со скобками порядок.

Добавлено через 7 минут
Цитата Сообщение от DU Посмотреть сообщение
когда вот так абы как расставляют отступы тогда и возникают подобного рода проблемы.
требования к оформлению кода не из пальца высосаны, а здравым смыслом.
хорошо структуированный код легче понимать, легче искать ошибки.
не экономте на строчках. от этого читабельность кода сильно страдает.
вот на коленке расставил не особо разбираясь, что там у вас должно быть:
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
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
  int a[100][100];
 
  int s=0, sa; int k=0;
 
  int n,m;
  cout<<"Vvedite n<=10 i m<=10 (kol-vo elementov v maccive)"<<endl;
  cin>>n>>m;
 
  for (int i=0; i<n; i++)
  {
    for (int j=0; j<m; j++)
    {
      cout<<"a["<<i<<"]["<<j<<"]=";
      cin>>a[i][j];
    }
  }
 
  for(int i=0;i<n; i++)
  {
    for (int j=0;j<m;j++)
    {
      s+=a[i][j];k++;}
      sa=s/k;
      if (abs(sa)>9&& abs(sa)<100)
      {
        for (int j=0;j<m;j++)
        {
          a[i][j]=a[i+1][j];
        }
      }
    }
 
  // хз тут или дальше должна быть закрывающая.
  // c огириганльными отступами фиг разберешься.
 
  for (int z=0; z<n; z++)
    cout<<"\n";
 
  for (int j=0; j<m; j++)
    cout<<a[z][j]<<"\t"; //в этой строке ошибка
 
  return 0;
}
кажется наглючил в 28 строке. но суть - не найти вам ошибку, а показать, что
форматирование кода - полезная вещь. старайтесь придерживаться.
А я думал мне здесь помогут ошибки найти...
Ryuk
09.12.2013, 00:40
  #7

Не по теме:

Добавлено через 4 минуты
VBmaster98, я нашел все скобочки

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
int main()
{
    int a[100][100];
 
    int s=0, sa; int k=0;
 
    int n,m; cout<<"Vvedite n<=10 i m<=10 (kol-vo elementov v maccive)"<<endl;;cin>>n>>m;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            cout<<"a["<<i<<"]["<<j<<"]=";cin>>a[i][j];
        }
    }
     
     
     
     
     
        for(int i=0;i<n; i++)
        {
            for (int j=0;j<m;j++)
            {
                s+=a[i][j];k++;
            }
                sa=s/k;
                if (abs(sa)>9&& abs(sa)<100)
                {
                    for (int j=0;j<m;j++)
                    {
                        a[i][j]=a[i+1][j];
                    }
                }
 
        }
            for (int z=0; z<n; z++)
                cout<<"\n";
            for (int j=0; j<m; j++)
             cout<<a[z][j]<<"\t"; //в этой строке ошибка
    return 0;
}

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2013, 00:44     В чём ошибка?
Еще ссылки по теме:

В чём ошибка? - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main (){ const char*str1; cin.getline(str1,255); cout&lt;&lt;str1; ...

В чём ошибка? - C++
#include &lt;iostream&gt; using namespace std; int main() { int N, i; cin &gt;&gt; N; int *arr = new int; for(int i = 0; i&lt;N;...

C++ в чём ошибка - C++
//--------------------------------------------------------------------------- #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include...

в чём ошибка ? - C++
#include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;string&gt; using namespace std; void replace(string &amp;str, char c,) { ...

В чём ошибка???((( - C++
Програма для нахождения площади интеграла #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; void main(){ double...


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

Или воспользуйтесь поиском по форуму:
filimoncc
1 / 1 / 1
Регистрация: 02.12.2013
Сообщений: 104
09.12.2013, 00:44  [ТС]     В чём ошибка? #8
Ryuk, пожалуйста напишите код программы, чтобы в двумерном массиве удалялись все строки, в которых среднее арифметическое элементов является двузначным числом.
Yandex
Объявления
09.12.2013, 00:44     В чём ошибка?
Ответ Создать тему
Опции темы

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