Найти максимальное число и подсчитать, сколько раз оно находится в массиве - C (СИ)
Формулировка задачи:
Need help
Не получается посчитать максимальное число сколько раз оно находиться в массиве.
Спасибо.
помогите нубу зарание спасибо.
Листинг программы
- Code:
- #include <stdio.h>
- #define n 5
- int main()
- {
- int i, num[n], max, qty = 1;
- for (i = 0; i < n; i++)
- {
- printf("Please enter num %i\n", i);
- scanf("%i",&num[i]);
- }
- max = num[0];
- for (i = 0; i < n; i++)
- {
- if (num[i] > max)
- {
- max = num[i];
- }
- if (num[i] == max) // Need to calculate how many times the maximum number is. // тут проблема
- {
- qty++;
- }
- }
- printf("The highes number %i was times %d \n", max, qty); // need to print the max number and qty of maximum number.
- }
Решение задачи: «Найти максимальное число и подсчитать, сколько раз оно находится в массиве»
textual
Листинг программы
- #include <stdio.h>
- #define n 5
- int main() {
- int i, num[ n ], max, qty = 0;
- for ( i = 0; i < n; ++i ) {
- printf( "Please enter num %i\n", i );
- scanf( "%i", &num[ i ] );
- }
- max = num[ 0 ];
- // первый цикл - к концу первого цикла мы точно определим максимальное значение
- // цикл начинаем с единицы - не нужно здесь с нуля
- for ( i = 1; i < n; ++i )
- if ( num[ i ] > max ) // если нашли новое максмальное
- max = num[ i ]; // запоминаем его значение
- // второй цикл - уже точно известно максимальное значение
- // потому можем высчитать сколько раз оно встречается в массиве
- for ( i = 0; i < n; ++i )
- // если максимальное число встретилось нам в очередной раз
- if ( num[ i ] == max )
- ++qty; // тогда увеличим счётчик
- printf( "The highes number %i was times %d \n", max, qty ); // need to print the max number and qty of maximum number.
- return 0;
- }
Объяснение кода листинга программы
- Подключение стандартной библиотеки для работы с консолью
- Определение размера массива n
- Объявление переменных:
- i - счётчик для циклов
- num[n] - массив для ввода чисел
- max - переменная для хранения максимального числа
- qty - переменная для хранения количества максимального числа
- Ввод чисел в массив с помощью цикла for и функции scanf
- Инициализация переменной max значением первого элемента массива
- Первый цикл for (от 1 до n-1) для поиска максимального числа
- Если текущий элемент массива больше max, то обновляем max
- Второй цикл for (от 0 до n-1) для подсчёта количества максимального числа
- Если текущий элемент массива равен max, то увеличиваем qty
- Вывод на экран максимального числа и количества его вхождений
- Возврат 0, означающий успешный завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д