Контрольная работа по теме «Ветвление» 1.1. Определите значение переменной с после выполнения
фрагмента алгоритма, записанного в виде блок-схемы:
Примечание: знаком:= обозначена операция присваивания. В ответе
укажите одно число — значение переменной с.
1.2. Ниже приведена программа, записанная на языке
программирования Паскаль.
Program n1;
var s, k: integer;
begin
readln(s);
readln(k);
if s <= 2 * k then writeln ('ДА') else writeln ('НЕТ')
end.
Было проведено 9 запусков программы, при которых в качестве значений
переменных s и k вводились следующие пары чисел:
(1, 2); (8, 4); (6, −12); (−5, −5); (3, 11); (—10, 12); (—10, −2); (4, 1); (2, 5).
Сколько было запусков, при которых программа напечатала «ДА»?
1.3. Написать программу для решения системы
= {
− + , ≤
+ , < ≤
, >
1.4. Напишите программу, которая определяет, попала ли точка с
заданными координатами в заштрихованную область.
Входные данные
Входная строка содержит два вещественных числа – координаты точки
на плоскости (сначала x -координата, затем – y -координата).
Выходные данные
Программа должна вывести слово 'YES', если точка попала в
заштрихованную область, и слово 'NO', если не попала.
1.5. Даны три целых числа A, B, C. Определить, есть ли среди них
хотя бы одно четное и хотя бы одно нечетное.
Входные данные
Числа A, B, C, не превышающие по модулю 10000.
Выходные данные
Одна строка – "YES" или "NO"
program raf105;
const
n = 10;
var
a,b,c: array[1..n] of integer;
i,j,x,max,mpos,b1,c1: integer;
begin
write('Введите максимальное число: ');
readln(x);
writeln('Заполните массив из ',n,' элементов');
for i:=1 to n do
begin
readln(a[i]);
if a[i] > x
then begin
b1:= b1+1;
b[b1]:= a[i];
end
else begin
c1:= c1+1;
c[c1]:= a[i];
end;
end;
for i:=1 to c1 do
begin
max:= -10000;
for j:=i to c1 do
if c[j] >= max
then begin
max:= c[j];
mpos:= j;
end;
c[mpos]:= c[i];
c[i]:= max;
end;
for i:=1 to b1 do
a[i]:= b[i];
for i:=1 to c1 do
a[i+b1]:= c[i];
write('Отсортированный массив: ');
for i:=1 to n do
write(a[i],' ');
end.
PascalABC 3.4.2