Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/34: Рейтинг темы: голосов - 34, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 22.10.2019
Сообщений: 7

Массив: Найти сумму элементов массива, которые делятся на данное число X.

22.10.2019, 11:34. Показов 7078. Ответов 8

Студворк — интернет-сервис помощи студентам
Помогите решить задачу. Дан одномерный массив, который содержит не более 50 целых чисел. Найти сумму элементов, которые делятся на данное число X. Спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.10.2019, 11:34
Ответы с готовыми решениями:

Найти сумму элементов, которые делятся на данное число Х
1. Дан одномерный массив, который содержит не более 50 целых чисел. Найти сумму элементов, которые делятся на данное число Х. ...

Массив: Найти сумму элементов массива целых чисел, которые делятся на 5 и на 8 одновременно.
Найти сумму элементов массива целых чисел, которые делятся на 5 и на 8 одновременно. Размерность массива –30. Заполнение массива...

Найти количество и сумму тех элементов массива, которые делятся на 5 и не делятся на 7
Задание: Найти количество и сумму тех элементов массива, которые делятся на 5 и не делятся на 7. Вывести всё содержащиеся в данном...

8
Модератор
 Аватар для long399
2885 / 1840 / 933
Регистрация: 16.10.2013
Сообщений: 5,245
Записей в блоге: 15
22.10.2019, 12:13
LoveCandy8, С чем сложность возникла?
0
Злостный нарушитель
 Аватар для Verevkin
10651 / 5800 / 1281
Регистрация: 12.03.2015
Сообщений: 26,783
22.10.2019, 12:32
Лучший ответ Сообщение было отмечено LoveCandy8 как решение

Решение

Ахтунг! Не отлаживал! Писал на заборе!
C++
1
2
3
4
5
6
long sum(int* buffer, unsigned count, int x)
{
  long result = 0;
  while(count--) if (!(*buffer++ % x)) result += *(buffer - 1);
  return result;
}
1
0 / 0 / 0
Регистрация: 22.10.2019
Сообщений: 7
22.10.2019, 15:10  [ТС]
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 <cstdlib>
#include <ctime>
int main() 
{
    int z = 0;
    int x;
    int mas[50];
    std::cout << "Vvedite chislo X: ";
    std::cin >> x;
    srand(time(0));
    std::cout << "Massiv mas: " << std::endl;
    for (int i = 0; i < 10; ++i) {
        mas[i] = 1 + rand() % 20;
        std::cout << mas[i] << " ";
        if (mas[i] % x ==0) {
            ++z;
            x += mas[i];
        }
    }
    std::endl(std::cout);
    std::cout << "########################################" << std::endl;
    std::cout << "Count elements: " << z << std::endl;
    std::cout << "Summary elementov kotorie delatsa na X: " << x << std::endl;
 
    return 0;
}
Кароче считает какуюто дич. Бывает правильно посчитает но постоянно прибавляет мое число X, которое не нужно прибавлять. И при подсчете элементов тоже все плохо.
Не ругайте С++ ток начал осваивать.
0
 Аватар для TrollHammer
1216 / 709 / 336
Регистрация: 22.02.2018
Сообщений: 2,095
Записей в блоге: 2
22.10.2019, 15:16
Лучший ответ Сообщение было отмечено LoveCandy8 как решение

Решение

А так?
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
#include <iostream>
#include <cstdlib>
#include <ctime>
int main() 
{
    int z = 0;
    int x;
    int mas[50];
//добавим переменную для суммы
   int summ = 0;
    std::cout << "Vvedite chislo X: ";
    std::cin >> x;
    srand(time(0));
    std::cout << "Massiv mas: " << std::endl;
    for (int i = 0; i < 10; ++i) {
        mas[i] = 1 + rand() % 20;
        std::cout << mas[i] << " ";
        if (mas[i] % x ==0) {
             z++; //и тут поменяем префикс на постфикс
            summ += mas[i];
        }
    }
    std::endl(std::cout);
    std::cout << "########################################" << std::endl;
    std::cout << "Count elements: " << z << std::endl;
    std::cout << "Summary elementov kotorie delatsa na X: " << x << std::endl;
 
    return 0;
}
Добавлено через 1 минуту
Verevkin, Смешно! Новичку в С++ работу с указателями покажем
1
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
22.10.2019, 15:43
LoveCandy8, если не требуется по условию, количество считать не нужно. массив, если размер заранее не известен, применяйте динамический
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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    srand((int)time(0));
    int n, X, sum=0;
    cout << "n="; cin >> n;
 
    int*a = new int[n];
 
    for (int i = 0; i < n; i++)
      {
      a[i]=rand()%21 + 1;
      cout << a[i] << " ";
      }   
      
    cout << "\nX="; cin >> X;  
 
    for (int i = 0; i < n; i++)
      if (a[i]%X==0) sum+=a[i];
      
    cout << sum << "\n";
 
    delete[]a;
system("pause");
return 0;
}
1
Злостный нарушитель
 Аватар для Verevkin
10651 / 5800 / 1281
Регистрация: 12.03.2015
Сообщений: 26,783
22.10.2019, 16:58
Цитата Сообщение от TrollHammer Посмотреть сообщение
Verevkin, Смешно! Новичку в С++ работу с указателями покажем
А шо не так? Не работает?
0
0 / 0 / 0
Регистрация: 22.10.2019
Сообщений: 7
23.10.2019, 09:56  [ТС]
Всем спасибо все работает. И еще вопрос куда засунуть исключение которое реагирует на то что ввели 0 или др символы кроме цифр.
C++
1
2
3
4
5
6
7
8
9
10
try
        {
            
        }
        catch (const std::exception & ex)
        {
            std::cout << ex.what() << std::endl;
            std::cout << "oshibka" << std::endl;
 
        }
0
Злостный нарушитель
 Аватар для Verevkin
10651 / 5800 / 1281
Регистрация: 12.03.2015
Сообщений: 26,783
23.10.2019, 10:32
Цитата Сообщение от LoveCandy8 Посмотреть сообщение
И еще вопрос куда засунуть исключение
Правила форума запрещают честно ответить на этот вопрос.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.10.2019, 10:32
Помогаю со студенческими работами здесь

Дан одномерный массив целых чисел. Найти количество и сумму тех членов массива, которые делятся на 5 и не делятся на
Дан одномерный массив целых чисел. Найти количество и сумму тех членов массива, которые делятся на 5 и не делятся на

Найти сумму элементов массива, которые делятся на 3
Найти сумму элементов массива, которые делятся на заданное число

Подпрограммы: определить количество и сумму элементов массива, которые без остатка делятся на заданное число В
Задание Заданы одномерные массивы X(5) и Y(7).Для каждого из них определить количество и сумму элементов , которые без остатка делятся...

Найти сумму элементов массива, которые без остатка делятся на 2
Не могу разобраться ! препод задал ! Задание Дан массив из 10 целых чисел {-2,-3,5,0,7,-4,1,-1,-6,9} Найти сумму эл-тов массива ,...

Найти сумму квадратов среди элементов массива, которые делятся на 3
С помощью родительских и дочерних классов найти сумму квадратов среди элементов массива, которые дилятся на 3.


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru