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

3.5.3. Вывод результатов

  • Write(x); {вывод на экран значения x: при реальном x=4, на экран выводится "4.0000000000E+00"}

  • Write(x:5:1); {вывод форматированных данных, то есть выделение на экране заданного количества позиций для вывода идентификатора: 5 показывает общее число позиций, 1 – число знаков после запятой: при x=4 , на экран выводится "4.0"}

  • Writeln(x); {вывод с новой строки}

  • Writeln(x,y); {вывод двух значений идентификаторов}

  • Writeln(‘x= ’,x:4:1); {вывод с комментариями и форматированием: "x= 4.0"}

  • Writeln(‘Площадь круга радиусом 3 м равна’,3.14*sqr(3):4:1); {Вывод с комментариями и выполнением расчетов: "Площадь круга радиусом 3 м равна 28.3"}

Технология программирования

Включает пять технологических операций (этапов):

    1. Постановка задачи.

    2. Математическое описание.

    3. Алгоритм – структограмма.

    4. Написание текста программы.

    5. Отладка, получение результатов.

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

Пример. Определить площадь круга.

Этапы разработки программы сведены в таблицу.

Таблица

N

Этапы программирования

Выполнение

1.

Постановка задачи

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

2.

Математическое описание

Расчетная формула: S=πR2

3.

Разработка алгоритма (структограммы)

Описание R,S

Ввод R

Расчет S=πR2

Вывод S

4.

Написание программы

Program P1; { программа вычисления площади круга}

Var r,S:real; {Описание переменных}

Begin

Read(R); {в этом месте программа останавливается, для ввода числового значения R}

{R:=4;}{другой вариант ввода исходных данных}

S:=3.14*Sqr(R); {расчет}

{S:=Pi*sqr(R);} {другой вариант расчета}

Writeln(‘R=’,R:3:1, ‘S=’,S:8:4); {Вывод}

end.

5.

Отладка и получение результатов

R= 4.0 S= 48.7654

Структурное программирование

Структурное программирование – это стиль программирования, позволяющий разрабатывать хорошо структурированные программы.

Основные положения структурного программирования:

    1. Программа разбивается на блоки, каждый из которых имеет один "вход" и один "выход".

    2. Любая программа может быть составлена из трех структур или блоков, которые представлены в таблице.

    3. Алгоритмы при структурном программировании представляются в виде структоргамм, элементы написания которых также приведены в таблице.

Таблица

Основные типы структур и примеры их изображения на структограммах

Название

Алгоритм

Блок-схема

Структограмма

а) линейная структура

б) Ветвящаяся структура

в) циклическая структура:

с предусловием

с постусловием

Операторы цикла используются для многократного повторения аналогичных вычислений.

Для организации цикла в ТП имеются три различных оператора.

  1. Счетный оператор цикла For:

For <параметр цикла>:=<начальное значение> to <конечное значение> do Р;

P- простой или составной оператор.

При каждом прохождении цикла < параметр цикла >, начиная с <начального значения>, увеличивается на единицу. Цикл выполняется, пока <параметр цикла> не станет больше <конечного значения>.

Другой вариант записи оператора For:

For <параметр цикла >:=< начальное значение> downto <конечное значение> do Р;

В этом случае при каждом прохождении цикла < параметр цикла > уменьшается на единицу от <начального значения> до <конечного значения>.

  1. Оператор цикла While с проверкой предусловия:

While <условие> do P; {Пока выполняется условие, делать}

Цикл выполняется, пока условие истинно (true).

  1. Оператор цикла Repeat … until с проверкой постусловия:

Repeat P until <условие>; {Выполнять до тех пор, пока не будет выполнено условие}

Цикл выполняется, пока условие ложно (false).

Пример.

    1. Постановка задачи. Найти сумму 5 целых чисел от 1 до 5. Написать программы для определения суммы с помощью трех рассмотренных операторов цикла.

    2. Математическое описание.

    3. Структограммы и программы для каждого оператора цикла приведены в таблице:

Таблица

Структограммы и программы

Цикл For

While

Repeat

3.1.

3.2

3.3

4.1:

Program P2;

Var i,S:integer;

Begin

S:=0;

For i:=1 to 5 do

S:=S+i;

Writeln(‘S=’,S:5);

End.

4.2:

Program P2;

Var i,S:byte;

Begin

S:=0; i:=1;

While i<=5 do

Begin

S:=S+i;

I:=i+1;

End;

Writeln(‘S=’,S);

End.

4.3:

Program P3;

Var i,S:integer;

Begin

S:=0; i:=1;

Repeat

S:=S+i;

I:=i+1;

Until i>=6;

Writeln(S);

End.

предназначен для ветвления программы на два направления.

Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие.

Рассмотрим четыре варианта записи оператора IF:

  1. If <условие> then P1 else P2;

  2. If <условие> then P1;

  3. If (<условие1>) or (<условие2>) then P1 else P2;

  4. If (<условие1>) and (<условие2>) then P1 else P2;

где <условие>,<условие1>, <условие2> - переменные логического типа. Р1, Р2 - простые или составные операторы.

  • В первом случае если условие истинно, то выполняется оператор P1, если ложно – то P2.

  • Во втором варианте записана краткая форма оператора.

  • В третьем и четвертом примерах два условия объединены служебными словами or (или) и and (и). В результате объединения получается новая логическая переменная, истинность которой определяется согласно следующей таблицы.

Таблица

Таблица истинности сложных условий: И - истинно, Л - ложно

(<условие1>)

И

И

Л

Л

(<условие2>)

И

Л

И

Л

(<условие1>) or (<условие2>)

И

И

И

Л

(<условие1>) and (<условие2>)

И

Л

Л

Л

Пример. Написать программу для решения квадратного уравнения a∙x2+b∙x+c=0.

Технологические операции программирования и их выполнение приведены в таблице

Таблица

N

Этапы программирования

Выполнение

1.

Постановка задачи

Написать программу для решения квадратного уравнения a∙x2+b∙x+c=0.

2.

Математическое описание

3.

Разработка структограммы

4.

Написание программы

Program P3;

Var a,b,c,d,x1,x2:real;

Begin

a:=1;

b:=3;

c:=5;

D:=sqr(b)-4*a*c;

If D>=0 then

Begin

X1:=(-b+sqrt(D))/2/a;

X2:=(-b-sqrt(D))/2/a;

Writeln(x1,x2);

End

Else

Writeln(‘Действ.корней нет’);

End.

5.

Отладка и получение результатов

Выполнить самостоятельно

Оператор выбора (case)

Предназначен для ветвления программ на 2 или несколько направлений.

Case <ключ выбора> of <список выбора> else P end;

<ключ выбора> - идентификатор целого или символьного типа,

<список выбора> - включает в себя две или более конструкций следующего вида:

<константа выбора> : <оператор>;

<константа выбора> - это идентификатор того же типа, что и <ключ выбора>.

Пример. Для 100 целых значений x рассчитать значение .

Составить два варианта программ: с помощью условного оператора if и c помощью оператора выбора Case.

Технологические операции программирования приведены в таблице

Таблица

N

Технологическая операция

Выполнение

1.

Постановка задачи

Для 100 целых значений x рассчитать значение y,

2.

Математическое описание

Для определения четности воспользуемся оператором mod – остаток целочисленного деления:

Если x mod 2=0, то x-четное

Если x mod 2=1, то x-нечетное

3.

Разработка структограммы

4.

Написание программы

4.1

С помощью оператора If

Program P4;

Var x,y:integer;

Begin

For x:=1 to 100 do

Begin

If x mod 2 =0 then y:=2*x else y:=2+x;

Writeln(x,y);

End;

End.

4.2

С помощью оператора Case

Program P4;

Var x,y:integer;

Begin

For x:=1 to 100 do

Begin

Case x mod 2 of

0: y:=2*x;

1: y:=2+x;

end;

Writeln(x,y);

End;

End.

5.

Отладка и получение результатов

Выполнить самостоятельно

ФУНКЦИЯ И ПРОЦЕДУРА

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

Функции и процедуры должны быть описаны в разделе описания, обращение к ним производится, как правило, из тела основной программы.

Описание функций и процедур включает заголовок и основную часть описания.