Паскаль. Имена переменных. Порядок построения программы

Паскаль. Имена переменных. Порядок построения программы

Имена переменных

Мы привыкли переменные величины обозначать буквами (a, s, d …). Большинство языков программирования, в том числе и Паскаль, позволяет обозначать переменные не только буквами, но и целыми словами. Вот два равносильных фрагмента программы:

Фрагмент №1Фрагмент №2
a:=3;
b:=4-a;
WriteLn(a, b+50);
Summa:=3;
ROBBY:=4-Summa;
WriteLn(Summa, ROBBY+50);

В том и другом случае будут напечатаны числа 3 и 51. Очевидно, компьютеру все равно, как мы обозначаем переменные величины, в смысл имен он не вдумывается и не удивляется, что переменная Summa никакой суммой не является, а просто числом 3.

Будем называть обозначение переменной именем или идентификатором этой переменной.

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

Примеры правильной записи имён: a, x, velichina, zzz, polnaja_summa, tri_plus_dva, s25, k1, _k1, x_0, y0, a1b88qq, oshibka.

Примеры неправильной записи имён:

жБуква не латинского алфавита.
polnaja summaСодержится пробел между словами. Символ «Пробел» не является буквой, цифрой или знаком подчеркивания.
2asНачинается с цифры.
Domby&SonСодержится символ «&», не являющийся буквой, цифрой или знаком подчеркивания.
Порядок построения простейшей программы

Задача. Известны размеры спичечной коробки: высота – 12,41 см., длина - 8 см., ширина - 5 см. Вычислить площадь основания коробки и ее объем.

Порядок составления программы

  1. Программист должен знать решение задачи. Ведь программа - это инструкция по ее решению. Нельзя давать инструкцию, не зная, как решать. В нашем случае программист должен знать формулы для вычисления площади основания коробки и ее объема:

площадь = длина × ширина, объем = площадь × высота.

  1. Нужно придумать имена переменным. Имя переменной должно говорить о ее смысле. Если смыслом является длина коробки, то не ленитесь и не называйте ее а, потому что через полгода, разбираясь в своей полузабытой программе, вы будете долго тереть лоб и думать – «Что, чёрт возьми, я обозначил через а?». Называйте ее dlina (если вы не знаете английского) или, к примеру, length (если знаете). Так делают все профессиональные программисты (а они, как известно, терпеть не могут трудиться зря, значит, зачем-то им это нужно).

Остановимся на следующих именах:

dlina- длина
shirina- ширина
visota- высота
pl- площадь
V- объём
  1. Нужно определить, какого типа будут переменные. Поскольку длина и ширина - целые, то и площадь будет целой. Высота и, следовательно, объем - вещественные. Первые две строки программы будут такими:
Var dlina, shirina, pl: Integer; 
    visota, V: Real;
  1. Перед вычислениями нужно задать исходные данные решения задачи. Вот следующие две строки программы:
Begin
  dlina:=8; 
  shirina:=5; 
  visota:=12.41;
  1. Теперь нужно задать компьютеру действия, которые нужно проделать с исходными данными, чтобы получить результат.
pl:= dlina * shirina;
V: = pl * visota;
  1. После получения результата его нужно вывести на экран (напечатать). Действительно, все операторы присваивания компьютер выполняет «в уме». После их выполнения в ячейках памяти pl и V будут находиться числовые результаты решения задачи. Чтобы их узнать, человек в нашем случае может использовать оператор WriteLn, после чего программу можно заканчивать:
  WriteLn('Площадь: ', pl);
  Write('Объём: ', V:10:3);
End.

Обратите внимание, что поскольку переменная V имеет тип Real, для ее вывода мы использовали следующий формат V :10:3. Первое число (10) – сколько всего символов будет занимать изображение выводимого числа, второе число (3) – это сколько цифр останется после запятой.

  1. Запишем программу целиком:
Var dlina, shirina, pl: Integer;
    visota, V: Real;
Begin
  dlina:=8; 
  shirina:=5; 
  visota:=12.41;
  pl:= dlina * shirina;
  V:= pl * visota;
  WriteLn('Площадь: ', pl);
  Write('Объём: ', V:10:3);
End.

Программа выведет на экран:

Площадь: 40
Объём:    496.400

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

Эту задачу можно было бы решить и гораздо более короткой программой:

Begin WriteLn(8 * 5, '	' , 8 * 5 * 12.41 :10:3); End.

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

Задание 1

Написать программы для решения следующих задач:

  1. В углу прямоугольного двора размером 50x30 стоит прямоугольный дом размером 20x10. Подсчитать площадь дома, свободную площадь двора и длину забора. Примечание: в углу, где дом, забора нет.
  2. Радиус окружности равен 800. Вычислить длину окружности и площадь круга. Результаты печатать с 5 знаками после десятичной точки.
  3. Автомобиль 3 часа ехал со скоростью 80 км/час и 2 часа со скоростью 90 км/час. Вычислить среднюю скорость автомобиля (она равна суммарному пути, деленному на суммарное время).

Турбо-Паскаль 7.0 - Самоучитель
Лукин С.Н.