1. Линейные программы
1. Составить программу нахождения среднего значения трех чисел.
Program Srednee;
Uses
Crt;
Var
First, Second, Third : integer;
Sum : real;
Begin
ClrScr;
Write (‘Введите первое число ‘);
ReadLn(First);
Write (‘Введите второе и третье числа через пробел ‘);
ReadLn(Second, Third);
Sum := First + Second + Third;
Sum := Sum/3;
Write (‘Среднее значение ‘, First, ‘, ‘,Second, ‘ и ‘, Third, ‘ равно ‘, Sum:5:2);
ReadLn;
End.
2. Составить программу для нахождения площади прямоугольника.
Program ploshad;
Uses
Crt;
Var
a, b: integer;
S: real;
Begin
ClrScr;
Write (‘Введите a‘);
ReadLn(a);
Write (‘Введите b‘);
ReadLn(b);
S:= a*b;
Write (‘Площадь прямоугольника равна ‘, S);
ReadLn;
End.
3. Составить программу для нахождения периметра прямоугольника.
Program perimetr;
Uses
Crt;
Var
a, b: integer;
P: real;
Begin
ClrScr;
Write (‘Введите a‘);
ReadLn(a);
Write (‘Введите b‘);
ReadLn(b);
P:= 2*(a+b);
Write (‘Периметр прямоугольника равен ‘, P);
ReadLn;
End.
4. Площадь треугольника по формуле Герона.
Program Ploshad;
Var
a, b, c, p, s : real;
Begin
Write(‘Введите стороны треугольника через пробел’);
Readln(a, b, c);
p:= (a+b+c)/2;
s:= sqrt (p*(p-a)*(p-b)*(p-c));
Write (‘s=’, s:3:3);
Readln;
End.
5. Площадь трапеции
Program Ploshad;
Var
a, b, h, s : real;
Begin
Write(‘Введите основания и высоту трапеции через пробел’);
Readln(a, b, h);
s:=(a+b)/2*h;
Write (‘s=’, s:3:3);
Readln;
End.
6. Длина окружности и площадь круга
Program Ploshad;
Const
Pi: real=3.14;
Var
r, l, s: real;
Begin
Write(‘Введите радиус окружности’);
Readln(r);
l:= 2*Pi*r;
s:= Pi*sqr(r);
Write (‘s=’, s:3:3, ‘l=’, l:3:3);
Readln;
End.
7. Ввести два числа а и р. Найти число х, равное р процентов от а.
Program chislo;
VAR
a, p, x: real;
BEGIN
readln(a,p);
х:=0.01*а*р;
writeln (х);
END.
8. Радиус Луны 1740 км. Вычислить площадь поверхности планеты ( S=4πr2 )
Program luna;
const pi=3.14;
VAR
s, r: real;
BEGIN
readln(r);
s:=4*pi*sgr(r);
writeln (s);
END.
9. Объем призмы
Program prizma;
VAR
a, b, h, s, v: real;
BEGIN
writeln (‘Введите a, b, h’);
readln(a, b, h);
s:=a*b;
v:=S*h;
writeln (v);
Readln;
END.
10. Объем пирамиды
Program piramida;
VAR
a, b, h, s, v: real;
BEGIN
writeln (‘Введите a, b, h’);
readln(a, b, h);
s:=a*b;
v:=1/3*S*h;
writeln (v);
Readln;
END.
11. Объем шара
Program shar;
const pi=3.14;
VAR
r, v: real;
BEGIN
writeln (‘Введите r’);
readln(r);
v:=4/3*pi*r*r*r;
writeln (v);
Readln;
END.
12. Объем цилиндра
Program cilindr;
const pi=3.14;
VAR
h, r, v: real;
BEGIN
writeln (‘Введите r, h’);
readln(r, h);
v:=pi*r*r*h;
writeln (v);
Readln;
END.
13. Объем конуса
Program konus;
const pi=3.14;
VAR
h, r, v: real;
BEGIN
writeln (‘Введите r, h’);
readln(r, h);
v:=1/3*pi*r*r*h;
writeln (v);
Readln;
END.
14. Найти значение функции

