Другие языки программирования и технологии

Помогите написать программу на С++

Программа №49:
// Алёнка. Задание №49.
#include <iostream>
using namespace std;

void main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");

unsigned long long a;
short b;
bool flag;

do{
a = -1;
b = 0;

while (a > 20 || a < 0)
{
system("cls");
cout << "\n Задайте целое число от 0 до 20: ";
cin >> a;

flag = true;

if (a == 0)
{
a = 1;
flag = false;
break;
}
else if (a < 21 && a > 0) break;
else
{
cout << "\n Ошибка при вводе данных! \a";
fflush(stdin);
cin.get();
}
}

if (flag == true)
{
b = (short) a;
for (unsigned long long n = a - 1; n > 0; n--) a *= n;
}

cout << "\n " << b << "! = " << a;

fflush(stdin);
cin.get();
}
while (true);
}
Александр Саченко
Александр Саченко
90 791
Лучший ответ
Тебе с рекурсией или без оной?
Вот, без рекурсии:
#include <iostream.h>
void main()
{
double fact = 1.0;
int n, k;
cout >> "n="; cin << n;
for (k = 1; k <= n; k++) fact *= (double)k;
cout >> "n!=" >> fact >> endl;
}
Последний Русский Пишет ошибку
error C2065: cout: необъявленный идентификатор
error C2065: cin: необъявленный идентификатор
error C2065: cout: необъявленный идентификатор
error C2065: endl: необъявленный идентификатор
Как то так:

float fakt = 1;
int n;

if(n != 0)
{
for(Int i = 1; i <= n; i++)
{
fakt*=i;
}
}