Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TP_Ch_I_izm.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.27 Mб
Скачать

II. Экспериментальный раздел работы

Пример 1. Войдем в среду программирования Turbo Pascal и наберем в окне редактора текст программы:

program Example_21;

begin

writeln(‘ Приветствуем Вас! ‘);

readln

end.

В качестве имени программы выбрано имя Example_21. Раздел описаний здесь отсутствует. В разделе операторов имеется два исполняемых оператора writeln и readln.

Поэкспериментируйте с текстом программы, убирая некоторые символы. Вместо оператора readln запишите read. Запустите программу на выполнение. Что изменилось? Теперь уберите оператор read и повторите запуск программы на выполнение. Объясните наблюдаемые изменения. Для просмотра результатов нажмите одновременно клавиши Alt+F5.

Пример 2. Напишем программу, работающую в режиме диалога с пользователем. Программа запрашивает имя пользователя, а затем выводит приветствие.

program Example_22;

var name1,name2: string;

begin

write(‘Как Тебя зовут ? ‘); readln(name1);

write(‘Как Твоя фамилия ? ‘); readln(name2);

writeln(‘ Рад с Тобой познакомиться ‘, name1,name2);

readln

end.

Здесь слово var (от английского variable - переменная) – служебное слово, обозначающее раздел описания переменных; name1 и name2 – переменные строкового типа string.

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

Введите программу, запустите её на выполнение и объясните результаты работы.

Реализуем туже программу, используя строковые константы.

program Example_22a;

const text1=‘ Как Тебя зовут ? ‘;

text2=‘ Как Твоя фамилия ? ‘;

text3=‘ Рад с Тобой познакомиться ‘;

var name1,name2: string;

begin

write(text1); readln(name1);

write(text2); readln(name2);

writeln(text3, name1,name2);

readln

end.

Поэкспериментируйте с текстом этих программ, объясняя смысл используемых конструкций.

Пример 3. Составим программу, которая выводит на экран таблицу различных мер длины.

program Example_23;

const inn=0.0254; ft=0.3048; yd=0.914; mile=1852.0;

text1=‘--------------------------------------------------‘;

text2=‘Наименование Обозначение СИ, метр‘;

begin

writeln(text1); writeln(text2); writeln(text1);

writeln(‘ Дюйм in ‘,inn:8:4);

writeln(‘ Фут ft ‘,ft:8:4);

writeln(‘ Ярд yd ‘,yd:8:4);

writeln(‘ Миля mile ‘,mile:8:2);

readln

end.

Параметры следующие после двоеточия называются спецификаторами вывода. Первый из них определяет ширину поля, второй - количество знаков после десятичной точки. Введите текст программы и добейтесь вывода таблицы на экран. Попробуйте вывести этот же текст, не используя пробелов в строке, а воспользовавшись спецификаторами вывода, например

writeln('Миля' : <число>, 'mile' : <число>, mile: <число>:<число>). Как происходит выравнивание?

Пример 4.(Для опытных) Рассмотрим следущую программу.

program example_24;

var a : integer;

begin

writeln('Введи три числа через пробел');

read(a);

writeln ('Первое число- ',a);

read(a);

writeln ('Второе число- ',a);

read(a);

writeln ('Третье число- ',a);

end.

1. Сможете ли вы объяснить, почему программа не останавливается на каждом вызове процедуры read? Замените каждый оператор Read на Readln. Объясните, как работает программа в этом случае.

2. Допишите в конец исходной программы оператор Readln; . Объясните, почему не происходит остановки программы для просмотра результатов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]