Pascal: Занятие №1. Часть 2: Операторы WriteLn и Readln в Pascal

Дата изменения: 6 сентября 2021
На занятии происходит знакомство с операторами readln и writeln в pascal; разбираются решенные задачи по работе с операторами ввода и вывода на языке Паскаль

Вывод данных: Оператор write или writeln в Pascal

Оператор writeln (от англ. write line — написать строку) или write (от англ. write — написать) — оператор вывода в Паскале, т.е. служит для вывода на экран каких-либо данных (просто текста, результатов выполнения программы, значений переменных и т.п.).

  • Выводимый текст заключается в одиночные кавычки.
  • Для вывода значений переменных кавычки использовать нельзя, указывается просто идентификатор (имени переменной).
  • Если необходимо после вывода перейти на другую строку, то используется оператор writeln ().
    оператор 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


    PascalABC.NET:

    1 способ:

    begin
      var n:integer;
      read(n);
      n: = n * n;
      print('n = ',n);

    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 := ReadInteger('Enter x:');
    var y := ReadInteger('Enter y:');
    var res := x + y;
    Print($'Sum of {x} and {y} is {res}');

    Задача 1. Написать программу, которая выводит на экран ваши ФИО, каждое слово – с новой строки.

    [Название файла: L1task1.pas]

    Оператор присваивания и оператор Readln в Pascal

    Оператор присваивания

    Обычно программе для решения какой-либо задачи требуются данные. Данные хранятся в переменных, которые имеют свои идентификаторы (имена), например, идентификаторы X или Y, или более длинные идентификаторы переменных — number1, counter и т.п.

    Важно: Идентификаторы состоят из буквы, за которой могут следовать буквы, цифры или символ подчеркивания

    Чтобы задать переменной какое-либо значение используется оператор присваивания. Оператор присваивания в Паскале обозначается как :=, выполняет правую часть выражения и присваивает результат переменной, расположенной в левой части выражения:

    оператор присваивания
    Пример:

    1
    2
    
    a:=2;
    writeln('квадрат ',a,'=',a*a);

    PascalABC.NET:

    1 способ:

    begin
      var n:integer; // объявление переменной
      n:=1; // присваивание

    2 method (канонический):

    begin
      var n:=1; // объявление переменной и присваивание значения  => инициализация
  • Если программный код достаточно большой, то такой вариант инициализации переменных весьма неудобен. В Pascalabc.net переменные могут описываться внутри тела программы — между begin и end и инициализироваться при описании.
  • В этом состоит принцип локальности: переменная описывается непосредственно перед началом своего использования.

  • Ввод данных

    Но часто в программе необходимо запрашивать данные (т.е. вводить значения переменных с клавиатуры, а затем использовать эти значения для решения поставленной задачи). Для ввода данных используется оператор ввода read или readln, в Паскале разницы между ними при вводе практически нету (на данном этапе знаний).
    оператор read

    Пример использования 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


    PascalABC.NET:

    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

    4 способ:

    // n1 и n2 - целочисленные переменные и мы вводим для них два значения
    var(n1, n2) := readInteger2;

    Обычно перед вводом выводится поясняющее сообщение о том, какие данные должны быть введены:

    var x := ReadInteger('Введите x:');
    var y := ReadInteger('Введите y:');
    var res := x + y;

    Задача 2. Даны две переменные. Выполнить основные арифметические действия с переменными (+ - * /) и вывести результат на экран.
    [Название файла: L1task2.pas]
    Задача 3. Пользователь вводит сторону квадрата. Найдите периметр и площадь квадрата.

    [Название файла: L1task3.pas]

    Задача 4. Даны две переменных с некоторыми значениями. Поменять местами значения этих переменных.

    [Название файла: L1task4.pas]

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    *
    *


    Вставить формулу как
    Блок
    Строка
    Дополнительные настройки
    Цвет формулы
    Цвет текста
    #333333
    Используйте LaTeX для набора формулы
    Предпросмотр
    \({}\)
    Формула не набрана
    Вставить