Задача:
Известны размеры спичечной коробки: высота - 12.41 см., ширина - 8 см., толщина - 5 см. Вычислить площадь основания коробки и ее объем .
Порядок составления программы:
1. Программист сам должен знать решение задачи. Ведь программа - это инструкция по ее решению. Нельзя давать инструкцию, не зная, как решать.
В нашем случае программист должен знать формулы для вычисления площади основания коробки и ее объема : площадь = ширина х толщина , объем = площадь х высота .
2. Нужно придумать имена переменным. Имя переменной должно говорить о ее смысле. Если смыслом является ширина коробки, то не ленитесь и не называйте ее а, потому что через полгода, разбираясь в своей полузабытой программе, вы будете долго тереть лоб и думать – Что, черт возьми, я обозначил через а? Называйте ее shirina (если вы не знаете английского) или, к примеру, width (если знаете). Так делают все профессиональные программисты (а они, как известно, терпеть не могут трудиться зря, значит, зачем-то это им нужно).
Удовлетворимся такими именами:
shirina - ширина
tol - толщина
visota - высота
pl - площадь
V - объем
3. Нужно определить, какого типа будут переменные. Поскольку ширина и толщина - целые, то и площадь будет целой. Высота и, следовательно, объем - вещественные. Первые две строки программы будут такими:
VAR shirina,tol,pl : Integer;
visota,V : Real;
4. Перед вычислениями нужно задать исходные данные решения задачи. Вот следующие две строки программы:
BEGIN
shirina:=8; tol:=5; visota:=12.41;
5. Теперь нужно задать компьютеру действия, которые нужно проделать с исходными данными, чтобы получить результат.
pl := shirina * tol;
V := pl * visota;
6. После получения результата его нужно напечатать. Действительно, все операторы присваивания компьютер выполняет "в уме". После их выполнения в ячейках памяти pl и V будут находиться числовые результаты решения задачи. Чтобы их узнать, человек в нашем случае может использовать оператор WriteLn, после чего программу можно заканчивать:
WriteLn (pl,' ', V :10:3)
END.
Обратите внимание, что поскольку переменная V имеет тип Real, для ее вывода мы использовали формат (см.4.10).
Вот как будет выглядеть наша программа целиком:
VAR shirina,tol,pl :Integer;
visota,V :Real;
BEGIN
shirina:=8; tol:=5; visota:=12.41;
pl := shirina * tol;
V := pl * visota;
WriteLn (pl,' ', V :10:3)
END.
Программа напечатает два числа: 40 и 496.400 .
Эту задачу можно было бы решить и гораздо более короткой программой:
BEGIN WriteLn (8 * 5, ' ' , 8 * 5 * 12.41 :10:3) END.
А еще быстрее эту задачу решить в уме. Однако, соблюдение приведенного мной порядка составления программы облегчит вам в дальнейшем программирование реальных задач для компьютера.
Задания 12-14:
Написать программы для решения следующих задач:
12) В углу прямоугольного двора размером 50х30 стоит прямоугольный дом размером 20х10. Подсчитать площадь дома, свободную площадь двора и длину забора. Примечание: в углу, где дом, забора нет.
13) Радиус окружности равен 800. Вычислить длину окружности и площадь круга. Результаты печатать с 5 знаками после десятичной точки.
14) Автомобиль 3 часа ехал со скоростью 80 км/час и 2 часа со скоростью 90 км/час. Вычислить среднюю скорость автомобиля (она равна суммарному пути, деленному на суммарное время).
Скачано с www.znanio.ru
© ООО «Знанио»
С вами с 2009 года.