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

Почему произведение положительных целых чисел дает отрицательный результат

18.11.2021, 14:36. Показов 1311. Ответов 2

Author24 — интернет-сервис помощи студентам
Здравствуйте,не могли бы вы подсказать почему вывод функции product выдаёт значение с минусом?Хотя числа положительные в диапазоне от 1 до 30.


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
//Лаб.раб.№4 задание 1
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Rus");
    const int N = 30;
    int sum = 0, product = 1, Array[N] = {};
    srand(time(NULL));
    for (int i = 0; i < N; i++) {
        Array[i] = rand() % (30 - 1) + 1;
        cout << "Array[" << i << "] = " << Array[i] << "\t";
    }
    cout << endl;
    for (int i = 0; i < N; i++) {
        sum += Array[i];
        product *= Array[i];
    }
    cout << "Сумма всех элементов массива = " << sum << endl;
    cout << "Произведение всех элементов массива = " << product << endl;
    system("pause");
    return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.11.2021, 14:36
Ответы с готовыми решениями:

Отрицательный результат при умножении положительных чисел
#include &lt;iostream&gt; #include &lt;vector&gt; int main(int argc, const char * argv) { ...

Почему деление значения из массива целых чисел друг на друга не дает дробное значение
Создается 2 массива из целых чисел 3 массив должен быть создан на основе значений из предыдущих 2...

Вычислить произведение целых положительных чисел
Вычислить произведение целых положительных чисел принадлежащих промежутку а в и подсчитать...

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

2
Модератор
Эксперт С++
13491 / 10747 / 6405
Регистрация: 18.12.2011
Сообщений: 28,680
18.11.2021, 14:40 2
Лучший ответ Сообщение было отмечено Alexan228 как решение

Решение

Переполнение разрядной сетки.
Поменяйте
Цитата Сообщение от Alexan228 Посмотреть сообщение
int sum = 0, product = 1, Array[N] = {};
на
C++
1
double sum = 0, product = 1., Array[N] = {};
1
1 / 1 / 0
Регистрация: 31.10.2020
Сообщений: 74
18.11.2021, 14:53  [ТС] 3
zss,Всё,понял,буду внимательнее.Спасибо большое!
0
18.11.2021, 14:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.11.2021, 14:53
Помогаю со студенческими работами здесь

Произведение целых положительных нечетных чисел
Доброго времени суток, помогите исправить неверную программу. Задание: 4) Написать программу,...

Произведение первых n целых положительных чисел.
Написать программу, которая вычисляет произведение первых n целых положительных чисел. Количество...

Вычислить произведение двух целых положительных чисел
вычислить произведение двух целых положительных чисел(используя суммирование)

Рекурсия: произведение двух целых положительных чисел
Нужно определить рекурсивную функцию, возвращающую произведение двух целых положительных чисел...

Найти произведение целых положительных чисел больших 30
Найти произведение целых положительных чисел больших 30, меньших 45, кратных 3 и заканчивающихся на...

Произведение первых n положительных четных целых чисел
Помогите написать программу (С циклом FOR), которая вычисляет произведение первых n положительных...

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


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

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

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