Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лек.№4 информ

.pdf
Скачиваний:
8
Добавлен:
18.03.2015
Размер:
155.22 Кб
Скачать

ЛЕКЦИЯ 4. ОСНОВНЫЕ ОПЕРАТОРЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА ПАСКАЛЬ

ПЛАН

4.1.ОПЕРАТОРЫ ВЫВОДА ДАННЫХ

4.2.ОПЕРАТОРЫ ВВОДА ДАННЫХ С КЛАВИАТУРЫ

4.3.ОПЕРАТОР ВЫБОРА

4.4.УСЛОВНЫЙ ОПЕРАТОР

4.5.ОПЕРАТОР ЦИКЛА

4.6.ОПЕРАТОР ПЕРЕХОДА К МЕТКЕ

Для сведения

 

Оператор присваивания

:=

x:=1; a:=5. 02; b := 32*a+Sin(x); S:= 'Иван Иваныч';

Составной оператор

Begin "операторы" end;

4.1. Операторы вывода данных

Операторы вывода данных на экран

Write("список переменных"); или Writeln("список переменных");

Writeln(a); Writeln(b); Writeln(c); Write('Моя первая программа !');

Writeln(32*a+Sin(x)); b:=32*a+Sin(x); Writeln(b);

Writeln(a:5:2);

Writeln(i:8);

а:=5. 02; Writeln('а=', a:6:2); а= _ _ 5. 02

n:= '116'; s:= 'Школа N'; Writeln(s:7, n:6);

Школа N _ _ _ 116

Writeln('а=', a:-8:2); а=5. 02

Writeln('а=', a);

 

a=5.

0200000000E+00

{тип Real, расчет без сопроцессора}

a=5.

02000000000000E+0000

{тип Double, расчет с сопроцессором}

Пример программы, выполняющей различные операции с переменными разного

типа.

 

 

Program N_1;

{работа с переменными разного типа}

var x, y, z : real; x0, y0: byte;

{описание типов переменных}

x1, y1, z1: integer; xb, yb, zb: boolean;

 

 

c1, c2, c3: char; s1, s2, s3: string;

 

 

Begin

 

 

x := 5. 8;y:= 3. 4; x1:= 43;y1:= 28;

{присвоение значений}

c1:= 'Z'; c2:= 'S'; x0:= 65;

 

 

xb:= True; yb:= False;

 

 

s1:= 'Иванов _ '; s2:= 'Петров _ ';

 

 

Writeln('Математические операции:');Z:= x+y;

{ и т. д. }

Write('x:=', x:3:1, ' _ _ y:=', y:3:1);

 

 

Writeln(' _ _ Z:= x+y;', ' _ _ z=', z:5:2);

 

 

Writeln; z1:= x1 div y1;

 

{ и т. д. }

Write('x1:=', x1:3, ' _ _ y1:=', y1:3);

 

 

Writeln(' _ _ Z1:= x1 div y1;', ' _ _ z1=', z1:2);

 

 

 

 

Writeln;

 

 

{ Пустая строка }

 

 

readln;

{ Задержка экрана до нажатия Enter }

Writeln('Логические операции:');Zb:= xb and yb;

{ и т. д.

}

Write('xb:=',

xb, ' _ _ yb:=',

yb);

 

 

 

 

 

Writeln(' _ _ Zb:= xb and yb;', ' _ _ zb=', zb);

 

 

 

 

Writeln; { Пустая строка }

 

 

 

 

 

 

readln; { Задержка экрана до нажатия Enter }

 

 

 

 

Writeln('Операции сравнения:'); Zb:= c1 > c2;

 

{ и т. д.

}

 

{ символы сравниваются по номеру ASCII кода }

Write('c1:=',

c1, ' _ _ c2:=',

c2);

 

 

 

 

 

Writeln(' _ _ Zb:= c1 > c2;',

' _ _ zb=',

zb);

Writeln;

 

 

{строки сравниваются по номеру ASCII кода первых символов}

{если первые символы совпадают,

то сравниваются вторые и т. д. }

Zb:= S1>S2;

 

 

{ и т. д.

}

 

 

Write('s1:=',

s1, ' _ _ s2:=',

s2);

 

 

 

 

 

Writeln(' _ _ Zb:= s1 > s2;',

' _ _ zb=',

zb);

 

 

 

 

Writeln;

 

 

{ Пустая строка }

readln;

{ Задержка экрана до нажатия Enter }

Writeln('Математические функции:');Z:= sin(x*Pi/180);

{ и т. д. }

Write('x:=', x:4:2);

 

 

 

 

 

 

Writeln(' _ _ Z:= sin(x*Pi/180);', ' _ _ z=', z:10:7);

 

 

 

Writeln;

 

 

{ Пустая строка }

readln;

{ Задержка экрана до нажатия Enter }

Writeln('Математические процедуры:');

Write('x1:=', x1); Inc(x1);

{ и т. д. }

Writeln(' _ _ Inc(x1);', ' _ _ x1=', x1);

Writeln;

{Пустая строка}

readln;

{Задержка экрана до нажатия Enter }

Writeln('Функции преобразования типов:'); c3:= Chr(x0); { и т. д. }

Write('x0:=', x0);

 

Writeln(' _ _ c3:=Chr(x0);',

' _ _ c3=', c3);

Readln

{ Задержка экрана до нажатия Enter }

end.

 

4.2. Операторы ввода данных с клавиатуры

Read("список переменных"); Readln("список переменных");

Write('введите значение а='); Readln(a); введите значение а= .

Readln(a); Readln(b); Readln(c); или Readln(a, b, c);

Readln(с1, с2, с3, c4); {ожидает ввода значений символьных переменных с1, с2,

с3, c4, например: "У", "Р", "А", "!" и нажатия Enter }

Writeln(с1, с2, с3, c4); выведет на экран надпись: УРА!

Пример программы возведения положительного числа “x” в степень”n”, т. е. y=xn. Расчет производится по формуле: y=en*ln(x).

Program N_2; {возведение положительного числа в степень}

Const S='введите значение'; Var n, x, y: real;

BEGIN

Writeln('Программу разработал Иванов'); Writeln('Возведение положительного числа x степень n');

Writeln(S, ' аргумента х>0'); Readln(x);

Write(S, ' показателя степени n='); Readln(n); y:=exp(n*ln(x));

Writeln('результат y=', y:10:6); writeln('Нажмите Enter'); readln; {задержка экрана до нажатия Enter}

END.

4.3. Оператор выбора

Case "параметр" Of

"список помеченных операторов" Else "оператор" End;

Пример операторов для определения порядка целого числа N от 0 до 999: case N of

0..9: writeln('однозначное'); 10..99: writeln('двузначное'); 100..999: writeln('трехзначное')

else writeln('Число "N" не входит в указанный диапазон') end;

4.4. Условный оператор

IF "условие" Then "оператор1" Else "оператор2";

Например, вычисление квадратного корня из числа "a" проводится при условии a>=0,

IF a >= 0 Then b:= Sqrt(a) Else begin WriteLn ( 'a<0' ); Readln; Halt end;

Оператор Halt прекращает выполнение программы.

Пример программы: Автобус движется по заданному маршруту с объявлением названий остановок. Зная остановку, на которой надо выходить, вы принимаете определенное решение: Выхожу, либо - Еду дальше, которое выводится на экран.

PROGRAM octanovka;

 

 

 

CONST A1= 'Бульвар Славы'; A2= 'Горсовет';

{ A1, A2, A3,

A4 - названия }

A3= 'Спортивная'; A4= 'УГАТУ';

{ остановок }

 

Y= 'Выхожу';

N= 'Еду дальше';

 

 

var A, A0 : String;

 

{ A0 - текущая остановка }

BEGIN

writeln('Ввести нужную остановку из списка:');

writeln(A1:15, A2:15, A3:15,

A4:15);

Writeln; readln(A); Writeln;

{ A - нужная остановка }

IF (A<>A1) and (A<>A2) and (A<>A3) and (A<>A4)

then begin

 

Writeln('Нет такой остановки'); readln; Halt end;

A0:= A1;

 

 

{объявление остановки }

IF A = A0

then begin writeln( Y, A:15); readln; Halt end

else writeln( A0:-15, N:12);

A0:= A2;

 

 

{объявление остановки }

IF A = A0

 

then begin writeln( Y, A:15); readln; Halt end

else

writeln( A0:-15, N:12);

A0:= A3;

 

 

{объявление остановки }

IF A = A0

then begin writeln( Y, A:15); readln; Halt end

else

writeln( A0:-15, N:12);

A0:= A4;

 

 

{объявление остановки }

writeln( Y,

A:15);

readln;

END.

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