Главная » Файлы » 8 класс

Величины в программах
28.10.2013, 10:37

Величины в программах

Рассмотрим следующую задачу: Робот находится в клетке над горизонтальной стеной неизвестной длины. Надо переместить Робота на клетку вниз - «сквозь стену».

стартовая обстановка

Поскольку Робот сквозь стену проходить не умеет, стену нужно обойти. Сделать это можно так. Пока ниже Робота стена, будем двигать его вправо и по дороге считать число шагов. Как только стена кончиться, сместим Робота вниз и начнем двигать его обратно. Тут нам понадобиться запомненная ранее информация о числе шагов вправо. Роботу нужно сделать столько же шагов влево сколько он сделал в право.

Для запоминания информации в памяти используют величины. Термин «величина» заимствована из математики и физики.

Компьютер работает с информацией, хранящейся в его памяти. Отдельный информационный объект (число, символ, строка, таблица и пр.) называется величиной. Величины в программировании, как и в математике, делятся на переменные и константы. Значение константы остается неизменной в течении всей работы программы, значение переменной величины может изменяться.

У  каждой переменной есть имя, тип и текущее значение. Имена переменных называют идентификаторами (от глагола «идентифицировать», что значит «обозначать», «символизировать»).


Имя – это последовательность слов, разделенных пробелами. Первое слово имени не должно начинаться с цифры. Ни одно из слов не должно быть ключевым словом. Слово — это последовательность разрешенных (словарных) символов. Словарными символами являются:

  • буквы (кириллические и латинские, прописные и строчные)
  • цифры
  • два специальных знака: @ _

Примеры возможных имен: m, x2, площадь, погода на завтра, Ноябрь 7, Седьмое ноября, дом_57б.

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

Также  будьте внимательны при использовании имен, одинаково выглядящих, но записанных русскоми и латинскими буквами. Переменные "x" (икс) и "x" (хэ) - это разные переменные.

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

В КуМире числовые типы бывают двух видов: целочисленные и вещественные.

Для того чтобы компьютер мог работать с величиной, нужно указать тип и имя величины, например «цел n». Такое указание называется описанием величины.

Для того чтобы запомнить или изменить значение величины есть специальная команда — команда присваивания, которая записывается в виде:

имя величины := выражение

Значок «:=» читается «присвоить». 

Например: z := x + y

Компьютер сначала вычисляет выражение «x + y», затем результат присваивает переменной «z», стоящей слева от знака «:=».

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

использовать Робот
алг вниз сквозь стену
нач
. цел n
. n := 0
. нц пока снизу стена
. . вправо; n := n + 1
. кц
. вниз
. нц n раз
. . влево
. кц
кон


При выполнении этого алгоритма сначала величине «n» присваивается значение ноль (команда «n := 0»). Затем в цикле Робот выполняет команду «вправо» и увеличивает значение n на единицу (команда «n := n + 1»), т. е. к текущему значению «n» прибавляется 1, а затем полученное значение записывается обратно в «n». После окончания цикла в n будет общее число сделанных вправо шагов. Остаётся спуститься на клетку вниз, а затем на «n» шагов влево.

Блок-схема этого алгоритма выглядит так:

блок-схема


Задание 1. Где-то ниже Робота есть стена. Нужно чтобы Робот дошел до стены, закрасил клетку и вернулся обратно.

Задание 2. Левее Робота есть стена, необходимо чтобы Робот отошел от этой стены на расстояние в два раза большее, чем исходное.
Категория: 8 класс | Добавил: matematika
Просмотров: 473 | Загрузок: 0 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: