Читаем Песни о Паскале (СИ) полностью

Согласно схеме, оператор BREAK передаст управление в точку, следующую за UNTIL. Применительно к нашей программе условие досрочного выхода из цикла будет таким.


      if S=’’ then break;


Слегка изменив предыдущую версию программы, я получил вариант, показанный ниже.


{ P_12_3 – часовой с досрочным выходом из цикла }

var S : string;

begin

      repeat

      Writeln(’Пароль?’); Readln(S);

      { если строка пуста, то выход из цикла }

      if S=’’ then break;

      if S = ’pascal’

      then Writeln(’Проходите!’)

      else Writeln(’Стойте!’)

      until S=’’;

      Writeln(’До встречи! Нажмите Enter’); Readln;

end.


Досрочный выход из цикла упрощает программу, но пользоваться им надо аккуратно, с умом. Не забывайте, что после BREAK программа переходит к оператору, следующему за UNTIL.


Итоги

• Оператор цикла REPEAT-UNTIL организует многократное повторение операторов, вставленных между этими ключевыми словами.

• Условие выхода из цикла следует за ключевым словом UNTIL, цикл повторяется до тех пор, пока условие НЕ соблюдается.

• Оператор BREAK выполняет досрочный выход из цикла с обходом условия в UNTIL.


А слабо?

А) Сколько операторов можно вставить между REPEAT и UNTIL?

Б) Будет ли проверяться условие в UNTIL при досрочном выходе из цикла?

В) Возьмите за основу программу «P_11_1» и переделайте ее в циклический вариант. Или слабо?

Г) Напишите программу для угадывания слова. Она должна запрашивать от пользователя строки, пока тот не введет слово, предусмотренное в программе.

Глава 13


Правда и кривда




Что приятней, получать подарки или дарить их? Сейчас узнаем: вот вам автомобиль – дарю! Будете в школу на нём гонять. Впрочем, мой подарок не бескорыстен, и взамен я жду вашей помощи.

«Автомобиль – не роскошь, а средство передвижения» – утверждал персонаж книги Ильфа и Петрова. Что бы сказал он сегодня, томясь в унылых пробках? Теперь и вы за рулем, значит, дорожные пробки – наша общая напасть. Так будем бороть её вместе! Ведь все для этого есть, – в каком веке то живем! Что ни автомобиль – то бортовой компьютер, а космос ломится от спутников! Создадим программу для бортового компьютера автомобиля. Компьютер будет принимать сигналы от спутников системы ГЛОНАСС (это ГЛОбальная НАвигационная Спутниковая Система) и сообщать о дорожных пробках. К деталям этого проекта обратимся позже, а начнем, как водится, издалека – из космоса.


Есть ли жизнь на Марсе?

Об этом все ещё спорят ученые, не находя ответа. «Спросите что попроще, – скажете, – например, мой возраст». Но если бы здесь отвечал компьютер, то вопрос о Марсе он счел бы простым, а вопрос о возрасте – сложным. Почему?

А потому, что о марсианской жизни можно ответить односложно: «да» или «нет». А сообщая возраст, надо указать какое-то число или дату рождения. Ещё сложнее растолковать компьютеру, как выглядит, к примеру, цветок или бабочка, тут не отделаться одним числом, а тем паче ответом «да» или «нет». Такие вопросы требуют сложного ответа, несущего много информации. Стоп! Я упомянул информацию? Вот о ней – об информации – потолкуем подробней.


Информация и её мерило

Компьютер обрабатывает информацию, – это все знают. Только почему, соорудив столько программ, мы все ещё не знаем, что такое информация? Её трактуют по-разному, одно из определений таково: «информация – это то, что устраняет неопределенность». В самом деле, задавшись неким вопросом, мы испытываем неопределенность, а получив ответ, избавляемся от неё, и на душе становится легче.

Получить ответ – это значит получить информацию. А сколько мы при этом её получаем, чем измерить это количество? Математики догадались, что меньше всего информации заключено в односложном ответе: «да» или «нет». Это количество взято за мерило и названо битом (по-английски «BIT»). Крупные единицы информации содержат много битов: байт – восемь битов, 1 Кбайт (читается «кибибайт») – 1024 байта и так далее, – об этом можно прочитать в школьных учебниках. Стало быть, ответ на вопрос «быть или не быть?» содержит всего один бит информации, – компьютер считает такие вопросы простыми. Ответы на сложные вопросы (например, как выглядит то, или это) могут содержать миллионы байтов. В этом легко убедиться по размеру файла с какой-нибудь фотографией или фильмом.

Но вернемся к биту. Природная склонность компьютера к «простым» вопросам и односложным ответам объясняется устройством его электронной памяти, состоящей из битовых ячеек – триггеров. Не вдаваясь в технические детали, скажу лишь, что такая ячейка может находиться в одном из двух устойчивых состояний, которые часто обозначают цифрами «0» и «1». С тем же успехом их можно обозначить иначе, например: «да» и «нет». Или так: «истина» и «ложь», «правда» и «кривда», «крестик» и «нолик». Короче говоря, название – дело вкуса, важно лишь то, что триггер хранит один бит информации. Эта особенность компьютеров отразилась во многих языках программирования, в том числе в Паскале.


Булевы переменные

Перейти на страницу:

Похожие книги

Букварь сценариста. Как написать интересное кино и сериал
Букварь сценариста. Как написать интересное кино и сериал

Александр Молчанов создал абсолютно честный и увлекательный «букварь» для сценаристов, делающих первые шаги в этой профессии. Но это не обычный скучный учебник, а увлекательная беседа с профессионалом, которая поможет вам написать свой первый, достойный сценарий! Книга поделена на уроки, из которых вы узнаете, с чего начать свою работу, как сделать героев живыми и интересными, а сюжет — захватывающим и волнующим. Первая часть книги посвящена написанию сценариев для больших экранов, вторая — созданию сценариев для телесериалов.Как развить и улучшить навыки сценариста? Где искать вдохновение? Почему одни идеи выстреливают, а от других клонит в сон? И как вообще правильно оформлять заявки и составлять договоры? Ответы на эти и многие другие вопросы вы найдете внутри! Помимо рассказов из своей практики и теоретической части, Александр Молчанов приводит множество примеров из отечественной и западной киноиндустрии и даже делится списком шедевров, которые обязательно нужно посмотреть каждому сценаристу, мечтающему добиться успеха.

Александр Владимирович Молчанов

Драматургия / Прочее / Культура и искусство