Ввод и вывод информации в 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
- Написать программу, которая выводит на экран заставку; Пример:
*****************************
*__Программа_"Сумма чисел"__*
*____Автор:__Пупкин В.П.____*
*****************************
Скачать всю статью целиком можно тут:
|