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

Не могу реализовать программу из ЕГЭ, ошибка на вводе. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Помогите закончить код, пожалуйста! http://www.cyberforum.ru/cpp-beginners/thread541409.html
почти закончил программу! ну не знаю, что дальше делать! помогите пожалуйста! Расчет зарплаты. структура должна иметь такие поля: *фамилия и инициалы. *год приёма на роботу. *зарплата. *функция, которая возвращает значение надбавки к зарплате относительно стажа: от 5 до 10 лет - 5%, от 10 до 15 лет - 10%, больше 15 лет - 20%. вывод на дисплей и в файл "out.txt" фамилий и зарплат...
C++ Задача по массивам Задана целочисленная квадратная матрица порядка 4. Из этой матрицы выбрать столбец, который обладает наибольшей суммой модулей элементов. Если таких столбцов несколько, то взять первый из них. Далее в данном столбце найти наименьшее из значений его элементов. язык СИ http://www.cyberforum.ru/cpp-beginners/thread541388.html
C++ Дано предложение. Поменять местами его первое и последнее слово.
Дано предложение. Поменять местами его первое и последнее слово.
C++ Приближение функций сплайнами
Разработка программы приближения функций с возможностью работы с файлами (запись и считывания функций) и результатов решения. Очень нужна помощь, надеюсь на вас гении программирования :)
C++ Подскажите, на что ругается линковщик? http://www.cyberforum.ru/cpp-beginners/thread541267.html
//test.h #pragma once #include <vector> using namespace std; class Single { public: static vector<Single*> singles;
C++ Вывод данных и перегрузка операторов. Добрый вечер, объясните пожалуйста что я не так делаю. #include <iostream> using namespace std; class A{ public: int a; A& operator++(){ ++a; return *this; подробнее

Показать сообщение отдельно
GoodDay
0 / 0 / 0
Регистрация: 07.04.2012
Сообщений: 24
07.04.2012, 03:51     Не могу реализовать программу из ЕГЭ, ошибка на вводе.
Во общем есть задача:
После единых выпускных экзаменов по информатике в район пришла информация о том,какой ученик,какой школы,сколько набрал баллов.
Районный методист решила выяснить номер школы,ученики которой набрали наибольший средний балл,с точностью до целых.

Программа должна вывести на экран номер такой школы и её средний балл.
Если наибольший средний балл набрало больше одной школы,вывести количество таких школ.

Напишите эффективную,в том числе и по используемой памяти, программу(укажите используемую версию языка программирования),которая должна вывести на экран требуемую информацию.
Также известно,что в районе школ с некоторыми номерами не существует.

На вход программе сначала подается число учеников,сдававших экзамен.В каждой из следующих N строк находится информация об учениках в формате:
<Фамилия><Имя><Номер школы><Количество баллов>
<Фамилия>-строка,состоящая не более чем из 30 символов без пробелов,
<Имя>-строка,состоящая не более чем из 20 символов.
<Номер школы>-число в диапазоне от 1 до 99
<Количество баллов>-число в диапазоне от 1 до 100.
Эти данные записаны через пробел,то есть в каждой строке ровно 3 пробела.

Моя программа:
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
#include <iostream>
#include <string>
using namespace std;
 
 
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int students[100];
    int balls[101];
    string good;
    int n,nomer,ball,max;
        int nmax
    cout << "Введите количество учеников: ";
    cin >> n;
    for(int i = 0; i < n; i++)
    {
        getline(cin, good, ' '); // Считываем фамилию
        getline(cin, good, ' '); // Считываем имя
        cin >> nomer; // Номер школы
        cin >> ball; // Количество баллов
        students[nomer]++;
        balls[nomer] = balls[nomer] + ball;
    }
    for (int i = 1; i < 100; i++)
    {
        if (students[i] > 0)
        {
            balls[i] = balls[i] / students[i]; 
        }
        
    }
        nmax = 1;
    max = 1;
    for (int i = 1; i < 101; i++)
    {
        if (balls[i] > balls[max])
        {
            max = i;
                        nmax = 1;
        }
        else if (balls[i] == balls[max])
        {
            n++;
        }
    }
    if (n == 1)
    cout << max << " " << balls[max];
    else
    cout << n;
    return 0;
}
Как я понимаю ошибка еще на вводе, но не могу понять где именно и как ее исправить. Буду очень благодарен за помощь
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru