Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
 
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
#1

Найти сумму и число тех элементов массива, которые попадают на заданный отрезок - C++

07.04.2010, 15:25. Просмотров 878. Ответов 19
Метки нет (Все метки)

Помогите написать программу по теме: одномерные массивы.
Найти сумму и число тех элементов заданного массива X1,X2, … ,Xn, которые попадают на заданный отрезок.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2010, 15:25     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок
Посмотрите здесь:

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

Найти сумму и число тех элементов заданного массива X1,X2, … ,Xn, которые попадают на заданный отрезок. - C++
1. чНайти сумму и число тех элементов заданного массива X1,X2, … ,Xn, которые попадают на заданный отрезок.

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

Найти сумму тех элементов массива, которые являются простыми числами - C++
Дан массив натуральных чисел А(N), значения элементов которого лежат в диапазоне . Найти сумму тех элементов массива, которые являются...

Подсчитать сумму и количество элементов массива которые попадают под ограничения - C++
Есть одномерный массив B, в нем нужно подсчитать сумму и количество элементов которые попадают под ограничения-> номер элемента (X)<=Сумаа...

Определить количество и сумму тех элементов массива, которые делятся на 5 и на 7 - C++
Дан массив из 20 чисел. Вычислить и вывести кол-во и сумму тех элементов,которые делятся на 5 и на 7. Напишите алгоритм...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Demihalf
Унылый школьник
126 / 60 / 3
Регистрация: 06.11.2009
Сообщений: 354
07.04.2010, 15:47     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #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
#include <iostream>
#include <ctime>
 
int main() {
    setlocale(LC_ALL, "Russian");
    srand(time(0)); // Инициализируем генератор случайных чисел 
    const int n = 10; // Размер массива
    int a, b, arr[n], s = 0, k = 0;
    for (int i = 0; i < n; i++) {   // Заполняем массив случайными числами от 1 до 100
        arr[i] = rand() % 100 + 1;
        std::cout << arr[i] << ' '; // Выводим получившийся элемент массива
    };
    std::cout << std::endl;
    std::cin >> a >> b;
    if (a > b)
        a ^= b ^= a ^= b; // меняем местами переменные
    for (int i = a; i <= b; i++) {
        s += arr[i];
        k++;
    };
 
    std::cout << "Сумма = " << s << " Кол-во элементов = " << k << std::endl;
    std::system("pause");
    return 0;
}
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
07.04.2010, 16:24  [ТС]     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #3
А что за библиотека #include <ctime>?
Эта прог-а на С++? Так сложно написана...((
Demihalf
Унылый школьник
126 / 60 / 3
Регистрация: 06.11.2009
Сообщений: 354
07.04.2010, 16:52     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #4
Прекрасная, <ctime> нужна для функции time(), для инициализации генератора случайных чисел. А конкретнее, что вам сложно?
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
08.04.2010, 12:52  [ТС]     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #5
Сама прог-а написана сложно. Попроще никак нельзя?) Я всё-таки ОЧЕНЬ начинающий программист) Я вообще не разберусь в даннной прог-е. Некоторые операторы первый раз встречаю...
Patch
2276 / 491 / 11
Регистрация: 01.04.2009
Сообщений: 2,178
08.04.2010, 14:16     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ

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
#include <iostream>
using namespace std;
 
int main() {
    setlocale(LC_ALL, "Russian"); //включаем поддержку русского языка
    int a, b;
    int arr[]={1,4,5,6,3,8,9};//делаем массив чисел
    cout << "Введите номер элемент, с которого начинается отрезок: "<< endl;
    cin >> a ;
    if(a > sizeof(arr))
   {
        cout << "Введенный номер элемента, больше размера массива! "<< endl;
        cin.getch();
        return 0;
   }
    cout << "Введите номер элемент, на котором заканчивается отрезок: "<< endl;
    cin >> b;
    if(b > sizeof(arr))
   {
        cout << "Введенный номер элемента, больше размера массива! "<< endl;
        cin.getch();
        return 0;
   }
    if (a < b)
   {
        for (int i = a; i <= b; i++)
        {
             s += arr[i];
             k++;
        };
        cout << "Сумма = " << s << " Кол-во элементов = " << k << endl;
    }
    else
    {
          cout << "Номер элемента первого элемента отрезка больше номера последнего!" << endl;
    }
  
    cin.getch();
    return 0;
}
так понятнее?
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
08.04.2010, 16:08  [ТС]     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #7
А зачем этот фрагмент
C++
1
2
3
cout << "Введенный номер элемента, больше размера массива! "<< endl;
        cin.getch();
        return 0;
?
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
08.04.2010, 16:15     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #8
Прекрасная, это завершение программы в том случае ,если b больше размерности массива
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
08.04.2010, 17:02  [ТС]     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #9
А что значит sizeof ?
Demihalf
Унылый школьник
126 / 60 / 3
Регистрация: 06.11.2009
Сообщений: 354
08.04.2010, 17:41     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #10
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Прекрасная, в данном случае это размер массива в байтах, так что код не совсем корректен. Вернее тот код вообще не работает.

Patch, ваш код не компилится: не хватает объявлений переменных, у cin нет члена getch, только get и getline. Еще не инициализированы s и k. Размер массива измеряется голым sizeof...

Добавлено через 12 минут
Исправил код Patch:
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
#include <iostream>
using namespace std;
 
int main() {
    setlocale(LC_ALL, "Russian");   // Чтобы в консоли были русские буквы
    int a, b, arr[] = {1,4,5,6,3,8,9,9,41,2};
    int s = 0, k = 0;
 
    cout << "Введите номер элемента, с которого начинается отрезок: "<< endl;
    cin >> a;
    if(a > (sizeof(arr) / sizeof(int) - 1)) // sizeof возвращает размер переменной в байтах. 
    {
        cout << "Введенный номер элемента, больше размера массива! " << endl;
        system("pause"); // Ждем нажатия клавиши
        return 0;
    }
    cout << "Введите номер элемента, которым заканчивается отрезок: "<< endl;
    cin >> b;
    if(b > (sizeof(arr) / sizeof(int) - 1)) // sizeof возвращает размер переменной в байтах. 
    {
        cout << "Введенный номер элемента, больше размера массива! " << endl;
        system("pause"); // Ждем нажатия клавиши
        return 0;
    }
    if (a < b)
    {
        for (int i = a; i <= b; i++)
        {
             s += arr[i];
             k++;
        };
        cout << "Сумма = " << s << " Кол-во элементов = " << k << endl;
    }
    else
    {
        cout << "Номер элемента первого элемента отрезка больше номера последнего!" << endl;
    }
    system("pause"); // Ждем нажатия клавиши
    return 0;
}
Patch
2276 / 491 / 11
Регистрация: 01.04.2009
Сообщений: 2,178
08.04.2010, 17:57     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #11
Цитата Сообщение от Demihalf Посмотреть сообщение
Patch, ваш код не компилится

ясное дело.
это была попытка на скорую руку написать что-то понятное автору.
ну, не знает мадемуазель Прекрасная команду system("pause")...

на самом деле, использовать можно getch() или cin.get() а у меня - такой вот гибрид.
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
09.04.2010, 13:18  [ТС]     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #12
Так слово "sizeof" вообще обязательно? Можно без него?
Nameless One
Эксперт С++
5769 / 3418 / 255
Регистрация: 08.02.2010
Сообщений: 7,446
09.04.2010, 13:39     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #13
Прекрасная, а чем оно Вас так смущает?
В принципе, в примере Patch'а можно без него обойтись, так как размер массива известен заранее.

Добавлено через 11 минут
А вообще выражение sizeof(arr) даст не число элементов массива, а его размер в байтах. Чтобы узнать число элементов массива, нужно использовать такое выражение:
C++
1
2
sizeof arr / sizeof *arr;
//Размер массива в байтах / размер одного элемента этого массива = число элементов массива
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
09.04.2010, 13:45  [ТС]     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #14
Просто sizeof я вообще впервые встречаю, такого мы не проходили))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2010, 19:18     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок
Еще ссылки по теме:

Найти сумму тех элементов, которые кратны заданному К - C++
Помогите с задачей. В массив A занесены натуральные числа. Найти сумму тех элементов, которые кратны данному К.

Одномерные массивы (Найти сумму тех элементов, которые кратны данному К) - C++
Напишите пожалуйста программу, только без заумных операций. В массив А занесены натуральные числа. Найти сумму тех элементов, которые...

Дана целочисленная матрица A(N, M). Вычислите сумму и произведение тех её элементов, которые при делении на два дают нечётное число. - C++
Почему не работает???? вот задание ( может я не так понимаю задание... в коде посмотрите) 1)Дана целочисленная матрица A(N, M)....

Найти сумму элементов матрицы в тех столбцах, которые имеют отрицательные элементы - C++
Добрый день, помогите, пожалуйста, с функцией: int summa (int **ar,int n) {int k,sum,i,j; for (i=0;i&lt;=n; i++) { k=1; sum=0; for...


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

Или воспользуйтесь поиском по форуму:
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
10.04.2010, 19:18  [ТС]     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок #15
Так можно написать просто arr без sizeof?

Добавлено через 2 минуты
И ещё вопрос))
А зачем в массиве указывать числа (arr[] = {1,4,5,6,3,8,9,9,41,2})? Их же вводят с клавиатуры?
Объясните, пожалуйста))
Yandex
Объявления
10.04.2010, 19:18     Найти сумму и число тех элементов массива, которые попадают на заданный отрезок
Ответ Создать тему
Опции темы

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