Программа составлена правильно, но можно сделать компактнее
Program Chislo;
Uses Crt;
Var x,y,z,p: integer;
Begin
Clrscr;
WriteLn ('Введите первое число');
ReadLn (x);
WriteLn ('Введите второе число');
ReadLn (y);
WriteLn ('Введите третее число');
ReadLn (z);
if x>y then p:=x else p:=y;
if x>z then p:=x else p:=z;
if y>z then p:=y else p:=z;
WriteLn ('Наибольшее число:',p);
End.
Я вырезал
If y>x then p:=y else p:=x;
If z>x then p:=z else p:=x;
If z>y then p:=z else p:=y;
потому что это бесмысленный движения, а так задача работает.
Вопросы, неточности в ЛС
var s,vk:real;
m:integer;
begin
s:=100000;
vk:=0;
m:=0;
while vk<=30 do
begin
vk:=vk+0.04*s;
s:=1.04*s;
m:=m+1;
end;
write(m);
end.
Это решение для ваших параметров.
Uses Crt;
var s,vk,pc:real;
m:integer;
begin
clrscr;
Writeln('Введите сумму вклада:');
Read(s);
Writeln('Введите месячный процент(%):');
read(pc);
pc:=pc/100;
vk:=0;
m:=0;
while vk<=30 do
begin
vk:=vk+pc*s;
s:=(1+pc)*s;
m:=m+1;
end;
write('Вклад превысит 30 руб через ',m,' месяцев');
end.
Это решение для задаваемых параметров
Вопросы, недочеты в ЛС
ответ: В зависимости от того, что выберет пользователь, вычислить площадь либо прямоугольника, либо треугольника, либо круга. Если выбраны прямоугольник или треугольник, то надо запросить длины сторон, если круг, то его радиус.
Площадь треугольника вычисляется по формуле Герона:
Объяснение: где p - это полупериметр, a, b, c - длины сторон. Полупериметр равен половине периметра, то есть половине суммы сторон.
Площадь прямоугольника равна произведению его сторон. Площадь круга вычисляется по формуле S = πr2.