Var a:array[1..5] of integer; i,Max,c,n,f:integer; procedure ho; begin if a[i]>Max then begin Max:=a[i]; c:=i; end; end;
begin for i:=1 to 5 do begin a[i]:= random(15)+2; write(a[i],' '); end; Max:=a[1]; c:=1; for i:=1 to 5 do ho; writeln; writeln('Максимум: ',max); f:=c; if f=1 then begin max:=a[2]; for i:=2 to 5 do ho; writeln('Вторичный максимум: ',max); exit; end; if f<5 then begin Max:=a[f+1]; for i:=f+1 to 5 do ho; n:=max; end; if f>1 then begin Max:=a[1]; c:=f; for i:=1 to c-1 do ho; if max>n then writeln('Вторичный максимумì: ',max); if max<n then writeln('Вторичный максимум: ',n); end; end.
Хорошо, давай разберем каждое условие по отдельности.
а) Каждое из чисел а и в больше 100.
Используем оператор "и" (AND) для проверки двух условий: а > 100 и в > 100.
То есть, условие будет выглядеть так: (а > 100) и (в > 100).
б) Только одно из чисел а и в четное.
Используем оператор "исключающее или" (XOR), чтобы проверить, что только одно из чисел а и в является четным.
То есть, условие будет выглядеть так: ((а четное) и (в нечетное)) или ((а нечетное) и (в четное)).
в) Хотя бы одно из чисел а и в положительно.
Используем оператор "или" (OR), чтобы проверить, что хотя бы одно из чисел а и в положительно.
То есть, условие будет выглядеть так: (а > 0) или (в > 0).
г) Каждое из чисел а, в, с кратно трем.
Проверяем каждое из чисел на кратность трем, используя оператор "и" (AND).
То есть, условие будет выглядеть так: (а кратно 3) и (в кратно 3) и (с кратно 3).
д) Только одно из чисел а, в и с меньше 50.
Используем оператор "исключающее или" (XOR) для проверки, что только одно из чисел а, в и с меньше 50.
То есть, условие будет выглядеть так: ((а < 50) и (в >= 50) и (с >= 50)) или ((а >= 50) и (в < 50) и (с >= 50)) или ((а >= 50) и (в >= 50) и (с < 50)).
е) Хотя бы одно из чисел а, в, с отрицательно.
Используем оператор "или" (OR), чтобы проверить, что хотя бы одно из чисел а, в, с отрицательно.
То есть, условие будет выглядеть так: (а < 0) или (в < 0) или (с < 0).
Для решения каждого из этих условий, необходимо изначально знать значения переменных а, в и с. Подставьте эти значения в каждое из условий и проанализируйте результат.
1. Ввести первое число.
2. Ввести второе число.
3. Вычислить произведение двух чисел.
4. Проверить, является ли произведение отрицательным.
5. Если произведение отрицательное, умножить его на -2.
6. Вывести результат.
7. Если произведение не отрицательное, увеличить его в 3 раза.
8. Вывести результат.
9. Завершить.
Блок-схема:
```
+---------------------+
| Ввести первое число |
+---------------------+
|
V
+---------------------+
| Ввести второе число |
+---------------------+
|
V
+------------------+
| Вычислить |
| произведение |
+------------------+
|
V
+-----------------+
| Проверить, |
| отрицательное |
| ли произведение |
+-----------------+
|
V
/-------------------\
/ \
Yes/ \No
/ \
V V
+-------------------+ +--------------+
| Умножить на -2 | | Увеличить в |
| и вывести | | 3 раза и |
| результат | | вывести |
+-------------------+ | результат |
+--------------+
|
V
Завершить
```
Объяснение школьнику:
1. Сначала нужно ввести первое число.
2. Затем нужно ввести второе число.
3. После этого мы можем вычислить произведение этих двух чисел.
4. Теперь нужно проверить, является ли полученное произведение отрицательным или положительным.
5. Если произведение отрицательное, мы умножим его на -2 и выведем результат на экран.
6. Если произведение положительное, мы увеличим его в 3 раза и также выведем результат на экран.
7. В конце мы завершаем выполнение алгоритма.
Таким образом, в зависимости от того, отрицательное ли произведение или нет, мы применяем соответствующее действие и выводим результат.
a:array[1..5] of integer;
i,Max,c,n,f:integer;
procedure ho;
begin
if a[i]>Max then
begin
Max:=a[i];
c:=i;
end;
end;
begin
for i:=1 to 5 do
begin
a[i]:= random(15)+2;
write(a[i],' ');
end;
Max:=a[1];
c:=1;
for i:=1 to 5 do
ho;
writeln;
writeln('Максимум: ',max);
f:=c;
if f=1 then
begin
max:=a[2];
for i:=2 to 5 do
ho;
writeln('Вторичный максимум: ',max); exit;
end;
if f<5 then
begin
Max:=a[f+1];
for i:=f+1 to 5 do
ho;
n:=max;
end;
if f>1 then
begin
Max:=a[1];
c:=f;
for i:=1 to c-1 do
ho;
if max>n then
writeln('Вторичный максимумì: ',max);
if max<n then
writeln('Вторичный максимум: ',n);
end;
end.