Урок №3 (простая программа)

advertisement
Урок 3
Структура программы на языке Pascal выглядит следующим образом:
• заголовок программы;
• раздел подключения модулей (ранее написанных библиотек);
• раздел меток (используется для правильной организации процесса решения
задачи);
• раздел именованных констант;
• раздел типов пользователя;
• раздел описания переменных;
• раздел подпрограмм пользователя;
• начало основной программы;
• раздел операторов основной программы;
• конец основной программы.
В программе могут отсутствовать один или несколько разделов, однако, заголовок программы,
раздел подключаемых модулей, начало основной программы, раздел операторов основной
программы и конец основной программы являются обязательными.
Структура простой программы
Program Primer;
{заголовок}
Uses . . .;
{раздел подключения модулей}
Var . . .;
{раздел описания переменных}
Begin
{начало программы}
{раздел операторов — тело программы}
End.
{конец программы}
ОПЕРАТОР ПРИСВАИВАНИЯ
Оператор присваивания используется для сохранения результата вычисления
арифметического выражения в переменной. Он имеет следующий общий вид:
Переменная := <выражение>;
Знак := читается как "присвоить".
где <выражение> — это выражение, записанное с использованием арифметических и/или
логических операций и скобок, значение которого можно вычислить; значение
<выражения> должно быть того же типа, что и переменная, указанная слева от
оператора присваивания;
<имя переменной> — это переменная, в которую будет записано значение <выражения>.
Оператор присваивания работает следующим образом: сначала вычисляется выражение,
стоящее справа от знака:=, затем результат записывается в переменную, стоящую слева от знака.
Например, после выполнения оператора
k:=k+2;
ОПЕРАТОРЫ ВЫВОДА
Вывод данных это процесс передачи данных из оперативной памяти на внешний носитель.
Базовая форма оператора вывода позволяет отобразить на экране значения переменных, или
констант, а также строки текста. Оператор записывается в одной из следующих форм:
write(список);
writeln (список);
Элементы списка - имена переменных, записанные через запятую, а так же текста, который
комментирует, назначение переменных. Текст заключается в апострофы.
write(‘<текст>’, <список переменных>);
writeln(‘<текст>’, <список переменных>);
Оператор write отличается от writeln тем, что при использовании оператора write, курсор
остается на этой же строке после выведенного значения, а при использовании оператора writeln
курсор переводится на начало следующей строки.
Например:
1. Вывод текста
write (‘значение константы pi= ’)
write (‘3.14 ’)
измените в первом операторе write на writeln и посмотрите что получится
2. Вывод нескольких переменных, с комментариями
write (‘значение константы pi ’,3.14)
pi:=3.14
write (‘значение константы pi ’,pi)
a:=3; d:=5
write (‘a=’,a, ‘d=’,d, ’a+d=’,a+d)
Составим свою первую программу и посмотрим, как работает этот оператор
program osa;
uses
var
a,b,s:integer;
c,d,t:real;
begin
write (‘пример 1’);
write (‘сложение двух чисел’);
измените в первом операторе write на writeln и посмотрите что получится
а затем так же изменим и во втором операторе вывода
a:=3;
b:=5;
writeln (‘a=’,a, ‘b=’,b, ’a+b=’,a+b);
writeln (‘пример 2’);
s:=a+b;
writeln (‘a=’,a, ‘b=’,b, ’s=’,s);
Writeln (‘для вещественных переменных’);
Вывод данных типа real производится в экспоненциальной форме.
c:=7.5;
d:=1.3
t:= c/d
writeln (‘c=’,c, ‘d=’,d, ’t=’,t);
Формат вывода
В операторе write или writeln вещественное значение (а иногда целое) зачастую удобнее
записывать с помощью формата:
переменная:ширина:точность
Здесь ширина - целое положительное число, определяющее, сколько экранных позиций
отводится для вывода всего числа.
Точность - целое положительное число, определяющее, сколько цифр из ширины отводится
на вывод дробной части числа. Значение точности определено только для вещественных чисел.
А=511.04
write А:8:4
511.0400
А=511.04
write А:9:4
<пробел>511.0400
Для целочисленных значений
А=86
write А:3
<пробел>86
writeln (‘c=’,c:8.2, ‘d=’,d:9:2,’t=’, t:9:2);
end.
Оператор ввода
Ввод данных – передача информации с внешних носителе в оперативную память Базовая
форма оператора ввода позволяет пользователю ввести с клавиатуры значения одной или
нескольких переменных.
Оператор ввода с клавиатуры может быть записан в одной из следующих форм:
read (список_переменных);
readln (список_переменных);
(Список переменных) - Имена переменных в списке перечисляются через запятую.
 По достижении оператора ввода выполнение программы останавливается и ожидается
ввод данных пользователем.

Вводимые значения переменных разделяются пробелом или переводом строки
(нажатием Enter).
 После ввода значений всех переменных из списка работа программы продолжается со
следующего оператора.
Оператор отличается от read тем, что
 все переменные в операторе readln должны быть введены в одну строку экрана,
 в операторе readln клавиша Enter нажимается один раз по окончании ввода,
 оператор readln считывает операторы из буфера памяти и стирает их.
 оператор read производит считывание данных из буфера, не очищая его
Форма записи readln используется, в основном, для ввода строк текста, для ввода числовых
значений лучше использовать read, т. к. в этом случае пользователь может вводить данные более
свободно (и в одну, и в несколько строк экрана).
Если водит данные недопустимого типа (например, строку текста вместо числа), то выводится
системное сообщение об ошибке и работа программы прерывается.
Изменим нашу программу, заменим операторы присваивания значения переменным,
оператором ввода с клавиатуры.
a:=3; b:=5;
read (a,b)
Посмотрим, как работает программа.
При достижении оператора программа останавливается и ждет ввода данных с клавиатуры.
Значения переменных должны вводиться в строгом соответствии со списком переменных, в той
же последовательности и тех же типов что и переменные.
Обычно для более корректной работы программы перед оператором read, вставляют
оператор write, который поясняет какие данные, вводятся в данный момент.
Write (‘введите значения а и в через пробел и нажмите enter’)
read (a,b)
Введем комментарии и еще раз выполним программу.
Самостоятельно:
1. Определить площадь кольца радиусами r1,r2. формула круга S=πr2
2. Определить сколько полных недель в году.
Д/З
Составить программу перевода рублей в доллары
Download