0 / 0 / 0
Регистрация: 03.04.2014
Сообщений: 26
1

Найти произведение только тех чисел, которые больше заданного числа М

02.11.2015, 23:46. Показов 2041. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые больше заданного числа М. Если таких нет выдать сообщение об этом.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.11.2015, 23:46
Ответы с готовыми решениями:

Массивы. Найти произведение только тех чисел, которые больше заданного числа М.
Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые...

Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые больше заданного числа М
Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые...

Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые больше заданного числа М
Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые...

Найти произведение только тех чисел, которые больше заданного M
Дана матрица A(M,N) целых положительных чисел. найти произведение только тех из них которые больше...

2
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16842 / 6720 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
03.11.2015, 00:32 2
Лучший ответ Сообщение было отмечено Ev_Hyper как решение

Решение

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
#include <iostream>
#include <iterator>
#include <algorithm>
#include <vector>
#include <numeric>
 
int main(int argc, char *argv[])
{
    std::vector<unsigned> numbers;
    unsigned m;
 
    std::cout << std::endl << "Enter M.." << std::endl;
    std::cin >> m;
 
    std::cout << "Input numbers.." << std::endl;
 
    std::copy(std::istream_iterator<unsigned>(std::cin), std::istream_iterator<unsigned>(), std::back_inserter(numbers));
 
    if(!std::count_if(numbers.begin(), numbers.end(), [m](unsigned x) { return x > m; }))
        std::cout << "Not found" << std::endl;
    else
    {
        std::cout << std::accumulate(numbers.begin(), numbers.end(), 1, [m](long result, unsigned x) {
            return (x > m) ? result * x : result;
        });
    }
}
Ввод цифр последовательности ожидается, пока вы не введете какой-либо символ..
0
2434 / 1834 / 404
Регистрация: 15.12.2013
Сообщений: 8,201
03.11.2015, 01:19 3
Лучший ответ Сообщение было отмечено Ev_Hyper как решение

Решение

KOPOJI, а зачем std::vector<> и иногда лишний раз алгоритм гонять?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <iterator>
#include <numeric>
#include <string> 
int main()
{
    unsigned m,p;
    std::cout <<"Enter M.." << std::endl;
    std::cin >> m;
    std::cout <<((p=std::accumulate(std::istream_iterator<unsigned>(std::cin), 
                                 std::istream_iterator<unsigned>(), 1,
                                 [m](auto r, auto x) {return (x > m) ? r * x : r;})) ==1 && m!=0 ? "Not found " : std::to_string(p)) <<std::endl;
    return 0;                            
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2015, 01:19
Помогаю со студенческими работами здесь

Найти произведение только тех элементов последовательности, которые больше заданного числа М
Дана последовательность целых положительных чисел. Найти произведение только тех из них, которые...

Найти произведение чисел этой последовательности, которые больше заданного числа
Дана последовательность целых положительных чисел. Найти произведение тех чисел этой...

Найти произведение только тех чисел, которые больше заданного числа М
Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые...

Найти произведение только тех чисел, которые больше заданного числа
дана последовательность целых положительных чисел. найти произведение только тех чисел, которые...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru