Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

ниже линии , откуда следует третье условие y <= 1

выше линии , что дает четвертое условие y >= sinx

4 итак, точка находится в заданной области, если все эти четыре условия выполняются одновременно; можно предположить, что в программе нужно использовать четыре вложенных условных оператора или один условный оператор, в котором четыре простых условия (отношения , , и ) связаны с помощью логической операции and («И», одновременное выполнение всех условий)

5 теперь смотрим на программу: здесь три (а не четыре!) вложенных условных оператора с простыми отношениями, поэтому явно какое-то условие не учтено; легко найти, что «забыли» условие

12 по схеме видим, что при (первое условие ложно),
а также при
(второе условие ложно) программа
вообще не выдает никакого сообщения, то есть,
работает неправильно; таким образом, координаты любой точки, для которой
или , могут быть указаны в ответе как пример
набора входных данных, при которых программа работает
неправильно

15 решение формулируется так: «точка принадлежит области, если выполняются одновременно 4 приведенных выше условия, а иначе – не принадлежит»; а вот реализация на Паскале (приведем программу-ответ целиком):

var x, y: real;

begin

readln(x, y);

pi:= 3.14

if (x >= 0) and (x <= pi/2) and (y <= 1) and (y >= sin(x)) then

write('принадлежит')

else write('не принадлежит');

end.

здесь использовано сложное условие, в котором 4 отношения связаны операциями and («И», требуется одновременное выполнение всех условий)

С2 Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от 0 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм, позволяющий найти и вывести минимальное значение среди элементов массива, которые имеют чётное значение и не делятся на три. Гарантируется, что в исходном массиве есть хотя бы один элемент, значение которого чётно и не кратно трем. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но использовать все описанные переменные не обязательно.

НЕ нашли? Не то? Что вы ищете?

Паскаль

Бейсик

N = 20;

var

a: array [1..N] of integer;

i, j, min: integer;

begin

for i := 1 to N do

readln(a[i]);

end.

N = 20

DIM A(N) AS INTEGER

DIM I, J, MIN AS INTEGER

FOR I = 1 TO N

INPUT A(I)

NEXT I

END

В качестве ответа вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Borland Pascal 7.0) или в виде блок-схемы. В этом случае вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на естественном языке).

Краткая теория. в условных операторах можно использовать сложные условия, которые строятся из простых отношений (<, <=, >, >=, =, (<> - не равно)) с помощью логических операций not («НЕ», отрицание), and («И», одновременное выполнение всех условий) и or («ИЛИ», выполнение хотя бы одного из двух условий). В сложном условии сначала выполняются действия в скобках, потом – not, затем – and, затем – or и, наконец, отношения.
Содержание верного ответа

На языке Паскаль

На языке Бейсик

N = 20;

var

a: array [1..N] of integer;

i, j, min: integer;

begin

for i := 1 to N do

readln(a[i]);

min := 1000;

for i:=1 to N do

if (a[i] mod 2=0) and (a[i] mod 3<>0)

and (a[i]<min) then

min := a[i];

writeln(min);

end.

N = 20

DIM A(N) AS INTEGER

DIM I, J, MIN AS INTEGER

FOR I = 1 TO N

INPUT A(I)

NEXT I

MIN = 1000

FOR I = 1 TO N

IF (A(I) MOD 2 = 0) AND

(A(I) MOD 3 <> 0) AND (A(I) < MIN) THEN

MIN = A(I)

END IF

NEXT I

PRINT MIN

END

Задачи ЕГЭ C2

Краткая теория. в условных операторах можно использовать сложные условия, которые строятся из простых отношений (<, <=, >, >=, =, (<> - не равно)) с помощью логических операций not («НЕ», отрицание), and («И», одновременное выполнение всех условий) и or («ИЛИ», выполнение хотя бы одного из двух условий). В сложном условии сначала выполняются действия в скобках, потом – not, затем – and, затем – or и, наконец, отношения.

Задача 1. Поиск максимального элемента массива a[i]. Заполнение массива a[i] генератором случайных чисел от 0 до 50

