Доброго времени суток! Такая проблема: надо сделать защиту от дурака. Вводить надо только число от 1 до 8. Если введёшь не то, надо вывести сообщение и прогу начать занаво. Пробовал через множества
С: SET of '1'..'8' а потом if K not in C then... А он ругается на not, что нужно выражение типа boolean. ПОдскажите, что делать.
repeat
Write('Введите число 1 .. 8'); ReadLn(K);
if not (K in [1 .. 8]) then Writeln('Error !!!');
until (K in [1 .. 8]);
Так то фурычит ( сообщение пока не выводит почему-то, но я исправлю это). Но вот если буквы вводишь то прога вылетает с ошибкой "неверный числовой формат". У меня k: integer. Может какой-то другой тип нужен?
А ты че хотел integer токо числа
Да это я уже сам вспомнил. Ну а какой тип писать надо?
А у меня такой вопрос:
Как сделать чтобы оператор writeln ('Введите число: ') выводился вновь, после вывода ответа. Чтобы не запускать сново программу ...
To: R@f
Ты что буквы вводить собрался? Тогда причём здесь интервал от 1 до 8? Там буквенный интервал нужен.
R@F попробуй string токо прочитай о нем как там считывать числа
To:AHHA
Попробуй repeat until пока не нажата клавиша Esc
To:Anna Если тебе надо просто быстро посмотреть ответ в конце
перед end. Напиши readln без ;
1) Ты спецом такую фотку поставила, чтоб отвечали?
2) Можно в самом начале проги поставить repeat ..... а потом
writeln('=> Для продолжения нажмите ENTER');
writeln('<= Для выхода нажмите ESC ');
q:=readkey;
until q=#27;
Че сидим кого ждем быстро отвечать тем кто ваще ничего незнает тобишь мне!!
HeX, будешь продолжать флеймить, уйдешь в БАН. Вопросы?
R@f, ты для себя реши, чего ты хочешь?? Что у тебя в названии темы написано?