Предмет: Информатика,
автор: jekazenin
Выручайте очень срочно нужно узнать почему не считает:
Найти произведение всех целых чисел от a до 20 (значение a вводится с клавиатуры: 1 <=a <= 20).
#include
using namespace std;
void main()
{
int a;
cin >> a;
int res = 1;
for (int i = a; i <= 20; ++i)
res *= i;
cout << a;
return ;
}
Ответы
Автор ответа:
0
#include <iostream>
using namespace std;
int main() {
int a;
cin>>a;
long res = 1;
for (int i=a; i<=20; ++i)
res *= i;
cout<<res<<"n";
return 0;
}
Значение 20 (выделено в программе) вызывает арифметическое переполнение при небольших а. Попробуйте задать a=19 или 18.
using namespace std;
int main() {
int a;
cin>>a;
long res = 1;
for (int i=a; i<=20; ++i)
res *= i;
cout<<res<<"n";
return 0;
}
Значение 20 (выделено в программе) вызывает арифметическое переполнение при небольших а. Попробуйте задать a=19 или 18.
Похожие вопросы
Предмет: Химия,
автор: ea272692
Предмет: Информатика,
автор: evachistova068
Предмет: Қазақ тiлi,
автор: shulbaeva88
Предмет: Обществознание,
автор: pugachdaniil