Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи на Pascal/Object Pascal/Free Pascal (Delphi/Lazarus)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

BrdGuest



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
Program Factorial;
Var
    N: Longint;
    i: Integer;
Begin
    { Через For }
    Begin
        {
            Проверяем, чтоб введённое число было неотрицательным
            и не больше 13 (13! = 6227020800, что больше максимума Longint)
        }
        Repeat
            Write('Vvedite N (ot 0 do 12): ');
            ReadLn(N);
        Until (N >= 0) And (N <= 12);
 
        If N = 0 Then
            N := 1
        Else
            For i := N - 1 Downto 2 Do N := N * i;
 
        WriteLn('N! = ', N);
    End;
 
    { Через While }
    Begin
        Repeat
            Write('Vvedite N (ot 0 do 12): ');
            ReadLn(N);
        Until (N >= 0) And (N <= 12);
 
        If N = 0 Then
            N := 1
        Else
        Begin
            i := N - 1;
            While i >= 2 Do
            Begin
                N := N * i;
                i := i - 1;
            End;
        End;
 
        WriteLn('N! = ', N);
    End;
 
    { Через Repeat }
    Begin
        Repeat
            Write('Vvedite N (ot 0 do 12): ');
            ReadLn(N);
        Until (N >= 0) And (N <= 12);
 
        If N < 2 Then
            N := 1
        Else
        Begin
            i := N - 1;
            Repeat
                N := N * i;
                i := i - 1;
            Until i < 2;
        End;
 
        WriteLn('N! = ', N);
    End;
 
    ReadLn;
End.
 

Всего записей: 43 | Зарегистр. 07-12-2007 | Отправлено: 10:47 14-12-2007 | Исправлено: BrdGuest, 10:49 14-12-2007
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи на Pascal/Object Pascal/Free Pascal (Delphi/Lazarus)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru