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

Оператор цикла for

«Цикл - до» имеет вид

for I:=N1 to N2 do P;

Здесь I – параметр цикла; N1,N2 - начальное и конечное значения параметру цикла; Р - оператор (простой или составной). I,N1,N2 должны быть одного скалярного типа, но не real. Если это целые переменные, то шаг равняется единице.

Например: for M:=5 to 20 do Y:=Y+M;

Цикл по убывающему значению параметра I от N2 к N1 имеет вид

for I:=N2 downto N1 do P;

Нестандартные типы данных

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

type T = (A1, A2, ..., AN);

Здесь Т - обозначение нового типа; A1,A2,...,AN - определяют константы нового типа данных. Последовательность значений, составляющая перечисляемый тип, упорядочена.

Например, новый скалярный тип color можно определить в такой способ:

type color = (red, green, white, blue);

Например, новый скалярный тип color можно определить следующим образом:

type color = (red, green, white, blue);

Для значений перечисляемых типов определены стандартные функции:

succ - получение следующего значения данного типа;

pred - получение предыдущего значения данного типа;

ord - получение порядкового номера данного типа (нумерация с нуля).

Ограниченные типы данных

Отрезок значений любого скалярного типа (кроме типа real) может быть определен как ограниченный тип.

Общий вид - type T = min..max;

Здесь Т - идентификатор типа; min, max - левая и правая границы диапазона. Тип min и max задает множество, которое определяет базовый тип переменной.

Например:

type den = 1..31;

god = 1900..2000;

var x: den; g:god; c:1..12;

Оператор выбора варианта

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

Общий вид –

case N of

M1: P1;

........

Mn: Pn

else P

end;

Здесь N - селектор; М1,М2,...,Мn - метки; Р1,Р2,..., Рn,Р - операторы. Селектор и метки должны быть одного скалярного типа.

Например:

case K of

1 : y:=10;

2..5 : Y:=2*x+5;

6..9 : Y:=sqrt(x)+x;

else Y:= sqr(x)

end;

Примеры выполнения задания лабораторной работы

Пример 10. Определить сезон (зима, весна, лето, осень), на который приходится любой из двенадцати месяцев.

Программа решения данного примера имеет вид:

program pr10;

uses crt;

type cezon=(z,w,l,o);

mec=(j,f,m,a,ma,i,il,aw,c,ok,n,d);

var k:mec; s:cezon; p:char;

Begin clrscr;

FOR K:=J TO D DO

CASE K OF

J,F,D:BEGIN S:=Z; WRITELN(' ':10,'ЗИМА'); END;

M,A,MA:BEGIN S:=W; WRITELN(' ':20,'ВЕСНА'); END;

I,IL,AW:BEGIN S:=L; WRITELN(' ':30,'ЛЕТО'); END;

C,OK,N:BEGIN S:=O; WRITELN(' ':40,'ОСЕНЬ'); END;

end;

p:=readkey

End.

Пример 11. Для целочисленных значений аргумента вычислить таблицу значений функции

где Х1 - множество чисел интервала [0,8];

Х2 - множество нечетных чисел интервала [9,15];

Х3 - остальные числа интервала [-5,15].

Программа вычисления таблицы значений функции z имеет вид:

program pr11;

uses crt;

type arg = -5..15;

var x:arg; z:real; p:char;

begin

clrscr;

for x:=-5 to 15 do

begin

case x of

0..8: z:=pi*sqr(x)*x*(pi+sin(x));

9,11,13,15: z:=sqr(ln(2*x+8))

else z:=2*cos(x+pi/4); end;

writeln(' ':20,' x=',x:3,' ':8,' z=',z:9:3);

end;

p:=readkey

end.

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