Program function;
VAR
y, x: real;
BEGIN
readln(x);
y:= sqrt(ABS(sin(x)*sin(x) + cos(x*x)));
writeln (y);
END.
15. Сумма вклада составляет а рублей, определить, сколько денег будет на счёте через t лет, если известно, что ежегодно начисляют р процентов от а.
Program vklad;
VAR
a, p, t, s: real;
BEGIN
readln(a,p, t);
s:= а+t*0.01*а*р;
writeln (s);
END.
16. Имеется садовый участок, имеющий форму прямоугольника со сторонами А метров и В метров. Составьте программу, которая определит сколько досок надо купить, чтобы поставить сплошной забор. Ширина одной доски 10 см.
Program zabor;
VAR
a, b, k: real;
BEGIN
readln(a, b);
k:= (a+b)*2/0.1;
writeln (k);
END.
17. В магазине продается костюмная ткань. Ее цена В руб. за квадратный метр. Составьте алгоритм и программу, которая подсчитает и выведет на экран стоимость куска этой ткани длиной Х метров и шириной 80 см.
Program kusok;
VAR
s, b, x: real;
BEGIN
readln(x, b);
s:= (0.8*x)/b;
writeln (s);
END.
2. Разветвляющиеся программы
1. Составьте программу, проверяющую, верно ли утверждение, что введенное вами целое число является четным.
Program chislo;
VAR
n: integer;
BEGIN
Write ('Введите целое число: ');
readln(n);
if n mod 2=0 then writeln('Введенное число является четным!')
else writeln('Введенное число является не четным!');
readln;
END.
2. Составьте программу, проверяющую, верно ли утверждение, что введенное вами целое число делится без остатка на 3.
Program chislo;
Uses
Crt;
VAR
n:integer;
BEGIN
ClrScr;
write('Введите целое число: ');
readln(n);
if n mod 3=0 then writeln('Введенное число делится на 3 без остатка!')
else writeln('Введенное число делится на 3 с остатком!');
readln;
END.
3. Вычислить значение функции y=
Program chislo;
Uses
Crt;
VAR
x, y:integer;
BEGIN
ClrScr;
write('Введите x ');
readln(x);
if x3 then y= sqr(x)+5
else
if x
writeln('y=’,y);
END.
4. Напишите программу-модель анализа пожарного датчика в помещении, которая выводит сообщение "Пожароопасная ситуация", если температура (в нашей модели она будет вводиться с клавиатуры) в комнате превысила 60°C.
program pogar;
VAR
t: integer;
BEGIN
write('Введите температуру: ');
readln(t);
if t60 then writeln('Пожароопасная ситуация')
else writeln('Температура не пожароопасная');
END.
5. Составьте программу, определяющую, лежит ли точка с указанными координатами X, Y на окружности радиуса R с центром в начале координат.
program tochka;
VAR
x,y: integer;
r: word;
BEGIN
write('Введите координату x: ');
readln(x);
write('Введите координату y: ');
readln(y);
write('Введите длину радиуса r: ');
readln(r);
if (sqr(x)+sqr(y))= sqr (r) then writeln ('Точка лежит на окружности!')
else writeln ('Точка не лежит на окружности!');
END.
6. Составьте программу, определяющую, пройдет ли график функции y=5x2-7x+2 через заданную точку с координатами (a,b).
program grafik;
VAR
a,b: integer;
BEGIN
write('Введите координату a: ');
readln(a);
write('Введите координату b: ');
readln(b);
if (5*sqr(a)+7* a+2)=b then
writeln('График функции проходит через данную точку!')
else writeln('График функции не проходит через данную точку!');
END.
7. Напишите программу, которая анализирует человека по возрасту и относит к одной из четырех групп: дошкольник, ученик, работник, пенсионер. Возраст вводится с клавиатуры.
program vozrast;
VAR
vozrast: word;
BEGIN
write('Введите возраст человека: ');
readln(vozrast);
write('Этот человек относится к группе ');
case vozrast of
0..6: writeln('дошкольник.');
7..17: writeln('ученик.');
18..49: writeln('работник.');
50..99: writeln('пенсионер.');
end;
END.
8. Верно ли, что данное натуральное число оканчивается на нечетную цифру.
program chislo;
VAR
a, n: integer;
BEGIN
write(‘vvedite n’);
read (n);
a:=n mod 10;
if a mod 2=1 then
writeln (‘verno’)
else
writeln (‘neverno’);
readln;
END.
9. Написать программу, проверяющую, принадлежит ли число, введенное с клавиатуры, интервалу (0;5).
program interval;
VAR
a: integer;
BEGIN
write('Введите число a: ');
readln(a);
if a0 and a
writeln('принадлежит')
else writeln('не принадлежит');
END.
10. Определить, является ли треугольник прямоугольным, если известны величины двух его углов.
Program treug;
VAR
a,b: integer;
BEGIN
write('Введите величины двух углов треугольника ');
readln(a, b);
if (a=90) or (b=90) or (180-(а+b))=90 then
writeln('Треугольник прямоугольный')
else writeln('Треугольник не является прямоугольным');
END.
11. По введенным величинам углов определить, является ли треугольник прямоугольным.
Program treug;
VAR
a,b, c: integer;
BEGIN
write('Введите величины углов треугольника ');
readln(a, b, c);
if (а =90) or (b=90) or (c=90) then
writeln('Треугольник прямоугольный')
else writeln('Треугольник не является прямоугольным');
END.
12. Вывести на экран номер четверти, которой принадлежит точка с координатами (х;у), при условии, что х
0.
program chetv;
VAR
x, y: integer;
BEGIN
write('Введите координаты x, y ');
readln(x, y);
if (x0) and (y0) then
writeln('1 четверть')
else begin
if (x0) then
writeln('2 четверть')
else begin
if (x
writeln('3 четверть')
else begin
if (x0) and (y
writeln('4 четверть')
end;
end;
end;
end;
END.
13. Составить программу, которая определяла бы вид треугольника (равносторонний, равнобедренный, разносторонний)
program treug;
VAR
a, b, c: integer;
BEGIN
write('Введите стороны треугольника a, b, c ');
readln(a, b, c);
if (a=b) and (b=c) and (a=c) then
writeln('равносторонний')
else begin
if (a=b) or (b=c) or (a=c) then
writeln('равнобедренный')
else begin
if (ab) and (bc) and (ac) then
writeln('разносторонний')
end;
end;
end;
END.
14. Определить, больны ли Вы гипотрофией (соответствие массы и роста). Для этого разделите массу своего тела на удвоенный рост (в метрах). Если результат меньше 18,5, то гипотрофия есть.
Program gipotrofiya;
VAR
a,b: real;
BEGIN
write('Введите массу и рост в метрах');
readln(a, b);
if (а/b) then
writeln('гипотрофия есть’)
else writeln('гипотрофии нет');
END.
15. Введите номер дня недели. Выведите сообщение: рабочий день или выходной.
Program den;
VAR
a: integer;
BEGIN
write('Введите номер дня недели');
readln(a);
if (а1) and (a
writeln('рабочий день’)
else writeln('выходной');
END.
16. Программа решения квадратного уравнения
program kvkoren;
var
А, В, С, D,X1, X2: real;
begin
writeln ('Введите коэффициенты А, В, С');
readln (А, В, С);
if А=0
then writeln ('Уравнение не квадратное')
else
begin
D := B*B - 4*A*C;
if D
then writeln ('Действительных корней нет')
else
if D=0
then writeln ('Корни равны: X1 = X2 = ', -B/2*A:6:3)
else
begin
writeln ('X1 = ', (-B+ sqrt(D))/2*А:6:3);
writeln ('X2 = ', (-B- sqrt(D))/2*A:6:3);
end;
end;
end;
end.
3. Циклические программы
Цикл с параметром
1. Вывести на экран числа от 20 до 10.
Program chislo;
VAR
i: integer;
BEGIN
for i:=20 downto 10 do writeln (i:2);
readln;
END.
2. Составить программу вычисления суммы кубов чисел от 25 до 125.
Program chislo;
VAR
s, i: integer;
BEGIN
s:=0;
for i:=25 to 125 do
begin
i:=i*i*i;
s:=s+i;
end;
write(‘s=’,s);
readln;
END.
3. Найти сумму положительных нечетных чисел, меньших 100.
Program summa;
VAR
s,i: integer;
BEGIN
for i:=1 to 100 do
begin
if i mod 2=1 then s:=s+i;
end;
writeln (‘s=’,s);
readln;
END.
4. Найти сумму положительных четных чисел, меньших 125.
Program summa;
VAR
s,i: integer;
BEGIN
for i:=1 to 125 do
begin
if i mod 2=0 then s:=s+i;
end;
writeln (‘s=’,s);
readln;
END.
5. Написать программу поиска четырехзначного числа, которое при делении на 133 дает в остатке 125, а при делении на 134 дает в остатке 111.
Program chislo;
Uses
Crt;
VAR
i: integer;
BEGIN
ClrScr;
for i:=1000 to 9999 do
begin
if (i mod 133=125) and (i mod 134=111) then writeln (i);
end;
readln;
END.
6. Даны натуральные числа m,n. Получить все кратные им числа, меньше m*n.
Program chislo;
Uses
Crt;
VAR
m,n, i: integer;
BEGIN
ClrScr;
Writeln(‘введите m,n’);
Read (m,n);
for i:=1 to m*n do
begin
if (i mod n=0) and (i mod m=0) then writeln (i);
end;
readln;
END.
7. Дано натуральное число n. Получить все его натуральные делители.
Program chislo;
Uses
Crt;
VAR
n, i: integer;
BEGIN
ClrScr;
Writeln(‘введите n’);
Read (n);
for i:=1 to n do
begin
if n mod i=0 then writeln (i);
end;
readln;
END.
8. Составить программу поиска двузначного числа, сумма цифр которого делится на 3.
Program chislo;
VAR
i, s, z1, z2: integer;
BEGIN
s:=0
for i:=10 to 99 do
begin
z1:= i/10;
z2:= i mod 10;
s:=z1+z2;
if s mod 3 =0 then print i;
end;
readln;
END.
9. Найти все трехзначные числа, которые состоят из разных цифр
Program chislo;
VAR
p1,p2,p3, i: integer;
BEGIN
for i:=100 to 999 do begin
p1:=i div 100;
p2:=( i mod 100) div 10;
p3:=i mod 10;
if (p1p2)and (p2p3)and(p1p3) then writeln (i)
end;
readln;
END.
10. Вычислить сумму n первых членов ряда S=1+1/4+1/9+...+1/n2
Program summa;
VAR
s,i, n: integer;
BEGIN
writeln (‘введите n’, n);
readln (n);
s=0;
for i:=1 to n do
s:=s+1/i^2;
writeln (‘s=’, s);
readln;
END.
11. Составьте программу вычисления суммы по формуле:
S=12+32+52+72+…+n2 (n вводится с клавиатуры)
Program summa;
VAR
s,i, n: integer;
BEGIN
writeln (‘введите n’, n);
readln (n);
s=0;
for i:=1 to n do begin
if i mod 2 = 1 then s:=s+i^2;
writeln (‘s=’, s);
readln;
END.
12. Напечатать таблицу соответствия между весом в фунтах и весом в килограммах для значений от 1 до 10 с шагом 1 фунт. 1 фунт = 400 г.
Program tabl;
VAR
i: integer; x: real;
BEGIN
For i:=1 to 10 do
begin
x:=i*0.4
writeln(i,’фунт=’,x:4:2,’кг’)
end;
readln;
END.
Цикл с предусловием
1. Найти сумму цифр числа n.
program summa;
VAR
s,n,m: integer;
BEGIN
write (‘vvedite n’);
read (n);
m:=n;
s:=0;
while m0 do begin
s:=s + m mod 10;
m:= m div 10;
end;
write (‘s=’,s);
readln;
END.
2. Найти первую цифру числа n.
program сifra;
VAR
a,n,m: integer;
BEGIN
write (‘vvedite n’);
read (n);
m:=n;
while m0 do begin
a:= m mod 10;
m:= m div 10;
end;
write (‘a=’,a);
readln;
END.
3. Дано натуральное число N. Определить, сколько цифр содержит это число.
program chislo;
VAR
k, n, m: integer;
BEGIN
write (‘vvedite n’);
read (n);
m:=n;
k:=0;
while m0 do begin
k:=k+1;
m:= m div 10;
end;
write (‘k=’,k);
readln;
END.
Цикл с постусловием
1. Найти сумму делителей натурального числа n.
program summa;
VAR
s,n,i: integer;
BEGIN
write (‘vvedite n’);
read (n);
s:=0;
i:=1;
repeat
if n mod i=0 then s:=s+i;
i:=i+1
until in;
writeln (‘s=’,s);
readln;
END.
2. Найти все общие делители натуральных чисел n, m.
program deliteli;
VAR
m,n,i: integer;
BEGIN
write (‘vvedite n,m’);
read (n,m);
i:=1;
repeat
if (n mod i=0) and (m mod i=0) then write(i:2);
i:=i+1
until (in)or(im);
readln;
END.
4. Одномерные массивы
Найти сумму всех элементов массива из 10 элементов.
Program M4;
Const
N=10; {Константа N будет содержать количество элементов массива}
Var
A : Array [1..N] Of Integer;
I,s : Integer;
Begin
S:=0
For I:=1 To N Do
Begin
A[I]:= Trunc(Random*101)-50;
S;=s+A[i]
End;
Write(‘s=',s);
End.
Найти сумму положительных элементов массива.
Program M4;
Const
N=10; {Константа N будет содержать количество элементов массива}
Var
A : Array [1..N] Of Integer;
I,s : Integer;
Begin
S:=0
For I:=1 To N Do
Begin
A[I]:= Trunc(Random*101)-50;
If A[i]0 then S:=s+A[i]
End;
Write(‘s=',s);
End.
Найти сумму всех четных элементов массива.
Program M;
Const
N=10; {Константа N будет содержать количество элементов массива}
Var
A : Array [1..N] Of Integer;
I,s : Integer;
Begin
S:=0;
Begin
For I:=1 To N Do
A[I]:= Trunc(Random*101)-50;
If A[i] mod 2=0 then S:=s+A[i];
End;
Write(‘s=',s);
End.
Вычисление среднего арифметического массива.
Program M;
Const
N=10; {Константа N будет содержать количество элементов массива}
Var
A : Array [1..N] Of Integer;
sa,I,s : Integer;
Begin
S:=0;
For I:=1 To N Do
Begin
A[I]:= Trunc(Random*101)-50;
S:=s+A[i]
End;
sa:=s/N;
Write(‘sa=',s);
End.
Определить количество отрицательных элементов массива.
Program M;
Const
N=10; {Константа N будет содержать количество элементов массива}
Var
A : Array [1..N] Of Integer;
I,k : Integer;
Begin
k:=0;
Begin
For I:=1 To N Do
A[I]:= Trunc(Random*101)-50;
If A[i]
End;
Write(‘k=',k);
End.
Дан массив A, состоящий из 10 целых чисел.
Вывести все элементы, значение которых превосходит среднего арифметического элементов массива.
Program 1;
const n = 10;
var A: array[1..n] of Integer;
i, S: Integer;
begin
S := 0;
For i:=1 to n Do
Begin
A[i]:= Trunc(Random*101)-50;
S:=S+A[i];
end;
WriteLn;
for i := 1 to n do
if A[i] S div n then WriteLn (A[i]);
end;
end.
Дан массив A, состоящий из 10 целых чисел.
Найти среднее арифметическое четных элементов массива.
Program M;
Const
N=10; {Константа N будет содержать количество элементов массива}
Var
A : Array [1..N] Of Integer;
sa, i, s, k : Integer;
Begin
s:=0;
k:=0;
For i:=1 To N Do
Begin
A[i]:= Trunc(Random*101)-50;
If A[i] mod 2 = 0 then s:=s+A[i];
k:=k+1;
End;
sa:=s/k;
Write(‘sa=',sa);
End.
5. Символьные и строчные переменные
Из слов «вода» и «падение» составить новое слово «водопад».
Program Slova;
Var a, b, c : string;
Begin
a:= ‘вода’;
b:= ‘падение’;
c:= Copy(a,1,3) + Copy(a,2,1) + Copy(b,1,3)
writeln(c)
End.
В заданной строке подсчитать количество букв ‘я’ (строка на русском языке вводится с клавиатуры).
Program kolichestvo;
Var
s : string;
i, k : integer;
Begin
writeln (‘введите строку на русском языке’);
readln(s);
k:=0;
for i:=1 to Length(s) do
if copy(s,i,1)= ‘я’ then k:=k+1;
writeln(‘количество букв «я» - ’,k);
End.
Из заданной строки (s) получить новую(t), заменив все пробелы на точки. Распечатать полученную строку.
Program zamena;
Var
s, t: string;
i : integer;
Begin
writeln (‘введите строку на русском языке’);
readln(s);
t:= ‘’;
for i:=1 to Length(s) do
if copy(s,i,1)= ‘_’ then t:=t+ ‘.’ else t:=t+ copy(s,i,1);
writeln(‘новая строка ’);
writeln(t);
End.
Даны две символьные строки. Определить в какой из них больше символов и на сколько.
Program stroka1;
Var
str1,str2: string;
Begin
Write (‘Введите str1, str2 ‘);
ReadLn(str1, str2);
If Length (str1) Length (str2) then
Write (‘В первой строке больше символов ‘)
Else
Write (‘Во второй строке больше символов ‘);
ReadLn;
End.
Ввести слово и напечатать его по вертикали.
Program stroka2;
Var
str: string;
I:byte
Begin
Write (‘Введите str ‘);
ReadLn(str);
For I:=1 to length (str) do
Write (copy(str,I,1));
ReadLn;
End.
Ввести слово и переставить буквы слова в обратном порядке.
Program stroka3;
Var
str: string;
I:byte
Begin
Write (‘Введите str ‘);
ReadLn(str);
For I:= length (str) downto 1 do
Write (copy(str,I,1));
ReadLn;
End.
6. Процедуры и функции
Написать программу, выводящую все простые числа от M до N.
Program prost;
var n,m,i:integer;
procedure prost(s:integer); {процедура определяет, является ли число простым}
var del, k:integer;
begin
del:=0; {количество делителей}
for k:=1 to s do
if (s mod k)=0 then inc(del); {подсчет количества делителей}
{любое простое число делится только на два числа - на 1 и на самого себя}
if del=2 then writeln(k);
end;
begin
write('m=');
readln(m);
write('n=');
readln(n);
for i:=m to n do
prost(i);
end.
Написать программу определения площади четырехугольника ABCD.

Program P2;
Var AB, BC, CD, DA, AC, S1,S2:real;
Procedure PS (a,b,c:real; var S:real);
Var p:real;
Begin p:=(a+b+c)/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c))
End;
Begin writeln(‘input AB,BC,CD,DA,AC’);
Readln(AB,BC,CD,DA,AC);
PS(AB,BC,AC,S1); {вызов процедуры}
PS(AC,CD,DA,S2); {вызов процедуры}
Writeln(‘Площадь ABCD=’,S1+S2)
End.
Написать программу решения квадратного уравнения с использованием процедуры.
Program kv;
var a, b, c, d, x1, x2: real;
procedure kv(a, b, c: real);
var d, x1, x2: real;
begin
d:=b*b – 4*a*c;
if d=0 then x1=x2:=-b/(2*a)
if d0 then begin
x1:=(-b+sgrt(d))/(2*a);
x2:=(-b-sgrt(d))/(2*a);
end;
if dкорней нет’);
end;
begin
write('Введите коэффициенты квадратного уравнения');
readln(a, b, c);
kv(a, b, c);
write (‘x1=’, x1, ‘x2=’, x2);
end.
Найти 1!+2!+…+n!
program factorial;
var s,n,j: integer;
function fact (a: integer): integer;
var i,d: integer;
begin
d:=1;
for i:=1 to a do
d:=d*i;
fact:=d;
end;
begin
s:=0;
readln(n);
for j:=1 to n do
s:=s+fact(j);
writeln(s);
end.
Найти а1+а2+…+аn. ax=exlna
program stepen;
var i, s, a, n : real;
function stp (a, x : real) : real;
var y : real;
begin
y := exp (x * ln ( a)) ;
stp:= y;
end;
begin
write (‘введите a, n’);
read (a, n)
s:=0
for i:=1 to n
s:=s+stp(a,i);
end.
Найти минимальное среди 4-х чисел, используя функцию нахождения минимального среди двух чисел.
Program min;
Var a,b,c,d,m1,m2, m3: integer;
Function Min (x,y: integer): integer;
begin
if x
else min:=y;
end;
begin
Writeln('введите 4 числа');
readln(a,b,c,d);
m1:=min(a,b);
m2:=min(c,d);
m3:= min(m1,m2);
Writeln('минимум=',m3);
Readln;
End.
Написать программу для вычисления значения функции f(0.8,a)+f(a,b)-f(2a-1,ab), где a, b действительные числа и

Program f;
var a,b,z: real;
function f(x,y:real):real;
begin
f:= (sqr(x)-sqr(y))/(sqr(x)-2*x*y +3*sqr(y) +4);
end;
begin
writeln (' введите a,b');
readln(a,b);
z:=f(0.8,a)+f(a,b)-f(2*a-1,a*b);
writeln(z:4:2);
readln;
end.
Вычислить значение
c использованием функции.
Program func_1;
Var n,x:real;
function fc(a:real):real;
var y:real;
begin
y:=sqrt(a)+a;
fc:=y;
end;
begin
write('введите n:');
readln(n);
x:=fc(n);
writeln('x=',x:5:3);
readln;
end.
Найти минимальное среди 4-х чисел, используя функцию нахождения минимального среди двух чисел.
Program func4;
Var a,b,c,d,m1,m2, m3: integer;
Function Min (x,y: integer): integer;
begin
if x
min:=x
else
min:=y;
end;
begin
Writeln('введите 4 числа');
readln (a,b,c,d);
m1:=min(a,b);
m2:=min(c,d);
m3:= min(m1,m2);
Writeln('минимум=',min);
Readln;
End.
Четырехугольник задан своими сторонами a,b,c,d и диагональю r. Вычислить площадь четырехугольника с использованием функции нахождения площади треугольника.
program func3;
var a,b,c,d,r,S1,S2,S:real;
Function f(x,y,z:real):real;
var p:real;
begin
p:=(x+y+z)/2;
F:=Sqrt(p*(p-x)*(p-y)*(p-z));
end;
begin
Writeln('введите 4 стороны и диагональ четырехугольника');
readln (a,b,c,d,r);
S1:=f(a,b,r);
S2:=f(r,c,d);
s:=S1+S2;
writeln (S:4:2);
readln;
end.
Вычислить выражение tg2x+2tgx, используя вспомогательную функцию тангенса.
Program func5;
Var x,y:real;
Function tg(a:real):real;
tg:=sin(a)/cos(a);
Begin
Writeln('введите x');
readln(x);
y:=sqr(tg(x))+2*tg(x);
Writeln('y=',y:4:3);
Readln;
End.
49