Содержание:
Вывод данных: Оператор write или writeln в Pascal
Оператор writeln
(от англ. write line — написать строку) или write
(от англ. write — написать) — оператор вывода в Паскале, т.е. служит для вывода на экран каких-либо данных (просто текста, результатов выполнения программы, значений переменных и т.п.).
Если необходимо после вывода перейти на другую строку, то используется оператор writeln ()
.
Результат:
2+2=? Ответ: 4
Рассмотрим примеры задач с использованием вывода Writeln в Pascal:
1 | Write('Сумма 5 + 6 = ',5+6); |
Результат: Сумма 5 + 6 = 11
1 | Write('Привет'); |
Результат: Привет
1 | Write('A'); Write('B'); |
Результат: AB
1 | Writeln('A'); Write('B'); |
Результат:
A
B
Print
— это оператор, позволяющий выводить результаты на монитор. При выводе текста нужно заключать его в апострофы (одинарные кавычки). Похожий оператор PrintLn
— после вывода автоматически переходит на следующую строку.
1 способ:
begin var n:integer; n := 5; n := n * n; print('n =',n); // n = 25 end. |
2 способ (форматный вывод):
begin var a:=1.2; var b:=4; var c:=a+b; WritelnFormat ('f({0}, {1}) = {2}', a, b, c); end. |
Результат:
f(1.2, 4) = 5.2
3 способ:
var x := 5; var y := 6; var res := x + y; Print($'Сумма {x} + {y} = {res}'); // Сумма 5 + 6 = 11 |
[Название файла: L1task1.pas
]
В среде Pascal можно использовать так называемые сниппеты (snippets): — фрагменты названий функций для быстрого их добавления в код:
print
, достаточно просто напечатать латинскую букву p
и щелкнуть [shift]+[пробел]
— появится строка кода Print();
begin..end
, достаточно напечатать сочетание be
и щелкнуть [shift]+[пробел]
.Оператор присваивания и оператор Readln в Pascal
Оператор присваивания
Обычно программе для решения какой-либо задачи требуются данные. Данные хранятся в переменных, которые имеют свои идентификаторы (имена), например, идентификаторы X
или Y
, или более длинные идентификаторы переменных — number1
, counter
и т.п.
Чтобы задать переменной какое-либо значение используется оператор присваивания. Оператор присваивания в Паскале обозначается как :=
, выполняет правую часть выражения и присваивает результат переменной, расположенной в левой части выражения:
1 2 | a:=2; writeln('квадрат ',a,'=',a*a); |
1 способ:
begin var n:integer; // объявление переменной n:=1; // присваивание |
2 method (канонический):
begin var n:=1; // объявление переменной и присваивание значения => инициализация |
begin
и end
и инициализироваться при описании.Ввод данных
Но часто в программе необходимо запрашивать данные (т.е. вводить значения переменных с клавиатуры, а затем использовать эти значения для решения поставленной задачи). Для ввода данных используется оператор ввода read
или readln
, в Паскале разницы между ними при вводе практически нету (на данном этапе знаний).
Пример использования readln в Pascal:
1 2 3 | Writeln('Введите число'); readln(a); writeln('квадрат ',a,'=',a*a); |
то же самое, что и read:
Пример использования read в Pascal:
1 2 3 | Writeln('Введите число'); read(a); writeln('квадрат ',a,'=',a*a); |
Если запрашиваются две переменные, то можно перечислять их через запятую:
1 2 3 | Writeln('Введите два числа'); read(a,b); writeln('сумма чисел = ',a+b); |
1 способ:
begin var n:integer; // n - целочисленная переменная read(n); // ввод значения и сохранение его в переменной n |
begin var n:real; // n - переменная вещественного типа read(n);// ввод значения и сохранение его в переменной n |
2 способ:
// n - целочисленная переменная и мы вводим значение и сохранением его в переменной n var n:=ReadInteger(); // х - переменная вещественного типа и мы вводим значение и сохранением его в переменной х var x:=ReadReal(); |
3 способ (кортежное присваивание):
var n1, n2: integer; // объявление двух переменных (n1, n2) := (1, 2); // 1 присваивается переменной n1, 2 присваивается переменной n2 // Кортежное присваивание позволяет коротко записать обмен двух переменных значениями: (n1, n2) := (n2, n1); // n1 = 2; n2 = 1 |
4 способ:
// n1 и n2 - целочисленные переменные и мы вводим для них два значения var(n1, n2) := readInteger2; |
Обычно перед вводом выводится поясняющее сообщение о том, какие данные должны быть введены:
var x := ReadInteger('Введите x:'); var y := ReadInteger('Введите y:'); var res := x + y; |
Кроме того, оператор ReadInteger
или ReadReal
может быть использован непосредственно в процедуре Print
, т.е. в выводе. Например, так можно посчитать площадь прямоугольника:
Print(ReadInteger * ReadInteger); |
+ - * /
) и вывести результат на экран.[Название файла:
L1task2.pas
]
[Название файла: L1task3.pas
]
[Название файла: L1task4.pas
]
Список сниппетов
Список основных сниппетов (при наборе использовать shift + пробел):
a → (лямбда-выражение) ar array of ; b begin end; be begin end. bo boolean c case of : ; : ; end; cl type = class end; f for var i:=1 to 10 do fb for var i:=1 to 10 do begin end; fo foreach var x in a do fu function (): ; begin end; i integer if if then ifb if then begin end; l loop 10 do lb loop 10 do begin end; p Print(); pr procedure (); begin end; r repeat until ; s string t try except end; u unit Program1; interface implementation begin end. w while do wb while do begin end;