Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BPlab (работы по паскалю).pdf
Скачиваний:
33
Добавлен:
01.06.2015
Размер:
1.04 Mб
Скачать

11 –

набор_значений1: оператор1; набор_значений2: оператор2;

. . .

набор_значенийN: операторN; else оператор

end

Вычисляется выражение, и его значение сравнивается с наборами значений. Если оно содержится в одном из наборов, выполняется соответствующий оператор. В противном случае выполняется оператор else -части. else -часть может отсутствовать.

Ввод данных с клавиатуры

readln(имя_переменной1,имя_переменной2,...)

Переменным присваиваются значения, набираемые на клавиатуре. Ввод продолжается до тех пор, пока не будет введено значение последней переменной списка. Разделитель между вводимыми числовыми значениями – пробел.

Вывод данных на экран

writeln(выражение1,выражение2,...)

Значения выражений вычисляются и выводятся последовательно в текущую строку экрана. После вывода всех значений курсор переводится в начало следующей строки.

Пример выполнения

Даны действительные числа a, b, c (a<>0). Выяснить, имеет ли уравнение ax2+bx+c=0 действительные корни. Если имеет, найти их, если нет – выдать сообщение.

program Primer; var A,B,C,D:real; begin

writeln('введите через пробел A,B,C'); readln(A,B,C);

D:=B*B-4*A*C; if D<0 then

writeln('корней нет (D=',D,')') else if D=0 then

writeln('корень:',-B/(2*A)) else {if D>0}

writeln('корни:', (-B+sqrt(D))/(2*A), ',',(-B-sqrt(D))/(2*A)); end.

Варианты заданий

Во всех заданиях задано вещественное x. Необходимо вычислить:

1)

 

 

 

x 4, если x > 2,

 

 

2

3x 1, если x < 2,

 

f (x) = x

 

 

 

 

 

 

 

10, если x = 2;

 

 

 

 

 

 

2)

25 1/ x,

если1/ x > 2x 3,

 

 

 

x

2

3,

если1/ x < 2x 3,

 

f (x) =

 

 

 

 

 

 

 

20,

если1/ x = 2x 3;

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

3)

x x

 

,

если 3 <

x

<10,

f (x) =

 

2x 3,

 

если

 

x

 

10,

 

 

 

 

 

 

3x

2

+4,

если

 

x

 

10;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12 –

 

4)

 

 

 

x3

4,

если x

2

 

4 >1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

f (x) =

 

x

 

 

 

3,

если x

 

4 <1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

+ 4,

если

x

2

4 =1;

 

 

 

 

 

 

 

 

 

 

3x

 

 

 

 

 

 

 

 

 

 

 

 

 

5)

x

 

/(2x +1),

 

если 2x +1 > 0,

 

 

 

 

 

 

 

 

 

 

 

 

2

 

+3x

+1,

 

если 2x +1 < 0,

 

 

 

 

 

 

 

 

 

 

f (x) = x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,

 

если

2x +1 = 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

+ 4x 11,

если остаток от деления x на 8 меньше 3,

 

 

 

 

 

6)

x

 

 

 

 

 

 

 

f (x) = 3x 4,

 

 

если если остаток от деления x на 8 больше3,

 

 

 

 

 

 

 

 

6,

 

 

 

 

если

если остаток от деления x на 8 равно 3;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

+3x

1,

 

если x <1/ x,

 

 

 

 

 

 

 

 

 

7)

x

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) =

 

 

x 2,

 

если x >1/ x,

 

 

 

 

 

 

 

 

 

 

 

 

 

5,

 

 

 

если

 

x =1/ x;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

+ x +1,

если x < 0.5,

 

 

 

 

 

 

 

 

 

8)

x

 

 

 

 

 

 

 

 

 

 

 

 

f (x) =

4x +5,

 

если x = 0.5,

 

 

 

 

 

 

 

 

 

 

 

x

3

 

 

+10, если

 

x > 0.5;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9)

x +3,

 

если 4 < x2

 

 

x

 

< 50,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

1, если x

 

x

 

4,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,

 

 

 

если

x

2

 

 

x

 

50;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

/ 3

+1,

если

2 < x

2

< 5,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10)

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) =

 

 

 

 

 

x 3,

если x2

 

 

2,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x + 4,

если

 

x

2

 

 

5;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11)

 

 

 

 

 

 

 

x + 4,

если x / 4 < 2,

 

 

 

 

 

 

 

 

 

f (x) =

 

 

 

2

3x +6,

если x / 4 = 2,

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

3

1,

если

 

x / 4 > 2.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Контрольные вопросы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.

Можно ли выполнять операцию деления (/) над переменными целого типа ?

2. Какого типа будет результат выражения 15/4 ?

 

 

 

 

3.

Какие из приведенных ниже записей вещественных чисел являются синтаксически некор-

 

ректными и почему?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.

 

 

 

 

 

 

 

 

 

–6.1

0.0

 

.456

0Е–2

0.1Е–5

 

 

4.

Какие из

 

 

 

–5.3Е4

 

 

 

 

 

 

 

2,1

+2.3Е+3

–71

0.31

.0

 

 

приведенных

ниже записей являются синтаксически корректными с точки зрения

 

языка Pascal?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'А'<'С'

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'1'>'9'

 

FALSE<TRUE

'А'<'В' and 1<2

 

 

 

 

 

 

 

'0' or '9'

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'1'+'9'

 

 

1>'9'

(D'>'G') and (1<2)

 

5.

Какие из приведенных ниже выражений:

 

 

 

 

 

 

 

 

I+SQRT(J)

 

 

 

 

 

 

I*I+J*J+2*K/2

X<Y

SIN(X)+2*COS(Y)+Z

 

 

являются

синтаксически корректными, если известно, что

I,J,K:integer;

 

X,Y,Z:real;

 

A,B:boolean ? Определить для них тип результата.

6.

Какие из приведенных ниже операторов присваивания:

 

 

X:=Y+SIN(SIN(Z));

 

A:=(X<Y)or B and(I<>J);

X:=I+J-B;

I:=I+K/J;

 

являются синтаксически корректными, если известно, что I,J,K:integer; X,Y,Z:real;

A,B:boolean ?

7.Записать приведенные ниже высказывания в виде выражений: а) значение Апринадлежит интервалу (8,33); б) значение Ане принадлежит отрезку [-2,0];

в) значение Апринадлежит одному из отрезков: [-5,-4], [0,2];

г) точка с координатами (X, Y) лежит внутри круга с центром в начале координат и ра-

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