Вопрос по паскалю( Желательно ответить подробно на вопрос) Не могу понять почему не работают одновременно типы данных: String и Integer. Взять ситуацию: var a:string; var b:integer; begin writeln(‘fff’); read(a); read(b); writeln(a); end. То он смотрит сначала переменную a(стринг) и можно вводить слово для ответа(допустим), а потом в b — любую интовую. А если наоборот сделать: т.е местами порядок поменять: var a:string; var b:integer; begin writeln(‘fff’); read(b); read(a); writeln(a); end. Т.е меняем местами Рид а и б. То тогда он посмотрит интовую переменную и просто пропустить b(стринговую) и программа закрывается. Почему так работает? как это фиксить? чем их мирить?

Вопрос школьника по предмету Информатика

Вопрос по паскалю( Желательно ответить подробно на вопрос)

Не могу понять почему не работают одновременно типы данных: String и Integer.
Взять ситуацию:
var a:string;
var b:integer;
begin
writeln(‘fff’);
read(a);
read(b);
writeln(a);

end.

То он смотрит сначала переменную a(стринг) и можно вводить слово для ответа(допустим), а потом в b — любую интовую.

А если наоборот сделать: т.е местами порядок поменять:
var a:string;
var b:integer;
begin
writeln(‘fff’);
read(b);
read(a);
writeln(a);

end.
Т.е меняем местами Рид а и б.
То тогда он посмотрит интовую переменную и просто пропустить b(стринговую) и программа закрывается. Почему так работает? как это фиксить? чем их мирить?

Ответ учителя по предмету Информатика

Ответ:

привет. если используешь read, он на новую строку не переходит, и обе переменных надо писать через пробел. используй лучше readln и ни каких проблем не будет

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Похожие вопросы от пользователей