Автор: Пользователь скрыл имя, 13 Ноября 2011 в 11:18, реферат
Для подготовки информации к обработке на ПЭВМ необходимо выполнить следующие этапы:
Постановка задачи.
Формализация поставленной задачи.
Выбор численного метода и представление решения в виде структурной схемы(блок-схемы) (алгоритмизация).
Оформление задачи на входном языке ПЭВМ (программирование).
Ввод и отладка программы.
Выполнение программы и анализ полученных результатов.
Применение оператора writeln без операндов приводит к переходу на начало новой строки.
Условные операторы
Условный оператор позволяет выполнить один из входящих в его состав операторов в зависимости от выполнения какого либо условия.
Оператор IF
Оператор IF определяет, что тот или иной оператор должен выполняться лишь в том случае, если справедливо заданное условие /то есть соответствующее булевское выражение принимает значение true /истина/.
Если условие не выполняется, то либо никаких действий не производится, либо выполняется оператор, записанный вслед за словом else /иначе/. Отметим, что перед словом else не нужно ставить точку с запятой.
Некоторую двусмысленность, возникающую при интерпретации синтаксических конструкций, следующего вида:
if expr1 then
if expr2 then
smit1
else
smit2;,
где expr - выржение, smit –оператор,
можно устранить, оформив данную конструкцию следующим образом:
if expr1 then
begin
if expr2 then
smit
else
smit2
end.
Предложение else оператора if-относится обычно к последнему оператору if, у которого нет предложения else.
Пример использования оператора IF. Определить наибольшее значение из переменных a, b, c:
if a>b then if a>c then max := a else if c>b then max := c |
Операторы повтора FOR, WHILE и REPEAT
Операторы повтора указывают на то, что определенную группу операторов следует выполнить несколько раз. Если количество повторных выполнений заданной группы операторов известно заранее, то в такой ситуации вполне подходит оператор FOR.
Если количество повторов неизвестно, то следует использовать операторы while или repeat.
Оператор for указывает на то, что составной оператор следует выполнять повторно до тех пор, пока не будут перебраны все значения управляющей переменой, задаваемые прогрессией. Прогрессия может быть возрастающей: to или убывающей: downto. Вычисления проводятся до тех пор, пока управляющая не примет конечное значение /задаваемое в операторе/.
Управляющая переменная, начальное и конечное значение должны быть одного и того же типа. Допускаются все простые типы, то есть все скалярные типы, за исключением вещественного.
Примеры:
for i := i1 to i2 do S; цикл может не выполняться, если i1>i2
for i := i1 dowto i2 do S; цикл может не выполняться, если i1<i2.
Пример. Вычислить сумму элементов вектора Х.
|
Program
summa;
Var S: Real; i, n: Integer; x: array[1..100] of real; begin write(‘n=’); readln(n); for i:=1 to n do begin write (‘x[‘,i:2, ‘]=’); readln (x[i]); end; S:=0.0; for i:=1 to n do S:=S+x[i]; writeln (‘сумма=’, S); End. |
Заметим,
что составной оператор, повторно
выполняемый при помощи оператора
for, не должен содержать операторов,
присваивающих значения управляющей
переменной. Если необходимо завершить
повторное выполнение составного оператора
прежде, чем управляющая переменная
примет конечное значение, то можно
воспользоваться оператором goto. В
таких случаях лучше
После завершения выполнения операторов for значение управляющей переменной равно конечному значению, если же это не так, то значит цикл не был выполнен вообще. В этих случаях никакие значения управляющей переменной вообще не присваивались.
Оператор while. Цикл с предусловием
Оператор while /пока/ управляет повторным выполнением какого-либо оператора или группы операторов. Оператор выполняется повторно до тех пор, пока управляющее выражение принимает значение true /истина/.
Если
управляющее выражение
Пример:
составить программу для расчета значений
функции y = exlgx на отрезке [a, b] и шагом
dx с использованием оператора цикла с
предусловием.
|
x:=xn; while (x<=xk) do begin y:=exp(x)*ln(x)/ln(10); writeln (‘x=’, x:6:3, ‘y=’, y:8:3); x:=x+dx;
end; |
Оператор Repeat. Цикл с постусловием
Bыражение, управляющее повторным выполнением заданного оператора в операторе repeat /повторить/, должно быть булевского типа. Последовательность операторов, заключенная между зарезервированными словами repeat и until /пока/, выполняется повторно до тех пор, пока управляющее выражение не примет значение true /истина/. В отличие от оператора while тело оператора repeat выполняется по крайней мере один раз, так как определение значения условного выражения производится в конце цикла.
Пример: составить программу для расчета значений функции y = exlgx на отрезке [a, b] и шагом dx с использованием оператора цикла с постусловием.
x:=xn;
Repeat y:=exp(x)*ln(x)/ln(10); writeln(‘x=’, x:6:3, ‘y=’, y:8:3); x:=x+dx; Until (x>xk); |
нет да |
Кроме
описаний и операторов ПАСКАЛЬ - программа
может содержать комментарии, которые
представляют собой произвольную последовательность
символов, расположенную между
{
и
закрывающей скобкой
}
.
9.ХАРАКТЕРИСТИКА ПОДРАЗДЕЛОВ РАЗДЕЛА ОПИСАНИЙ ДАННЫХ.
Раздел описания меток
Перед
любым оператором программы можно
поставить метку, что позволит выполнить
безусловный переход на этот оператор
при выполнении команды goto. Метка
состоит из имени метки и следующего
за ним двоеточия. Перед использованием
метки ее следует описать в
разделе описания меток. Раздел описания
меток имеет следующую
Пример:
label 10, error, 999, Quit;
label 5, M10, iter;
Тогда как стандартный Паскаль налагает на имя метки определенные ограничения /метка должна состоять не более чем из 4 цифр/, в TURBO-Паскале в качестве меток могут использоваться как числа, так и идентификаторы.
Раздел определения констант
В разделе определения констант выполняется присваивание идентификаторам определенных постоянных значений. В начале раздела определения констант пишется слово const /константа/. Вслед за этим словом следует список выражений, в которых идентификаторам присваиваются определенные постоянные значения. Элементы списка отделяются друг от друга точкой с запятой. Каждое выражение присваивания состоит из идентификатора, за которым через знак равенства следует присваиваемая ему постоянная величина. В качестве констант могут использоваться строки или числа.
Пример:
const
Limit = 255; Max = 1024;
Pi = 3.14159; A = ‘студент’
Sbol = True;
Раздел определения типов
Тип
данных в Паскале может быть описан
либо непосредственно в разделе
описания переменных, либо определяться
идентификатором типа. В Паскале
есть несколько стандартных
Пример:
type
Number = Integer;
Day = (mon,tues,wed,thur,fri,sat,
List = array[1..10] of Real;
Раздел описания переменных
Каждая переменная, встречающаяся в программе, должна быть определена. Описание переменной должно предшествовать использованию ее в тексте программы с тем, чтобы в момент использования она была уже "знакома" компилятору.
Раздел описания переменных начинается зарезервированным словом var / от variable - переменная/. Вслед за ним идет список, записи которого имеют следующую структуру: сначала через запятую перечисляется один или несколько идентификаторов переменных, затем ставится двоеточие и после двоеточия указывается тип перечисленных переменных. При обработке описания переменной транслятор создает новую переменную и присваивает ей определенный идентификатор.
Информация о работе Основы технологии разработки программ. Этапы разработки программ