Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Bahyt
0 / 0 / 0
Регистрация: 27.04.2016
Сообщений: 13
1

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

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

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

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

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

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

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

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

8
kiwokr
3 / 3 / 1
Регистрация: 01.07.2016
Сообщений: 59
Завершенные тесты: 1
04.10.2016, 10:33 2
Лучший ответ Сообщение было отмечено Croessmah как решение

Решение

это ж на сколько надо быть ленивым, что бы такие задачи тут спрашивать ?...
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
Эксперт С++
4934 / 3039 / 455
Регистрация: 10.11.2010
Сообщений: 11,119
Записей в блоге: 10
Завершенные тесты: 1
04.10.2016, 10:53 3
Лучший ответ Сообщение было отмечено Croessmah как решение

Решение

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
++Ͻ
14776 / 8452 / 1605
Регистрация: 27.09.2012
Сообщений: 20,800
Записей в блоге: 2
Завершенные тесты: 1
04.10.2016, 11:05 4
Лучший ответ Сообщение было отмечено castaway как решение

Решение

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
111 / 87 / 54
Регистрация: 26.10.2013
Сообщений: 273
Завершенные тесты: 2
04.10.2016, 11:13 6
Croessmah, а что делает ваш код? Он же просто находит максимальный элемент?
1
stzer
111 / 87 / 54
Регистрация: 26.10.2013
Сообщений: 273
Завершенные тесты: 2
04.10.2016, 11:17 7
Вот результат:
1
Миниатюры
Массив: Определить, сколько чисел в последовательности принимают максимальное значение?  
Croessmah
++Ͻ
14776 / 8452 / 1605
Регистрация: 27.09.2012
Сообщений: 20,800
Записей в блоге: 2
Завершенные тесты: 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

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

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

Массив: определить, сколько раз повторяется максимальное число в последоновательности
Нужно определить сколько раз повторяется максимальное число в...


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

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

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