При программировании на любом языке необходимо знать основные алгоритмы. Они являются как бы «азбукой» для программиста. Сегодня я хочу рассказать про основные алгоритмы в таком языке программирования, как Паскаль.
1. Первый алгоритм, про который я расскажу — это факториал натурального числа Pascal. Факториалом числа (!n) является произведение натуральных чисел от 1 до этого числа включительно. Например, 5!=1*2*3*4*5.
Наша задача — написать программу Pascal, которая находит факториал числа.
Сначала переменной f (сокр. Factorial) присваиваем значение, равное единице, т.к 0! = 1, 1!=1.
Далее идет цикл с параметром от 2 до заданного числа, в котором переменная f умножается на следующее значение после единицы с увеличением на 1 после каждого круга.
Программа нахождения факториала на языке Паскаль:
var
f: longint;
n, i: integer;
Begin
write('n = '); readln(n);
f := 1;
For i:=2 to n do
f := f * i;
writeln(n,'! = ', f);
End.
Скачать: factorial.pas
2. Второй алгоритм, который необходимо знать — нахождение НОК двух чисел. НОК — наименьшее общее кратное, то есть минимальное число, которое одновременно делится на оба числа.
В паскаль это реализуется достаточно просто:
var a,b,c:integer; //Описание переменных
begin //Начало программы
readln(a,b); //Считывание а и б
c:=a*b; //Перемножение
repeat //Цикл с постусловием
if a>b then a:=a-b else b:=b-a;
until a=b; //Цикл до тех пор, пока а не равно б
c:= c div a; //Делим c на a нацело и получаем нок
writeln('НОК=', c); //Выводим значение
end.//Конец программы
Скачать: nok.pas
3. Также нужно знать и про НОД двух чисел. НОД — наименьший общий делитель, т. е. Минимальное число, которое нацело делит два и более чисел.
Код нахождения НОД в паскаль:
var a,b,c: integer; //Описание переменных
begin //Начало программы
writeln('Введите a,b: '); //Диалог с пользователем
read(a,b); //Чистывание чисел
while b<>0 do //Вход в цикл while, пока b не равно 0
begin
c := a mod b; //Присваивание с остатка деления a/b
a := b;
b := c;
end;
writeln('НОД = ',a); //Вывод делителя
end.//Конец программы
Скачать: nod.pas
На сегодня все, во второй части расскажу про возведение числа в степень, а также про нахождение минимального и максимального в массиве.