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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.80
Fox007
0 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 148
#1

Линейный целочисленный массив (подсчитать сумму четных элементов,вывести элементы находящиеся в заданном диапазоне) - C++

14.03.2013, 17:57. Просмотров 1939. Ответов 30
Метки нет (Все метки)

Задача такова:Ввести линейный целочисленный массив до 50 элементов,подсчитать сумму четных элементов,вывести элементы находящиеся в заданном диапазоне. Проконтролировать введенную размерность и данные на корректность.Выполнить обработку введенных данных. Вывести результат обработки.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2013, 17:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Линейный целочисленный массив (подсчитать сумму четных элементов,вывести элементы находящиеся в заданном диапазоне) (C++):

Дано целочисленный одномерный массив А, состоящий из 14 элементов. Обчилслиты и напечатать сумму четных элементов, которые находятся на нечетных места - C++
Помогите пожалуйста с задачкой Даны целочисленный одномерный массив А, состоящий из 14 элементов. Вычислить и напечатать сумму четных...

Динамический массив: подсчитать сумму четных элементов - C++
Создать динамический массив указателей для сохранения двумерного массива А в динамической памяти. Составить программу для подсчета суммы...

Подсчитать количество элементов массива лежащих в заданном диапазоне - C++
собственно само задание : Написать программу обработки одномерного статического массива целых случай-ных чисел в диапазоне значений...

Для каждого столбца подсчитать сумму четных положительных элементов и записать данные в новый массив - C++
2)для каждого столбца подсчитать сумму четных положительных элементов и записать данные в новый массив Замечание:при решении обеих задач...

Вычислить сумму четных элементов массива и вывести отрицательные элементы на экран в обратном порядке - C++
Добрый вечер. Помогите пожалуйста с одной задачей Дан одномерный массив, состоящий из N вещественных элементов. 1. Ввести массив с...

Подсчитать элементы массива меньшие нуля и вывести сумму этих элементов - C++
1. Ввести с клавиатуры одномерный массив из 5 чисел , подсчитать элементы меньше нуля и вывести сумму этих элементов на экран монитора.

30
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
14.03.2013, 18:33 #2
проверок на ввод данных не делал
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
28
29
30
31
32
33
34
35
36
#include <algorithm>
#include <iterator>
#include <iostream>
#include <numeric>
#include <random>
#include <vector>
#include <ctime>
 
int main ()
{
    auto randomGenerator = std::bind(std::uniform_int_distribution <> (0, 50),
                                     std::mt19937 (time(nullptr)));
    int vectorSize;
    std::cout << "Enter the size: ";
    std::cin >> vectorSize;
 
    std::vector <int> vector (vectorSize);
    std::generate(vector.begin(), vector.end(), randomGenerator);
    std::copy(vector.begin(), vector.end(), std::ostream_iterator <int> (std::cout, " "));
    std::cout << std::endl << "Sum of even elements: ";
    std::cout << std::accumulate(vector.begin(), vector.end(), 0, [] (int currSum, int currNum) -> int {
        if (!(currNum % 2))
            currSum += currNum;
        return currSum;
    });
 
    int fLimit, sLimit;
    std::cout << std::endl << "Input [a, b]: ";
    std::cin >> fLimit >> sLimit;
    std::cout << "Elements in your limits: " << std::endl;
    std::copy_if(vector.begin(), vector.end(), std::ostream_iterator <int> (std::cout, " "), [fLimit, sLimit] (int currNum) -> bool {
        return (currNum >= fLimit && currNum <= sLimit);
    });
 
    return 0;
}
0
Fox007
0 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 148
14.03.2013, 22:00  [ТС] #3
Ev[G]eN, а можно с объяснением что каждая строчка обозначает?

Добавлено через 3 минуты
Ev[G]eN, на твоем коде ещё ошибку выдает,не компилируется

Добавлено через 2 часа 29 минут
Подправьте код пожалуйста,кто разбирается
0
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
14.03.2013, 22:18 #4
Цитата Сообщение от Fox007 Посмотреть сообщение
Подправьте код пожалуйста,кто разбирается
да..пожалуйста...не могу понять где ошибка...
0
Fox007
0 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 148
15.03.2013, 07:38  [ТС] #5
Ev[G]eN, не компилируется,ошибка где то,и если не сложно объясните каждую строчку

Добавлено через 9 часов 14 минут
кто нибудь может помочь?
0
UnsKneD
алкокодер
154 / 150 / 11
Регистрация: 27.12.2012
Сообщений: 548
15.03.2013, 07:52 #6
Fox007, #include "stdafx.h" в самое начало напишете, перед всеми #include

Добавлено через 4 минуты
И #include <functional> после всех.
Ev[G]eN, functional для std::bind забыли.
0
Fox007
0 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 148
15.03.2013, 20:20  [ТС] #7
UnsKneD, переправь код плиз весь,и если не сложно к каждой строчке напиши комментарии

Добавлено через 1 час 15 минут
Ребят периправте код пожалуйста

Добавлено через 1 час 8 минут
functional для std::bind забыли. Что это значит?
0
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
15.03.2013, 20:25 #8
C++
1
2
3
 if (!(currNum % 2))
 currSum += currNum;
 return currSum;
ретурн currSum не относится к условию?
0
Fox007
0 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 148
15.03.2013, 21:46  [ТС] #9
Я не много не понимаю,подкорректируйте код
0
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
15.03.2013, 21:47 #10
Цитата Сообщение от Kins Посмотреть сообщение
ретурн currSum не относится к условию?
нет
0
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
15.03.2013, 21:56 #11
Fox007, уже порядком надоедает..."поправьте, поправьте"...что поправить?
я выложил код, значит я его проверил, значит он не может не работать!
да, пропустил один заголовочный файл..что, нет рук его вставить? написали какой, написали куда.
вот скриншот выполнения. от темы отписался.
0
Миниатюры
Линейный целочисленный массив (подсчитать сумму четных элементов,вывести элементы находящиеся в заданном диапазоне)  
Fox007
0 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 148
16.03.2013, 18:30  [ТС] #12
Ev[G]eN, я пытаюсь внести те изменения которые вы мне сказали,но программа всё равно не проходит.Пожалуйста напишите тут код который у вас скомпилировался,а то я как не пытаюсь у меня ошибки выдает при компиляции.

Добавлено через 10 часов 35 минут
Кому не трудно,напишите работоспособный код.
0
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
16.03.2013, 18:59 #13
все работает

проверьте чтобы у вас были все заголовочные файлы:

C++
1
2
3
4
5
6
7
8
9
#include "stdafx.h"
#include <iostream>
#include <algorithm>
#include <iterator>
#include <numeric>
#include <random>
#include <vector>
#include <ctime>
#include <functional>
0
Fox007
0 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 148
16.03.2013, 22:49  [ТС] #14
Kins, заголовочные файлы все есть но не компилируется,скинь сюда код который у тебя с компилировался.
0
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
16.03.2013, 22:57 #15
Цитата Сообщение от Fox007 Посмотреть сообщение
скинь сюда код который у тебя с компилировался.
Дык, все работает, что скодил тов.Ev[G]eN, и работает без проблем. Я просто не понимаю почему у вас не работает.)

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include "stdafx.h"
#include <iostream>
#include <algorithm>
#include <iterator>
#include <numeric>
#include <random>
#include <vector>
#include <ctime>
#include <functional>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    auto randomGenerator = std::bind(std::uniform_int_distribution <> (0, 50),
                                     std::mt19937 (time(nullptr)));
    int vectorSize;
    std::cout << "Enter the size: ";
    std::cin >> vectorSize;
 
    std::vector <int> vector (vectorSize);
    std::generate(vector.begin(), vector.end(), randomGenerator);
    std::copy(vector.begin(), vector.end(), std::ostream_iterator <int> (std::cout, " "));
    std::cout << std::endl << "Sum of even elements: ";
    std::cout << std::accumulate(vector.begin(), vector.end(), 0, [] (int currSum, int currNum) -> int {
        if (!(currNum % 2))
            currSum += currNum;
        return currSum;
    });
 
    int fLimit, sLimit;
    std::cout << std::endl << "Input [a, b]: ";
    std::cin >> fLimit >> sLimit;
    std::cout << "Elements in your limits: " << std::endl;
    std::copy_if(vector.begin(), vector.end(), std::ostream_iterator <int> (std::cout, " "), [fLimit, sLimit] (int currNum) -> bool {
        return (currNum >= fLimit && currNum <= sLimit);
    });
 
    system ("pause");
    return 0;
}
0
16.03.2013, 22:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2013, 22:57
Привет! Вот еще темы с ответами:

Ввести двумерный массив 4*4, подсчитать кол-во (+) и (-) элементов и вывести статистику по строкам, сколько (+), сколько (-) и подсчитать общую сумму - C++
не получается никак сделать многомерный массив... помогите пожалуйста #include &lt;iostream&gt; #include &lt;ctime&gt; using namespace...

Создать массив, выводим сумму всех нечетных/четных элементов, найти минимальный и максимальный элементы - C++
Добрый вечер, не могу решить 2 задачи. Первая задача: Создаем массив на 10 элементов, потом заполняем этот массив случайными числа до...

Дан целочисленный одномерный массив А, состоящий из 14 элементов. вычислить и напечатать сумму парши элементов - C++
дано целочисленный одномерный массив А, состоящий из 14 элементов. вычислить и напечатать сумму парши элементов, на нечетных местах и их...

Найти сумму элементов S, стоящих на четных местах в заданном массиве a1, a2, ..., a10 - C++
Найти сумму элементов S, стоящих на четных местах в заданном массиве a1, a2, ..., a10.


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

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

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