- •Тема 1. Структура простой программы на Паскале. Описание переменных. Операторы ввода/вывода. Операторы присваивания.
- •Var X, y, z, time : real;
- •Операторы следования
- •Тема 2. Операторы: условный, составной. Простое логическое выражение. Сложное логическое выражение. Приоритеты операций.
- •Var X:intrger;
- •Var z,y : real;
- •Var a,b,c : real;
Тема 1. Структура простой программы на Паскале. Описание переменных. Операторы ввода/вывода. Операторы присваивания.
Программа на языке Паскаль может содержать:
1. Заголовок;
2. Описание переменных;
3. Операторы (операторная часть программы).
Операторы программы – это последовательность операторов языка программирования, начинающаяся со слова Begin и оканчивающаяся словом end. В конце программы точка обязательна. Операторы разделяются символом ‘;’ – точка с запятой.
В большинстве случаев используются операторы: для ввода исходных данных, для выполнения вычислений и для вывода результатов.
Заголовок программы можно опускать.
Пример простейшей программы:
begin
Writeln(‘Поздравляем!’)
end.
В этой программе отсутствуют заголовок программы и описание переменных. Из операторов используется оператор вывода Writeln(‘Поздравляем!’). Он предназначен для вывода на экран текста Поздравляем!. Заметьте, что текст заключается в ‘’.
Упражнение. Наберите текст простейшей программы и выполните программу.
----------------------------------------------------------------------------------------------------
Описание переменных в программе имеет вид:
var <список имен переменных>: <тип переменных>;
Основные типы переменных:
integer – целый
real – вещественный
boolean – логический (булевский)
char – символьный
Пример описания переменных:
Var X, y, z, time : real;
n : integer;
b1, b2 : boolean;
с : char;
-------------------------------------------------------
Операторы следования
Оператор ввода:
read( <список переменных, значения которых должны вводиться с экрана >);
Или:
readln(<список переменных, значения которых должны вводиться с экрана);
Во втором случае курсор устанавливается на начало следующей строки экрана.
Пример ввода переменных x, y, z: Read(x,y,z);
Оператор вывода:
write(<список выводимых объектов>);
Или:
writeln(<список выводимых объектов>);
В этом случае после выполнения оператора вывода курсор переводится на начало следующей строки.
Объектами в операторе вывода могут быть переменные и выражения.
Строковые выражения заключаются в ‘ ’.
Пример операторов вывода:
writeln(‘площадь фигуры равна ’, 16);
writeln(‘площадь прямоугольника равна ’, 3.5*80,
’ периметр=’, 2*(3.5+80));
Или write(‘площадь прямоугольника равна ’, 3.5*80 );
writeln( ’ периметр=’, 2*(3.5+80));
Эти операторы вывода содержат строковые выражения (в ’’), число (16) и числовые выражения (в состав этих выражений входят числа и знаки операций).
Упражнение. Включите в текст программы операторы вывода предложенного примера. Укажите на отличия при их выполнении.
----------------------------------------------------------------------------------------------------
Оператор присваивания имеет вид:
<переменная>:=<выражение>
Арифметическое выражение состоит из чисел, переменных,
знаков арифметических операций: +, -, *(умножить), / (разделить),
div (получение целого частного при делении двух целых чисел), mod (получение целого остатка от деления двух целых чисел), круглых скобок и указателей стандартных функций: sin, cos, ln (натуральный логарифм), abs (абсолютная величина), sqr (возведение в квадрат), sqrt(извлечение корня квадратного), arctan(x)- arctg(x), exp(x) – . При использовании стандартных функций аргумент функции заключается в ().
Пример арифметического выражения:
Формула на паскале может быть представлена оператором присваивания: y:=(a+b)/(x*sqrt(abs(c*d)))
Пример программы вычисления площади кольца, с радиусами r1 и r2 (r2>r1).
Program one;
Var r1,r2,s: real;
Begin
Writeln('задайте r1 и r2, r2>r1');
Readln(r1,r2);
S:=pi*(r2*r2-r1*r1);
Writeln('площадь кольца=',s)
End.
Результаты выполнения программы:
задайте r1 и r2, r2>r1
0 5
площадь кольца=78.5398163397448
Помним, что числа при наборе на клавиатуру должны отделяться пробелами, конец ввода завершается нажатием клавиши ENTER.
При выводе вещественных чисел полезно указывать формат вывода:
Program one;
Var r1,r2,s: real;
Begin
Writeln('задайте r1 и r2, r2>r1');
Readln(r1,r2);
S:=pi*(r2*r2-r1*r1);
Writeln('площадь кольца=',s:7:3)
End.
Результаты выполнения программы:
задайте r1 и r2, r2>r1
0.5 10.7
площадь кольца=358.896
В операторе Writeln('площадь кольца=',s:7:3) после переменной s содержится формат вывода вещественных чисел :7:3. Число 7 указывает на ширину поля при выводе числа, число 3 указывает на количество цифр после запятой (число 358.896 занимает 7 позиций, дробная часть 896 занимает 3 позиции).
Упражнение. Наберите текст программы one и выполните программу.
В программу полезно включать комментарии. Многострочные комментарии заключаются в {} (фигурные скобки). Комментарии, которые размещаются в одной строке, можно располагать после символов // (два слежа). |
Еще один пример линейной программы.
Написать программу вычисления площади s и периметра p прямоугольника, если заданы длины двух его сторон a и b.
Входными данными в этом примере являются переменные a и b.
Результатами (выходными данными) будут переменные s и p.
Текст программы :
Program two;
var a,b:real; //входные данные
s,p:real; // выходные данные
begin
writeln(‘задайте длины сторон прямоугольника’);
readln(a,b);
s:=a*b;
p:=2*(a+b);
writeln(‘s=’,s,’ p=’,p)
end.
Упражнение.
Выполните программу при различных значениях входных данных.
a |
b |
3 |
4 |
3.5 |
80.4 |
--------------------------------------------------------------------------------------------------
Задания к разделу “линейные программы”:
1 Записать программы для вычислении значений по следующим формулам. Вывести результаты.
a) y= ; б) z= ; в) w= ;
г) abc= ; д) rez= ; е) rez1= ;
2 Запишите программу для вывода чисел е и .
3 Записать программу, содержащую операторы присваивания, которые переменной d присваивают
а) среднее арифметическое чисел x, y, z;
б) расстояние между точками с координатами и ( ;
в) площадь треугольника со сторонами a, b, c.
4 Записать программу, содержащую оператор присваивания, который меняет знак у значения переменной z. Вывести z до и после перемены знака.
5 Записать программу, в которой меняются местами значения переменных x и y. Вывести x и y до и после обмена значениями.
6 Поменять местами значения переменных x, y и z так, чтобы в x оказалось значение переменной y, в у – значение переменной z, а в z – прежнее значение переменной x. Вывести x, y и z до и после обмена значениями.
7. Записать программу нахождения корня линейного уравнения ax+b=0;
и корня квадратного уравнения (можно считать, что уравнение имеет вещественные корни).
Указание: В примерах 8-15 используйте операции div (получения целого частного при делении двух целых чисел) и mod (получения целого остатка при делении двух целых чисел). Например, если нужно в переменную x поместить младшую цифру числа a, то можно записать следующий оператор присваивания: x:=a mod 10. А если надо вывести на экран целое частное, полученное при делении двух целых чисел a и b, то нужно записать следующий оператор: writeln(a div b).
|
8. Найти сумму и произведение цифр двузначного целого числа.
9.В целом двузначном числе переставить цифры.
10.Каждую цифру целого двузначного числа увеличить на 1.
11. Каждую цифру целого двузначного числа уменьшить на 1.
12. В целом трехзначном числе переставить цифры в обратном порядке.
13. В целом трехзначном числе переставить 1-ю и 3-ю цифры.
14. Дано трехзначное число. Обнулить в нем разряд десятков.
15. Дано трехзначное число. Сформировать новое число, увеличив каждую цифру на единицу. Если цифра данного числа имеет значение 9, то она должна стать равной 0.