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

почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) - C++

Восстановить пароль Регистрация
 
 
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
21.04.2013, 11:48     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
setlocale( LC_ALL,"Russian" );
int a[4][6],i,j;
cout<<"Введите элементы массива: \n";
for (i=0;i<4;i++)
for (j=0;j<6;j++)
cin>>a[4][6];
{
    for (i=0;i<4;i++)
    for (j=0;j<6;j++)
    {int b;
    cin>>b;
    for (i=0;i<4;i++)
    if ([U]b[/U]<a[i])
        b[U]=[/U]a[i];
    }
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2013, 11:48     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана)
Посмотрите здесь:

C++ подскажите, почему программа выдает ошибку?
не могу понять почему не работает программа C++
C++ Компилятор выдает ошибку при объявлении массива. Не могу понять где соль
Не могу понять почему программа работает не правильно! C++
Программа на С++ вылетает, не могу понять почему!? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
21.04.2013, 11:52     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #2
Вы в цикле по переменной i меняете ее в этом участке кода:

Цитата Сообщение от Марина1312 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
for (i=0;i<4;i++)
for (j=0;j<6;j++)
{int b;
cin>>b;
for (i=0;i<4;i++)
if (b<a[i])
b=a[i];
}
Добавлено через 17 секунд
так делать нельзя
CPlusPlusBest
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 23
21.04.2013, 11:52     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #3
А #include <clocale> или <locale.h> уже не надо? Пойму надо инклудить его. Опишите проблему подробнее.
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
21.04.2013, 11:55  [ТС]     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #4
Цитата Сообщение от metaluga145 Посмотреть сообщение
Вы в цикле по переменной i меняете ее в этом участке кода:



Добавлено через 17 секунд
так делать нельзя
а как?

Добавлено через 1 минуту
Цитата Сообщение от CPlusPlusBest Посмотреть сообщение
А #include <clocale> или <locale.h> уже не надо? Пойму надо инклудить его. Опишите проблему подробнее.
вообще нужно решить задачу:Дан двумерный массив размерностью 46, заполненный целыми числами с клавиатуры. Сформировать одномерный массив, каждый элемент которого равен количеству элементов соответствующей строки, больших данного числа.

но вот никак не могу понять как ее решить(
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
21.04.2013, 11:58     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #5
Расскажите что должна делать программа. Я с этого кода не сильно понимаю ее суть.
Если Вы хотите использовать цикл в цикле, то во внутреннем цикле стоит использовать другую переменную. Ко всему этому в добавок хочу заметить,что такое сравнение b<a[i] не является допустимым, потому что a[i]-это массив, а b-это переменная типа int.
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
21.04.2013, 12:00  [ТС]     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #6
Цитата Сообщение от metaluga145 Посмотреть сообщение
Расскажите что должна делать программа. Я с этого кода не сильно понимаю ее суть.
Если Вы хотите использовать цикл в цикле, то во внутреннем цикле стоит использовать другую переменную. Ко всему этому в добавок хочу заметить,что такое сравнение b<a[i] не является допустимым, потому что a[i]-это массив, а b-это переменная типа int.
вот задача:Дан двумерный массив размерностью 4*6, заполненный целыми числами с клавиатуры. Сформировать одномерный массив, каждый элемент которого равен количеству элементов соответствующей строки, больших данного числа.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
21.04.2013, 12:01     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #7
Что еще за
C++
1
cin>>a[4][6]
? Нет такого элемента. Надо уж
C++
1
cin>>a[i][j]
а там, где подчеркнуто не забывайте что массив двумерный, и индексов должно быть два.
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
21.04.2013, 12:04  [ТС]     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #8
Цитата Сообщение от Tulosba Посмотреть сообщение
Что еще за
C++
1
cin>>a[4][6]
? Нет такого элемента. Надо уж
C++
1
cin>>a[i][j]
а там, где подчеркнуто не забывайте что массив двумерный, и индексов должно быть два.
мне нужно сформировать одномерный массив,а не представляю как это.поэтому я так написала,а правильно или нет...не знаю
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
21.04.2013, 12:08     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #9
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
#include "stdafx.h"
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
    setlocale( LC_ALL,"Russian" );
    int a[4][6],i,j,b,sum[4];
    cout<<"Введите элементы массива: \n";
    for (i=0;i<4;i++)
    for (j=0;j<6;j++)
    cin>>a[i][j];
 
    for (int k=0; k<4;++k)
    {
        cin>>b;
        sum[k]=0;
        for (i=0;i<6;i++)
        {
            if(b<a[k][i])
            sum[k]+=a[k][i];    
        }
    }
    return 0;
}
Добавлено через 1 минуту
В окончании Вы получите массив sum,который Вам и нужен
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
21.04.2013, 12:13  [ТС]     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #10
Цитата Сообщение от metaluga145 Посмотреть сообщение
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
#include "stdafx.h"
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
    setlocale( LC_ALL,"Russian" );
    int a[4][6],i,j,b,sum[4];
    cout<<"Введите элементы массива: \n";
    for (i=0;i<4;i++)
    for (j=0;j<6;j++)
    cin>>a[i][j];
 
    for (int k=0; k<4;++k)
    {
        cin>>b;
        sum[k]=0;
        for (i=0;i<6;i++)
        {
            if(b<a[k][i])
            sum[k]+=a[k][i];    
        }
    }
    return 0;
}
Добавлено через 1 минуту
В окончании Вы получите массив sum,который Вам и нужен
объясни пожалуйста что первая строка означает?

