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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Bahyt
0 / 0 / 0
Регистрация: 27.04.2016
Сообщений: 13
#1

Массив: Определить, сколько чисел в последовательности принимают максимальное значение? - C++

04.10.2016, 10:00. Просмотров 268. Ответов 8
Метки нет (Все метки)

1. Дано 20 действительных чисел. Определить сколько из них принимают максимальное значение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2016, 10:00
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Массив: Определить, сколько чисел в последовательности принимают максимальное значение? (C++):

Определить сколько чисел принимают максимальное значение - C++
Задача 1. Дано 20 действительных чисел. Определить сколько из них принимают максимальное значение.

Определить, сколько членов последовательности принимают значение, большее заданного числа - C++
Искал на форму, данная задача решалась довольно часто, но везде один и тот же косяк, она не правильно работает если начать воодить...

Задана последовательность чисел длиной n. Определить минимальное и максимальное значение этой последовательности ... - C++
Задана последовательность чисел длиной n. Определить минимальное и максимальное значение этой последовательности ... В паскале вроде...

Определить, сколько раз меняется знак в последовательности чисел, введенных с клавиатуры, применив массив - C++
Помогите пожалуйста! Записать программу, определяющую сколько раз меняется знак в последовательности чисел, введенных с клавиатуры,...

Массив: Определить, сколько раз меняется знак в данной последовательности чисел, запомнить номера позиций, в которой происходит смена знака. - C++
Всем привет, помогите мне решить пара задач по c++ Учительница проверяет изучали ли мы этот метод решения задачи по этому прошу сделать...

Найти минимальное и максимальное значение в последовательности простых чисел - C++
1) У меня не работает void main(). >> '::main' must return 'int' Пишешь int main() { return 0; } - работает без...

8
kiwokr
3 / 3 / 1
Регистрация: 01.07.2016
Сообщений: 59
Завершенные тесты: 1
04.10.2016, 10:33 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
это ж на сколько надо быть ленивым, что бы такие задачи тут спрашивать ?...
C++
1
2
3
4
5
6
7
int A[20]
int val;
int num=0;
val=A[0];
for (int i(0),i<20,i++)  if (val < A[i])  val=A[i];
for (int i(0),i<20,i++) if (val == A[i]) num++;
cout<<num;
1
castaway
Эксперт С++
4926 / 3033 / 372
Регистрация: 10.11.2010
Сообщений: 11,084
Записей в блоге: 10
Завершенные тесты: 1
04.10.2016, 10:53 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <vector>
#include <iostream>
#include <algorithm>
 
int main() {
    std::vector <int> v( 20 );
    std::generate( v.begin(), v.end(), [](){ return std::rand() % 9; } );
 
    std::cout << "Последовательность:\n";
    for ( auto i : v ) { std::cout << ' ' << i; } std::cout << "\n";
 
    int me = *std::max_element( v.begin(), v.end() );
    std::cout << "Максимальных элементов: " << std::count_if( v.begin(), v.end(), [&]( int i ) { return me == i; } ) << std::endl;
 
}
1
Croessmah
Ушел
13777 / 8027 / 926
Регистрация: 27.09.2012
Сообщений: 19,777
Записей в блоге: 3
Завершенные тесты: 1
04.10.2016, 11:05 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
kiwokr, а зачем два цикла?
Это я Вам дал тему для размышлений.

Добавлено через 4 минуты
Спер часть castaway:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <vector>
#include <iostream>
#include <algorithm>
 
int main() {
    std::vector <int> v( 20 );
    std::generate( v.begin(), v.end(), [](){ return std::rand() % 9; } );
 
    std::cout << "Последовательность:\n";
    for ( auto i : v ) { std::cout << ' ' << i; } std::cout << "\n";
 
    std::cout 
        << "Максимальных элементов: " 
        << std::accumulate( v.begin(), v.end(), 0, []( int max, int num ) { return max>num?max:num; } ) 
        << std::endl; 
}
2
kiwokr
3 / 3 / 1
Регистрация: 01.07.2016
Сообщений: 59
Завершенные тесты: 1
04.10.2016, 11:07 #5
Croessmah, всё просто) Я подзарабатываю на таких вот ленивых "студентиках", и если использовать что-то лучшее чем набор операторов С, сразу начинаются вопросы... Как-то помню даже вернули работу студенту из-за тернарного оператора, мол я такого не рассказывал, значит не ты делал задачу . Вот такая отличная методика обучения в одном из ВУЗов РБ
0
stzer
110 / 86 / 27
Регистрация: 26.10.2013
Сообщений: 270
Завершенные тесты: 2
04.10.2016, 11:13 #6
Croessmah, а что делает ваш код? Он же просто находит максимальный элемент?
1
stzer
110 / 86 / 27
Регистрация: 26.10.2013
Сообщений: 270
Завершенные тесты: 2
04.10.2016, 11:17 #7
Вот результат:
1
Миниатюры
Массив: Определить, сколько чисел в последовательности принимают максимальное значение?  
Croessmah
Ушел
13777 / 8027 / 926
Регистрация: 27.09.2012
Сообщений: 19,777
Записей в блоге: 3
Завершенные тесты: 1
04.10.2016, 11:27 #8
Цитата Сообщение от stzer Посмотреть сообщение
Он же просто находит максимальный элемент?
тьфу, пока писал, забыл задачу
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    int max = v[0];
    std::cout 
        << "Максимальных элементов: " 
        << std::accumulate
            ( 
                v.begin(), 
                v.end(), 
                0, 
                [&max]( int count, int num )
                {
                    if ( num>max ) {
                        max = num;
                        return 1;
                    }
                    return count + (num==max);
                } 
            ) 
        << std::endl;
1
Bahyt
0 / 0 / 0
Регистрация: 27.04.2016
Сообщений: 13
06.10.2016, 06:28  [ТС] #9
ошибка. и не могу исправить. я не настолько умный.
0
06.10.2016, 06:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.10.2016, 06:28
Привет! Вот еще темы с ответами:

В последовательности натуральных чисел определить максимальное число, оканчивающееся на 5 - C++
Здравствуйте! Совсем недавно начал изучать C++, 2 недели. И мне еще не все понятно в языке. т.к. скоро сдаю ОГЭ по информатике я...

Массив: определить, сколько раз повторяется максимальное число в последоновательности - C++
Нужно определить сколько раз повторяется максимальное число в последоновательности пример! Входные данные 7 1 4 2 5 2 5 3 ...

В последовательности целых положительных чисел определить максимальное четное число и его порядковый номер. - C++
Вот задача В последовательности целых положительных чисел определить максимальное четное число и его порядковый номер. #include...

Определить, сколько чисел в последовательности, первая цифра которых 2 - C++
Здравствуйте,помогите пожалуйста! Дано 10 целых чисел от 1 до 50. Определить, сколько среди них чисел, первая цифра которых 2. ...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru