
Выдаёт ошибку Program1.pas(11) : Форматное выражение может использоваться только внутри write,
writeln и str program vr3; var a,b,n,h,x,y:real; begin a:=-2; b:=2; n:=41; h:=(b-a)/n; x:=a; while x<=b do begin y:= sqr(exp(x*x*x*x))*sqr(x*x)/sqr(exp(x*x))-1; x:=x+h; writeln(x:5:2);(y:7:2); end; end.

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

writeln(x:5:2);(y:7:2); => writeln(x:5:2,' ',y:7:2);
Функция writeln выводит только то, что заходится внутри первых скобок после нее. Вторая скобка (после точки с запятой) уже не относилась к нему и, как следствие, не выводилась. А компилятор тебе пишет о том, что твоя ошибка заключается в том, что ты указываешь формат вывода переменной, но не выводишь ее.



Проблема в вашем коде связана с неправильным использованием форматного выражения. Вместо того, чтобы разделить два форматных выражения внутри команды writeln, вы случайно использовали точку с запятой, разделяя их на две отдельные строки кода.
Вот исправленный код:
pascalprogram vr3; var a, b, n, h, x, y: real; begin a := -2; b := 2; n := 41; h := (b - a) / n; x := a; while x <= b do begin y := sqr(exp(x * x * x * x)) * sqr(x * x) / sqr(exp(x * x)) - 1; writeln(x:5:2, y:7:2); x := x + h; end; end.
В этой версии кода форматное выражение x:5:2
и y:7:2
правильно указаны внутри команды writeln
, а ошибка с точкой с запятой между ними исправлена. Теперь ваш код должен успешно скомпилироваться и выполниться без ошибок.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili