Выручайте очень срочно необходимо узнать почему не считает:Отыскать творение всех целых

Выручайте очень безотлагательно необходимо выяснить почему не считает:
Отыскать творенье всех целых чисел от a до 20 (значение a вводится с клавиатуры: 1 lt;=a lt;= 20).

include
using namespace std;
void main()

int a;
cin gt;gt; a;
int res = 1;
for (int i = a; i lt;= 20; ++i)
res *= i;
cout lt;lt; a;
return ;

Задать свой вопрос
2 ответа
include lt;iostreamgt;
using namespace std;
int main()
int a;
cingt;gt;a;
long res = 1;
for (int i=a; ilt;=20; ++i)
res *= i;
coutlt;lt;reslt;lt;"\n";
return 0;


Значение 20 (выделено в программе) вызывает арифметическое переполнение при маленьких а. Пробуйте задать a=19 или 18.
Если для вас надобно включать в творенье:
include lt;iostreamgt;
using namespace std;
void main()

int a;
cin gt;gt; a;
int res = 1;
if (a lt; 20) 

for (int i = a; i lt;= 20; ++i)
res = i*res;

cout lt;lt; res;
system("pause");


Если не надобно то измените ilt;=20 на ilt;20
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт