Информатика, вопрос задал lolikys2281337 , 7 лет назад

помогите, пожалуйста. нужно написать программу в free паскале. желательно с минимальными объяснениями для меня (очень хочется понять, а не просто списать)​

Приложения:

Ziorar: var
x, y, U: real;

begin
writeln(' \ x 1 2 3');
writeln(' y \ ------------------------');
y := 0.5;
while y <= 2 do
begin
write(y:4:2, ' |');
x := 1;
while x <= 3 do
begin
if power(x, 1 / 3) < 2 then
U := ln(x * x + sqrt(y))
else U := max(x * y, y * y);
write(U:8:5);
x := x + 1;
end;
writeln;
y := y + 0.75;
end;
end.
Ziorar: Надеюсь, такая программа заработает (просто у меня такой версии Паскаль нет)
lolikys2281337: спасибо огромное
Ziorar: Если работает, могу в ответ выложить уже с комментариями
lolikys2281337: давай
Ziorar: Хорошо, сейчас их допишу только

Ответы на вопрос

Ответил Ziorar
1

var

x, y, U: real; // объявление переменных

begin

writeln('  \ x     1       2       3'); // шапка таблицы (значения икс)

writeln(' y \  ------------------------');

y := 0.5; // начальное значение игрек

while y <= 2 do // цикл по вертикали (по игрек, до значения 2)

begin

write(y:4:2, ' |'); // выводим игрек (в 4 символа и 2 знака после запятой)

x := 1; // начальное значение икс

while x <= 3 do // цикл по горизонтали (по икс, до значения 3)

begin

if power(x, 1 / 3) < 2 then // если меньше двух, то...

U := ln(x * x + sqrt(y))  // то эта формула,

else U := max(x * y, y * y); // а иначе- вот эта

write(U:8:5); // вывод функции U (8 символов, 5 знаков после запятой)

x := x + 1; // следующее значение икс

end; // конец цикла по горизонтали (по икс)

writeln; // переходим к новой строке

y := y + 0.75; // следующее значение игрек

end; // конец цикла по вертикали (по игрек)

end. // конец программы

Приложения:
Новые вопросы