QBasic

Pascal

CLS

RANDOMIZE TIMER

N = 10

DIM A(1 TO N) AS INTEGER

REM Заполнение массива А(10)

FOR i = 1 TO N

A(i) = INT(RND(1) * 50 + 1)

PRINT "A("; i; ")="; A(i)

NEXT i

REM Поиск max

max = A(1)

FOR i = 2 TO N

IF A(i) > max THEN

max = A(i)

END IF

NEXT i

PRINT "max = "; max

END

var i, max: integer;

a: array[1..10] of integer;

Begin

{Заполнение массива a[i] генератором случайных чисел от 0 до 50 }

Randomize;

for i:=1 to 10 do a[i]:=Random(50);

for i:=1 to 10 do write(a[i]:5);

writeln;

max:=a[1];

for i:=2 to 10 do

if a[i]>max then

max:=a[i];

writeln(max);

readln;

End.

Задача 2. Поиск минимального элемента массива a[i] и его номера

CLS

INPUT "N="; N

DIM A(1 TO N) AS INTEGER

REM Заполнение массива А(10)

FOR i = 1 TO N

PRINT "A("; i; ")=";

INPUT A(i)

NEXT i

REM Поиск min

min = A(1)

k = 1

FOR i = 2 TO N

IF A(i) < min THEN

min = A(i)

k = i

END IF

NEXT i

PRINT "min = "; min

PRINT "номер элемента  = "; k

END

var i, min: integer;

a: array[1..10] of integer;

Begin

{Заполнение массива a[i] генератором случайных чисел от 0 до 50 }

Randomize;

for i:=1 to 10 do a[i]:=Random(50);

for i:=1 to 10 do write(a[i]:5);

writeln;

min:=a[1];

k=1;

for i:=2 to 10 do

begin

if a[i]<min then

begin

min:=a[i];

k:=i;

end;

end;

writeln(min, k);

readln;

End.

Задача 3. Напишите программу, которая в последовательности целых чисел определяет количество чётных чисел, кратных 7. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа по модулю не превышаютПрограмма должна вывести одно число: количество чётных чисел, кратных 7.

Пример работы программы:

Входные данные

Выходные данные

–32

14

17

0

1

QBasic

Pascal

CLS

REM A – введенное с клавиатуры число;

REM k - количество чётных чисел, кратных 7

DIM k, A AS INTEGER

k = 0

INPUT A

REM Выполняются операторы, пока условие A<>0 верно

WHILE A <> 0

IF (A MOD 2 = 0) AND (A MOD 7 = 0) THEN

k = k + 1

END IF

INPUT A

WEND

PRINT k

END

{ A – введенное с клавиатуры число;

k - количество чётных чисел, кратных 7}

var a, answer: integer;

begin

answer:=0;

readln(a);

{Выполняются операторы, пока условие A<>0 верно}

while a<>0 do

begin

if (a mod 2 = 0) and (a mod 7 = 0) then

answer := answer + 1;

readln(a);

end;

writeln(answer)

end.

Задача 4. Напишите эффективную программу, которая по двум данным натуральным числам a и b, не превосходящим 30000, подсчитывает количество четных натуральных чисел на отрезке [a, b] (включая концы отрезка). Программа получает на вход два натуральных числа a и b, при этом гарантируется, что 1 ≤ a b ≤ 30000. Проверять входные данные на корректность не нужно. Программа должна вывести одно число: количество четных чисел на отрезке [a, b]. Пример работы программы:

Входные данные

Выходные данные

10

20

6

REM A,B – введенные с клавиатуры числа; k - количество чётных чисел

DIM A, B AS INTEGER

DIM i, k AS INTEGER

INPUT A, B

k = (B - A) \ 2

IF (B mod 2 = 0) or (A mod 2 = 0) then

k = k + 1

END IF

PRINT k

END

Var a, b, answer: integer;

begin

read(a, b);

answer := (b - a) div 2;

if (b mod 2 = 0) or (a mod 2 = 0) then

answer := answer + 1;

writeln(answer)

end.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6