Добавлено через 4 минуты
эту строку еще подчеркивает как ошибку
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
21.04.2013, 12:13     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #11
Цитата Сообщение от Марина1312 Посмотреть сообщение
объясни пожалуйста что первая строка означает?
#include "stdafx.h"-файл предкомпеллированых заголовков, он служит для ускорения компиляции проекта. Его наявность зависит от среды в которой Вы пишите, а так же ее настроек
Tulosba
21.04.2013, 12:16
  #12

Не по теме:

Цитата Сообщение от metaluga145 Посмотреть сообщение
#include "stdafx.h"-файл предкомпеллированых заголовков, он служит для ускорения компиляции проекта. Его наявность зависит от среды в которой Вы пишите, а так же ее настроек
Бывает где-то акромя Visual Studio?

metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
21.04.2013, 12:18     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #13
Tulosba, не уверен. Но точно знаю,что такое можно включить в Embarcadero. С другими средами просто не работал.

И подскажите как сделать выделение "не по теме"?
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
21.04.2013, 12:21  [ТС]     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #14
Цитата Сообщение от metaluga145 Посмотреть сообщение
#include "stdafx.h"-файл предкомпеллированых заголовков, он служит для ускорения компиляции проекта. Его наявность зависит от среды в которой Вы пишите, а так же ее настроек
что-то она не так работает,цифры какие то-большие(

Добавлено через 1 минуту
Цитата Сообщение от metaluga145 Посмотреть сообщение
Tulosba, не уверен. Но точно знаю,что такое можно включить в Embarcadero. С другими средами просто не работал.

И подскажите как сделать выделение "не по теме"?
кстати да,у меня Visual Studio
Tulosba
21.04.2013, 12:25
  #15

Не по теме:

Цитата Сообщение от metaluga145 Посмотреть сообщение
И подскажите как сделать выделение "не по теме"?
тэг "OFF" на панели ввода (рядом с ютюбом кнопочка)

metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
21.04.2013, 12:30     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #16
Цитата Сообщение от Марина1312 Посмотреть сообщение
что-то она не так работает,цифры какие то-большие(
У меня все отлично работает. Я протестировал на разных примерах. Вроде бы все отлично.

Добавлено через 22 секунды

Не по теме:

Tulosba, спасибо

Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
21.04.2013, 12:32  [ТС]     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #17
Цитата Сообщение от metaluga145 Посмотреть сообщение
У меня все отлично работает. Я протестировал на разных примерах. Вроде бы все отлично.

Добавлено через 22 секунды

Не по теме:

Tulosba, спасибо

а вот у меня никак(
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
21.04.2013, 12:36     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #18
Марина1312, вот модифицированный вариант:
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
#include "stdafx.h"
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
    const int rows = 4;
    const int cols = 6;
    setlocale( LC_ALL,"Russian" );
    int a[rows][cols];
    for (int i=0;i<rows;i++)
    {
        cout<<"Введите элементы " << i+1 << "-ой строки:\n";
        for (int j=0;j<cols;j++)
        {
            cin >> a[i][j];
        }
    }
 
    int bound;
    cout<<"Введите граничное число: \n";
    cin>>bound;
 
    int sum[rows];
    for (int i=0; i<rows;++i)
    {
        sum[i]=0;
        for (int j=0;j<cols;j++)
        {
            if(bound<a[i][j])
            sum[i]++;    
        }
        cout << "Кол-во элементов в " << i+1 << "-ой строке, больших " << bound << " = " << sum[i] << endl;
    }
    system( "pause" );
    return 0;
}
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
21.04.2013, 12:38     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #19
Цитата Сообщение от Марина1312 Посмотреть сообщение
а вот у меня никак(
Тестовые данные в студию!

Добавлено через 1 минуту

Не по теме:

Tulosba, да, более пригодный вариант для тестов

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2013, 12:39     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана)
Еще ссылки по теме:

Выдает ошибку но я не могу понять почему C++
Выдает ошибку при компиляции. Не могу понять почему C++
Ткните, пожалуйста, носом в ошибку. я не могу понять где, что не так C++

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

Или воспользуйтесь поиском по форуму:
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
21.04.2013, 12:39     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #20
metaluga145, у Вас считается сумма элементов, больших чем заданное значение, а надо количество.
Yandex
Объявления
21.04.2013, 12:39     почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана)
Ответ Создать тему
Опции темы

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