Вопрос по информатике:
Выручайте очень срочно нужно узнать почему не считает:
Найти произведение всех целых чисел от 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 ;
}
- 02.11.2017 02:44
- Информатика
- remove_red_eye 15442
- thumb_up 10
Ответы и объяснения 2
Если вам надо включать в произведение:
#include
using namespace std;
void main()
{
int a;
cin >> a;
int res = 1;
if (a < 20)
{
for (int i = a; i <= 20; ++i)
res = i*res;
}
cout << res;
system("pause");
}
Если не надо то измените i<=20 на i<20
- 03.11.2017 01:43
- thumb_up 29
#include
using namespace std;
int main() {
int a;
cin>>a;
long res = 1;
for (int i=a; i<=20; ++i)
res *= i;
cout<
}
Значение 20 (выделено в программе) вызывает арифметическое переполнение при небольших а. Попробуйте задать a=19 или 18.
- 04.11.2017 05:13
- thumb_up 47
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.