Четверг, 28.03.2024, 20:06

Приветствую Вас Гость | RSS

Главная » 2017 » Октябрь » 22 » Информатика. Pascal. Ввод и вывод
22:54
Информатика. Pascal. Ввод и вывод

Ввод и вывод информации в Pascal

Рассмотри два очевидных факта:

  • Любая программа работает с данными;
  • Все вычисления происходят внутри процессора и оперативной памяти (ОЗУ);

Первое означает, что программа должна получить данные для своей работы.
Второе означает, что когда программа ничего не отображает на мониторе, если её об этом не просить, а значит чтобы получить результаты работы нужно вывести его на экран (или файл, или принтер).

 

Ввод информации в программу можно осуществить несколькими способами:

  • Через параметры командной строки;
  • Через файлы данных или файлы конфигурации;
  • Через реестр Windows;
  • Непосредственно в программе с клавиатуры;
  • Непосредственно в программе с портов (COM, LPT);

 

Способы ввода информации в программу
Рис. 1
Способы ввода информации в программу

Ввод с портов достаточно сложен (в операционной системе Windows XP), ввод из реестра - тоже очень экзотичная операция.
Сегодня мы с лёгкостью научимся вводить данные с клавиатуры во время работы приложения.

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

  • Вывод в файлы данных;
  • Вывод на монитор;
  • Вывод на порты (COM, LPT);

 

Способы вывода информации из программы
Рис. 2
Способы вывода информации из программы

Сегодня мы научимся выводить надписи на мониторе. Впоследствии это очень пригодится Вам.

Ввод информации с клавиатуры осуществляет команда:

Read(<Пр_1>,[<Пр_2>],...);


<Пр_1> - Имя переменной, куда будет считано значение;
<Пр_2>, <Пр_3> - необязательные переменные (используются для ввода нескольких переменных подряд);

 

Пример использования:
Read(Name);

Если необходимо считать несколько значений подряд (например, значения температуры за последнюю неделю), то вместо:
Read(d1);
Read(d2);
Read(d3);
Read(d4);
Read(d5);
Read(d6);
Read(d7);

Пишем:
Read(d1, d2, d3, d4, d5, d6, d7);
Получается компактнее. И код намного более читабельный.

Вывод информации на монитор осуществляет команда:

Write(<Пр_1>,[<Пр_2>],...);


<Пр_1> - Содержимое этой переменной отправится на монитор;
<Пр_2>, <Пр_3> - необязательные переменные (используются для вывода нескольких переменных подряд);

 

Пример использования:
Name:='Вася Пупкин';
Write(Name);


На экране отобразится:
Вася Пупкин

В языке Паскаль есть ещё одна команда для вывода на экран:

WriteLn(<Пр_1>,[<Пр_2>],...);


Особенностью этой команды является то, что она не только выводит текст на монитор, но и переносит курсор на новую строку.

 

Пример использования:
Name:='Вася';
Famil:='Пупкин';
Write(Name);
Write(Famil);


На экране отобразится:
ВасяПупкин

Если же использовать WriteLn ("Ln" от слова "line" - линия):
Name:='Вася';
Famil:='Пупкин';
WriteLn(Name);
WriteLn(Famil);


На экране отобразится:
Вася
Пупкин

Если выполнить команду WriteLn(''); [вывод пустой строки и перенос каретки на новую строку], то программа вставит пустую строку.

Пример использования:
Name:='Вася';
Famil:='Пупкин';
WriteLn(Name);
WriteLn('');
WriteLn(Famil);


На экране отобразится:
Вася

Пупкин

Форматированный вывод
Команды Write и WriteLn поддерживают одну интересную особенность: возможность форматированного вывода.
Допустим, нам необходимо вывести на монитор таблицу степеней двойки (от 5 до 12).
Делаем так:
WriteLn(5, ' ', 2^5);
WriteLn(6, ' ', 2^6);
WriteLn(7, ' ', 2^7);
WriteLn(8, ' ', 2^8);
WriteLn(9, ' ', 2^9);
WriteLn(10, ' ', 2^10);
WriteLn(11, ' ', 2^11);
WriteLn(12, ' ', 2^12);

На экране отобразится:
5 32
6 64
7 128
8 256
9 512
10 1024
11 2048
12 4096

Видно, что начиная с 10й строки столбец "сбился". Чтобы можно было выводить красивые таблицы или текстовые рисунки, нужно использовать форматированный вывод.
Суть его проста: ставим после имени переменной двоеточие, и указываем ширину для вывода. И программа автоматически подстроится под эту ширину: если в переменной хранится больше символов, чем мы разрешили отобразить, то программа обрежет часть строки. Если же мы указали "с запасом", то программа добавит пробелов слева от выводимого текста.

Write(<Пр_1>:L);

<Пр_1> - Содержимое этой переменной отправится на монитор;
L - Длина строки для вывода;
Пример:
R:=12345;
WriteLn('03 симв. - ', R:3);
WriteLn('05 симв. - ', R:5);
WriteLn('10 симв. - ', R:10);

На экране отобразится:
03 симв. - 123
05 симв. - 12345
10 симв. - _____12345

 

Задания
[Для самостоятельной работы]
[Всё что не решено на уроке, нужно решить дома]

  • Написать программу, которая выводит ваши имя, фамилию и отчество в столбик
    Пример:
    Аддиев
    Габиби
    МамедОглы
  • Написать программу-приветствие. Программа должна запрашивать ваше имя, а после ввода писать: привет, <имя> Пример:
    Напишите своё имя:
    Пользователь пишет: "Вася Пупкин"
    Привет, Вася Пупкин!
  • Написать программу, которая находит сумму двух чисел. Оба числа запрашиваются у пользователя и вводятся с клавиатуры. После подсчёта программа выводит сумму на экран; Пример:
    Наберите первое слагаемое на клавиатуре:
    Пользователь пишет: "5"
    Наберите второе слагаемое на клавиатуре:
    Пользователь пишет: "10"
    5 + 10 = 15
  • Написать программу, которая выводит на экран заставку; Пример:
    *****************************
    *__Программа_"Сумма чисел"__*
    *____Автор:__Пупкин В.П.____*
    *****************************

Скачать всю статью целиком можно тут:

Архив Урок1.zip (50 кБ)
Категория: Информатика | Просмотров: 391 | Добавил: ProgrammerForever | Теги: программирование, Pascal, урок | Рейтинг: 0.0/0
Всего комментариев: 0
avatar