Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмы и величины исп Чертежн.doc
Скачиваний:
36
Добавлен:
01.03.2025
Размер:
531.46 Кб
Скачать

16.3. Компьютер выполняет подсчет

Еще усложним условие задачи. Пусть опасные клетки надо отметить не в тупике, а на участке свободного пространства между Роботом и стеной (рис. 56). Изменение ситуации не мешает выполнить разметку уже известным способом, но при возвращении в исходное положение возникает проблема: как узнать, в какой клетке остановиться?

Рис. 56

При непосредственном управлении Роботом мы можем считать шаги, которые он делает при движении к стене. Когда Робот подойдет к стене, мы будем знать пройденное им расстояние и сможем приказать ему сделать такое же число шагов в обратную сторону.

При программном управлении необходимо, чтобы считать шаги мог компьютер. Как это делается, показано в алгоритме:

а

А52

лг разведка в чистом поле

дано | где-то справа от Робота есть стена

надо | закрашены все клетки между Роботом и стеной,

| в которых уровень радиации выше, чем в исходном

| положении Робота

| Робот в исходном положении

нач вещ у | создать ячейку с именем у

цел n | создать ячейку n для подсчета количества шагов

у := радиация | запомнить значение радиации

n:= 0 | обнулить счетчик

нц пока справа свободно

вправо

n := n + 1 | увеличить на 1 счетчик количества шагов

если радиация > у

то закрасить

все

кц

нц n раз

влево

кц

кон

В этом алгоритме использованы две величины. Величина у используется для хранения «опасного» уровня радиации. Этот уровень запоминается в исходном положении Робота и в дальнейшем многократно используется. Величина п играет роль счетчика. В начальный момент счетчик «обнуляется» командой n:=0, а затем многократно увеличивается командой n:=n+1.

16.4. Величины и их характеристики

При решении многих задач надо уметь запоминать, изменять и использовать информацию в памяти компьютера (например, в рассмотренной задаче это информация об опасном уровне радиации и числе сделанных вправо шагов). Для этого в алгоритмическом языке используются величины.

Термин «величина» заимствован из математики и физики, поскольку в алгоритмах для решения математических или физических задач величины алгоритмического языка соответствуют математическим или физическим величинам.

Каждая величина имеет имя, тип, вид и значение.

Имя величины служит для обозначения величины в алгоритме. Именем величины в алгоритмическом языке может быть любое слово (кроме служебных слов самого языка) или даже несколько слов. В имя могут входить русские и латинские буквы и даже цифры (правда, начинаться с цифры имена не могут), а также пробелы и знаки подчеркивания. Вот несколько примеров допустимых имен: .s, R, слово 1, длинное имя.

Тип величины показывает, какие значения может принимать величина и какие операции можно с ней выполнять. Пока мы будем пользоваться двумя типами: вещественным (вещ) и целым (цел). Значением величины вещественного типа может быть любое число, а целого — только целое. Необходимость различать эти типы связана с тем, что они по-разному обрабатываются компьютером: все вычисления с целыми числами выполняются точно, а с вещественными — приближенно (хотя и с высокой точностью). Позже мы познакомимся с величинами некоторых других типов.

Вид величины показывает ее информационную роль в алгоритме. Аргументы содержат исходную информацию, необходимую для работы алгоритма, а промежуточные величины предназначены для хранения текущей информации, которую обрабатывает алгоритм. Позднее мы познакомимся с другими видами величин.

Во время выполнения алгоритма в каждый конкретный момент величина имеет какое-то значение (например, 22 или -107) либо не определена.

Имя, тип и вид величины можно однозначно определить по тексту алгоритма. Это статические характеристики величины. Значение определяется только во время выполнения. Это динамическая характеристика.