Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MET1.doc
Скачиваний:
18
Добавлен:
16.11.2019
Размер:
1.02 Mб
Скачать

Примеры

  1. Напишите программу вычисления действительных корней квадратного уравнения ax2 + bx +c = 0. Если действительных корней нет, сделайте соответствующее сообщение.

PROGRAM KOR;

VAR A, B, C, D, X1,X2:REAL;

PROCEDURE KOREN;

BEGIN

WRITELN('ВВЕДИТЕ КОЭФФИЦИЕНТЫ A, B,C');

READLN(A, B, C); D:=B*B-4*A*C;

IF D<0 THEN WRITELN ('КОРНЕЙ НЕТ')

ELSE BEGIN X1:=(-B-SQRT(D))/2*A;

X2:=(-B+SQRT(D))/2*A;

WRITELN('X1=',X1,'X2=',X2);

END; END;

BEGIN

KOREN

END;

2. Даны действительные числа A1 ... An, B1 ... Bm. В последовательности A1 ... An и в последовательности B1 ... Bm все элементы, следующие за элементом с наибольшим значением, замените на 0.5.

PROGRAM MASSIV1;

USES CRT;

TYPE MAS=ARRAY[1..30] OF REAL;

VAR A,B:MAS;

I,N,M:INTEGER;

PROCEDURE VVOD(VAR X:MAS; VAR K:INTEGER;CH:CHAR);

BEGIN

WRITELN(‘ Введите размерность массива‘,CH);

READLN(K);

WRITELN(‘ Введите массив‘,CH);

FOR I:=1 TO K DO READ(X[I]);

END;

PROCEDURE ZAM(VAR X:MAS; K:INTEGER);

VAR MAX:REAL;

IMAX:INTЕGER;

BEGIN

MAX:=-32000;

FOR I:=1 TO K DO

IF X[I]>MAX THEN

BEGIN

MAX:=X[I];

IMAX:=I;

END;

{замена элементов за наибольшим}

FOR I:=IMAX+1 TO K DO

X[I]:=0.5;

END;

{Процедура вывода масива}

PROCEDURE W(X:MAS; K:INTEGER;CH:CHAR);

BEGIN

WRITELN(‘Полученный массив ‘,CH);

FOR I:=1 TO K DO

WRITE(X[I]:8:3);

WRITELN; END;

BEGIN

CLRSCR;

VVOD(A,N,’A’); VVOD(B,M,’B’);

ZAM(A,N); ZAM(B,M);

W(A,N,’A’); W(B,N,’B’);

END.

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

  1. Даны четыре отрезка a, b, c, d. Для каждой тройки этих отрезков, из которых можно построить треугольник (помните, что не из каждых трех отрезков можно построить треугольник), вычислите и напечатайте площадь данного треугольника. Для вычисления площади треугольника используйте процедуру, в которой

Sтр = , p = (x +y +z)/2, где x, y, z – стороны треугольника.

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