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

Найти и вывести информацию о победителе в каждой секции. Найти средний балл каждой секции. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Считывание массива char http://www.cyberforum.ru/cpp-beginners/thread1097602.html
Есть такой кусок кода, при выполнение не считывается массив name, а сразу просит ввести country. #define _CRT_SECURE_NO_WARNINGS #include <conio.h> #include <iostream> using namespace std; ...
C++ Перегрузка оператора = Здравствуйте! При попытке заменить объект пользовательского класса q4 на q6 в контейнере set появляется ошибка: error C2678: binary '=' : no operator found which takes a left-hand operand of type... http://www.cyberforum.ru/cpp-beginners/thread1097591.html
Удаление всех элементов вектора C++
Как удалить все элементы вектора. Например Создаём пустой вектор vector<int>numb; заполняем его пятью элементами while(cin>>numbr){numb.push_breack(numbr);g+=1;if (g == 5){breack;}} и как...
В одномерном числовом массиве посчитать среднее арифметическое отрицательных элементов C++
В одномерном числовом массиве посчитать среднее арифметическое отрицательных элементов. Заранее спасибо :)
C++ Необходимо вывести двоичное представление числа на экран. http://www.cyberforum.ru/cpp-beginners/thread1097580.html
Собственно само задание.. Код вроде вполне правильный, но все же не работает(( Не могу понять в чем проблема.. Прошу руку помощи)) С клавиатуры вводится целое число. Необходимо вывести его...
C++ Выводит какую то ересь В общем начал выполнять свою лабораторную, задание которой было таковым: "В заданном предложении указать слово, в котором доля гласных(A, E, I, O)(a, e, i, o) максимальна. Предложение может иметь... подробнее

Показать сообщение отдельно
stikkas
19 / 19 / 6
Регистрация: 26.01.2014
Сообщений: 56
16.02.2014, 10:19
во-первых для записи в массив символов правильней использовать
cin.getline(arr, size_of_array)

для подсчета очков в секции и кол-во участников можно использовать следующее:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
struct Section {
  int numbers;
  int score;
  float average() {
    return float(score) / numbers;
}
};
 
Section getScoresOfSection(competition arr[], int size, section tip) {
 Section sec = {0, 0};
 
for (int i = 0; i < size; ++i)
 {
   if (arr[i].Section == tip) {
      sec.numbers++;
      sec.score += arr[i].score;
   }
 }
return sec;
}
Для нахождения победителя в каждой секции можно использовать:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
competition getWinner(competition arr[], int size, section tip) {
   competition winner;
   bool found = false;
 for (int i = 0; i < size; ++i) {
    if (arr[i].Section == tip) {
        if (!found) {
          winner = arr[i];
          found = true;
        }
        else if (arr[i].score > winner.score)
          winner = arr[i];
   }
}
if (!found)
 throw "Winner not found";
return winner;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru