Uses crt; var item, rub, doll: real; job: integer; begin writeln('Введите курс ру по отношению к дол: '); read(item);//Вводим курс рубль-доллар writeln('Перевести из (рубля в доллар(2)) или (доллар в рубль(1))?'); read(job);//Вводим режим case job of 2: begin writeln('Введите кол-во рублей: '); read(rub);//Вводим рубль rub := rub / item; writeln('doll = ',rub); end; 1: begin writeln('Введите кол- во долларов: '); read(doll);//Вводим доллар doll := doll * item; writeln('rub = ',doll); end; end; end.
Во-первых, не whill, а while. Во-вторых, цикл с предусловием(while) выполняется только тогда, когда его условие возвращает ложь. Если условие возвращает правду, цикл завершается. Бывает так, что при попытке первой итерации цикла условие уже возвращает правду. В этом случае цикл не будет выполнен ни разу. Цикл с предусловием(repeat), наоборот, выполняется, пока условие возвращает правду и завершается ложью. Стоит заметить, что если цикл с предусловием проверяет своё условие перед итерацией, цикл с постусловием делает это после, а это значит, что последний выполнится хотя бы один раз.
var item, rub, doll: real;
job: integer;
begin
writeln('Введите курс ру по отношению к дол: ');
read(item);//Вводим курс рубль-доллар
writeln('Перевести из (рубля в доллар(2)) или (доллар в рубль(1))?');
read(job);//Вводим режим
case job of
2: begin
writeln('Введите кол-во рублей: ');
read(rub);//Вводим рубль
rub := rub / item;
writeln('doll = ',rub);
end;
1: begin
writeln('Введите кол- во долларов: ');
read(doll);//Вводим доллар
doll := doll * item;
writeln('rub = ',doll);
end;
end;
end.