Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 18

Не выводит на экран индекс массива

07.06.2016, 19:55. Показов 941. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача ввести с клавиатуры 10 чисел, найти среднее арифметическое, вывести все оценки и их количество на экран, затем вывести наиболее часто встречающуюся оценку. После вывода оценок на экран и подсчета их количества я занесла их количество в массив. Потом, для выяснения часто встречающийся оценки я ищу максимальный элемент в массиве. На экран выводиться например 3-что означает что три раза встречается оценка 2, но мне необходимо что бы выводилась сама двойка тоже. В конце программы присвоила переменной индекс массива, данная переменная всегда равна 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
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
#include
#include
using namespace std;
int main ()
{
int i,j,i_1=0,i_2=0,i_3=0,i_4=0,i_5=0,
i_6=0,i_7=0,i_8=0,i_9=0,i_10=0,Massiv[10];
float summa=0;
cout<<"postavte ocenku chkolnoi stolovoi po 10-ti balnoi chkale. Gde 1-otvratitelno,10-otlichno\n";
for (i=0; i<10;i++)
cin>> Massiv [i];
cout <<"vse ocenki\n";
for (i=0; i<10;i++)
cout <<Massiv [i]<< " \n";
for (i=0; i<10;i++)
summa+=Massiv[i];
cout<<"srednee-"<<summa/10<<endl;
for (i=0; i<10;i++)
{
if(Massiv[i]==1)
i_1++;
if(Massiv[i]==2)
i_2++;
if(Massiv[i]==3)
i_3++;
if(Massiv[i]==4)
i_4++;
if(Massiv[i]==5)
i_5++;
if(Massiv[i]==6)
i_6++;
if(Massiv[i]==7)
i_7++;
if(Massiv[i]==8)
i_8++;
if(Massiv[i]==9)
i_9++;
if(Massiv[i]==10)
i_10++;
}
cout<<"chasto1-"<<i_1<<endl;
cout<<"chasto2-"<<i_2<<endl;
cout<<"chasto3-"<<i_3<<endl;
cout<<"chasto4-"<<i_4<<endl;
cout<<"chasto5-"<<i_5<<endl;
cout<<"chasto6-"<<i_6<<endl;
cout<<"chasto7-"<<i_7<<endl;
cout<<"chasto8-"<<i_8<<endl;
cout<<"chasto9-"<<i_9<<endl;
cout<<"chasto10-"<<i_10<<endl;
{
int Ocenki[10]={i_1,i_2,i_3,i_4,i_5,i_6,i_7,i_8,i_9,i_10};
int max=Ocenki[0],imax=0;
for (i=1;i<10;i++)
{if (Ocenki [i]>max)
max=Ocenki[i];
imax=i;
}
cout<<"chislo-"<<imax<<endl;
cout<<"chache-"<<max<<endl;
}
return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.06.2016, 19:55
Ответы с готовыми решениями:

Индекс массива выводит нули.....
Условие задачи: Дан целочисленный массив размера N. Вывести все содержащиеся в данном массиве нечетные числа в порядке возрастания их...

Индекс находился вне границ массива и Console.WriteLine () выводит 2 раза (надо 1)
Доброго времени суток! Запутался. Помогите исправить 2 ошибки! 1) Индекс находился вне границ массива 2) Console.WriteLine () выводит 2...

Выводит ошибку (Program5.pas(30) : Ошибка времени выполнения: Индекс выходит за границы массива)
Здравствуйте,при выполнении данной программы выводится ошибка Program5.pas(30) : Ошибка времени выполнения: Индекс выходит за границы...

9
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 18
07.06.2016, 20:10  [ТС]
Добавив операторные скобки, выводит цифру 1..
C++
1
2
3
4
5
if (Ocenki [i]>max)
{
max=Ocenki[i];
imax=i;
}
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
07.06.2016, 20: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
for (i=0; i<10;i++)
{
if(Massiv[i]==1)
i_1++;
if(Massiv[i]==2)
i_2++;
if(Massiv[i]==3)
i_3++;
if(Massiv[i]==4)
i_4++;
if(Massiv[i]==5)
i_5++;
if(Massiv[i]==6)
i_6++;
if(Massiv[i]==7)
i_7++;
if(Massiv[i]==8)
i_8++;
if(Massiv[i]==9)
i_9++;
if(Massiv[i]==10)
i_10++;
}
Это что?
0
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 18
07.06.2016, 20:18  [ТС]
Это я сравниваю каждый элемент массива с оценкой, если элемент равен оценке то я увеличиваю значение переменой на единицу. Что бы вывести на экран какая оценка сколько раз встречается
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
07.06.2016, 20:25
КсенияФокина,
C++
1
2
3
4
5
const int countSize = 21;
    int count[countSize] = {0};
 
    for (int i = 0; i < size; i++)
        count[arr[i]]++;
поиск наиболее часто встречающегося числа
0
 Аватар для Stitch Igorek
47 / 47 / 31
Регистрация: 02.04.2016
Сообщений: 312
07.06.2016, 20:31
51, 58, 61 - строки - скобки лишние
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
07.06.2016, 20:33
КсенияФокина,
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
#include <iostream>
#include <iomanip>
#include <cstdlib>
using namespace std;
 
const int size = 10;
int arr[size];
 
void poisk()
{
    const int countSize = 11;
    int count[countSize] = {0};
 
    for (int i = 0; i < size; i++)
        count[arr[i]]++;
 
    for (int i = 0; i < countSize; i++)
        cout << i << " - " << count[i] << " раз." << endl;
}
 
int main()
{
    double sum=0;
    setlocale(LC_ALL, "Russian");
    cout << "Массив: ";
    for (int i = 0; i < size; i++)
    {
        arr[i] = rand() % 9 + 1;
        cout << arr[i] << "  ";
    }
 
    for (int i = 0; i < size; i++) sum += arr[i];
 
    cout << endl;
    poisk();
    cout << endl;
    cout << "Вывод суммы: " << sum << endl;
    cout << "Вывод с/а: " << sum / 10 << endl;
    system("pause");
    return 0;
}
Так?
0
 Аватар для Stitch Igorek
47 / 47 / 31
Регистрация: 02.04.2016
Сообщений: 312
07.06.2016, 20:44
проглядел, 51 и 61 только лишние, 1 и 2е строки - чего инклудим то?, а так по коду - то
Цитата Сообщение от КсенияФокина Посмотреть сообщение
C++
1
2
3
{if (Ocenki [i]>max)
max=Ocenki[i];
imax=i;
судя по задумке должно выполняться вместе, а у тебя imax=i выполняется каждый цикл независимо от ifа, в скобочьки объедени вот так - будет норм
C++
1
2
3
4
5
if (Ocenki[i] > max)
{
    max = Ocenki[i];
    imax = i;
}
0
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 18
08.06.2016, 09:45  [ТС]
Всем огромное спасибо за помощь-много анализировала ваши ответы, и поняла что нужно было добавить операторные скобки, так как после if выполнялось только одно присваивание, а в выводе к переменной imax прибавила 1-ведь массив с нуля начинается) Теперь нужно как то в этой программе использовать указатели-просто я думала что указатели используются только при арифметических каких то операциях, а нет, сказано сделать эту программу с указателями. Помогите советом пожалуйста. Заранее спасибо.

Добавлено через 3 минуты
#include <iostream> Просто эта строчка почему то не вставилась)
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
08.06.2016, 16:33
КсенияФокина, Указатель: указывает на адрес в памяти, а так же её можно изменять (и не обязательно инициализировать при объявлении).
Объявляется так:
тип *имя_ссылки = &имя_переменной;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.06.2016, 16:33
Помогаю со студенческими работами здесь

Вывести на экран индекс минимального значения массива
где ошибка в написании кода. задача следующая нужно было ввести массив вещественного типа и вывести на экран номер минимальное значение...

Запрашивать размеры двумерного массива, значения его элементов и выводит на экран массива в виде матрицы
помогите решить!!!!!!!! Составьте программу, которая запрашивает размеры двумерного массива, значения его элементов и выводит на...

Вывести на экран минимальный элемент массива и его индекс
Program z6_2; uses crt; const n=6; var a:arrayof real; i:integer; begin clrscr; Writeln('введите элемент массива'); for...

Вывести на экран наибольший элемент массива и его индекс
Нужно вывести наибольший элемент и его порядковый номер для каждого числа. Пожалуйста не нужно предлагать свои решения. Мне нужно знать...

Как вывести на экран индекс максимального элемента массива?
Дан массив целых чисел, вывести на экран индекс максимального элемента массива. нужна вся программа, с описанием массива.


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru