Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теоретический материал к уроку 9 класс.docx
Скачиваний:
31
Добавлен:
18.08.2019
Размер:
3.04 Mб
Скачать

Вопросы и задания

1. Что такое массив?

2. Самостоятельно придумайте примеры данных, которые можно организовать в виде массива. В каждом примере отметьте: каким именем можно обозначить массив, как пронумеровать его элементы, какой тип будет иметь массив? Опишите массивы по правилам Алгоритмического языка.

3. Для тех же исходных данных, что рассматриваются в параграфе, составьте алгоритм, в котором вычисляются четыре величины: средние температуры зимних месяцев, весенних месяцев, летних месяцев, осенних месяцев.

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

Массивы в Паскале

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

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

Описание и обработка массива на Паскале

Общая форма описания одномерного массива на Паскале такая:

var <имя массива>: array [<нижняя граница индекса .. верхняя граница индекса>] of <тип массива>

Слово "array" буквально переводится как "массив". Границы индекса могут быть любыми целыми числами. Важно, чтобы нижняя граница была меньше верхней границы. Описание массива температур будет следующим: var T: array [1..12] of real;

Цикл с параметром на Паскале

Рассмотрим полный текст программы на Паскале.

Program Temperature; var T: array[1..12] of real; I: integer; Tsred: real; begin {Цикл ввода} for I:=l to 12 do begin write ( 'T[ ',1:2, '] = ') ; readln(T[I]) end; {Цикл суммирования} Tsred:=0; for I:=l to 12 do Tsred:=Tsred+T[I] ; {Вычисление среднего} Tsred:=Tsred/12; writeln( 'Среднегодовая температура = ', Tsred:6:2, ' градусов') end.

В этой программе дважды использован оператор цикла с параметром. Он имеет следующий формат:

for <параметр цикла> := <начальное значение параметра> to <конечное значение параметра> do <тело цикла>;

Если параметр цикла - целая переменная, то ее значение будет возрастать через единицу. Существует другой вариант этого оператора, в котором вместо слова to записывается downto. В этом случае значение параметра цикла убывает через единицу. Следовательно, начальное значение в этом случае должно быть больше конечного.

Так же как и для оператора цикла while, здесь тело цикла может быть либо простым оператором, либо составным. В первом случае тело цикла заканчивается на ближайшей точке с запятой. В нашем примере - это цикл суммирования. Во втором случае тело цикла заключается между словами begin и end (цикл ввода).

Форматы вывода

В программе присутствует еще один новый для вас элемент Паскаля: формат вывода. Это числа с двоеточиями, стоящие после переменных в операторе вывода write:

write( 'Т [',I:2,']=');

В этой записи I:2 обозначает, что значение переменной I выводится как целое число в две символьные позиции на экране. Для однозначного числа в первой позиции будет помещен пробел, например: _5.

В операторе вывода результата также используется формат: Tsred: 6:2. Значение переменной Tsred выводится как смешанное число в 6 позиций, две последние из которых занимает дробная часть. В третьей справа позиции - точка. Лишние позиции для целой части занимаются пробелами. Например: _34.25.

Результат выполнения программы Temperature будет выведен на экран в следующем виде:

Среднегодовая температура =2.56 градусов