- •1Основы алгоритмизации
- •1.1Этапы решения задач на эвм
- •1.2Алгоритм. Свойства алгоритмов
- •1.3 Алгоритмическая конструкция ветвления
- •1.4Алгоритмическая конструкция цикла
- •22. Программирование на Турбо Паскаль
- •2.1Основные конструкции языка Паскаль
- •2.1.1История создания языка.
- •2.1.2Программа на tp.
- •2.1.3 Простые типы данных.
- •2.1.4Константы, переменные и оператор присваивания.
- •2.1.5Операторы ввода/вывода.
- •2.2 Управляющие конструкции языка тп
- •2.2.1Безусловные конструкции.
- •2.2.2Условные конструкции.
- •2.2.3Циклические конструкции.
- •1. Цикл с предусловием.
- •Цикл с постусловием.
- •3. Цикл с параметром.
- •2.3Массивы
- •2.3.1Одномерные массивы
- •2.3.2Сортировка массивов.
- •2.3.3Двумерные массивы
- •2.4Процедуры и функции.
- •2.4.1Использование
- •2.4.2Формальные и фактические параметры
- •2.4.3Описание
- •2.4.4Вызов процедур и функций в основной программе
- •2.4.5Пример
- •2.5Использование библиотек стандартных процедур в программах. Модуль Crt. Текстовые режимы использования экрана.
2.2 Управляющие конструкции языка тп
2.2.1Безусловные конструкции.
Оператор языка - неделимый элемент программы, который позволяет выполнять определенные алгоритмические действия.
В ТП существует всего один оператор безусловного перехода Goto. Оператор безусловного перехода Goto представляет собой простой оператор, используя который можно изменять порядок выполнения операторов в программе. Общий вид оператора безусловного перехода:
goto <метка>
где <метка> - это идентификатор или целое число от 0 до 9999, объявленное в разделе меток label.
Применение оператора безусловного перехода в ТП - программе является нежелательным, т.к. его присутствие нарушает структурную целостность и наглядность. Такую программу трудно читать, отлаживать и модифицировать.
2.2.2Условные конструкции.
неполная форма с одним оператором
полная форма с одним оператором
неполная форма с несколькими операторами
полная форма с несколькими операторами
1) IF условие THEN оператор; 2) IF условие THEN оператор1 ELSE оператор2; 3) IF условие THEN BEGIN оператор1; оператор2; … операторN; END; 4) IF условие THEN BEGIN оператор1; оператор2; … операторN; END ELSE BEGIN оператор1; оператор2; … операторN; END;
Пример: ввести оценку студента в баллах и сообщить ее название.
Begin Read(b) If b=5 then Write('отлично') else If b=4 then Write('хорошо') else If b=3 then Write('удовл.') else If b=2 then Write('неудовл.') else Write('это не оценка'); End.
Пример. Разработать программу вычисления значений заданной кусочно-непрерывной функции для произвольных значений исходных данных. Подготовить исходные данные для контрольного расчета значения функции по каждой формуле. Выполнить контрольные расчеты и расчет для заданных исходных данных.
V =
Контрольный расчет.
n=0.59; n-u=-0.52 < 1; вычисляем V по 1-ой формуле
V=75.64
Анализ задачи.
При u0 могут возникать ошибки.
Блок- схема алгоритма
4. program My_second_prog;
var u,n,v:real;
begin
write('u='); readln(u);
n:=sqrt(sqrt(0.14)*sin(u)/(0.89*ln(3)));
if n-u<0 then
begin V:=exp(2*sin(n)/cos(n)+3);
writeln('formula 1');
end else
if n-u<1 then
begin V:=ln(sqr(u))-n;
writeln('formula 2');
end else
begin v:=ln(sqr(n)+sqr(u));
writeln('formula 3');
end;
writeln('V=',V:2:3);
readln
end.
2.2.3Циклические конструкции.
1. Цикл с предусловием.
Для реализации циклов с предусловием используется оператор while. В общем виде цикл реализуется записью:
while <условие> do <действие>;
По-русски можно прочитать так: "Пока истинно условие, выполнять действие". Если тело цикла содержит более одного действия, то необходимо использовать операторные скобки:
while <условие> do begin <оператор 1>; <оператор 2>; ... <оператор n>; end;
Если условие ложно изначально, то тело цикла не будет выполнено ни разу. Если условие изначально истинно и в теле цикла нет действий, влияющих на истинность этого условия, то тело цикла будет выполняться бесконечное количество раз. Такая ситуация называется "зацикливанием". Прервать зациклившуюся программу можно нажав Ctrl+C, поэтому используя структуру цикла следует понимать, что многократное выполнение должно когда-нибудь заканчиваться. Для предотвращения зацикливания необходимо предусмотреть действия, приводящие к истинности условия.
Пример: Найти сумму квадратов всех натуральных чисел от 1 до 100.
Program Summa; Var A : Integer; S : Longint; Begin
A:=1; S:=0; While A<=100 Do Begin
S:=S+A*A; A:=A+1
End; Writeln(S)
End.