М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
znanija114
znanija114
31.03.2023 09:59 •  Информатика

Даша решает задачу: отмерить 1 литр воды, имея два сосуда объемом 2 и 5 литра. (Изначально оба сосуда пусты).

Она составила программу, используя цикл "n раз":

использовать Водолей
алг
нач
· нц 3 раз
· · ?
· · ??
· кц
кон

Догадайтесь, какие команды стоят вместо знаков ? и ??.
1) перелей из А в Б
2) Наполни А
3) Наполни Б
4)перелей из Б в А

👇
Открыть все ответы
Ответ:
JulyaPark1993
JulyaPark1993
31.03.2023
Задание 1

const
  n=10;
var
  a:array[1..n] of integer;
  i,k,t,imin,imax:integer;
begin
  randomize; { инициализация датчика пчевдослучайных чисел }
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    a[i]:=random(20); { интервал [0;19] }
    Write(a[i]:4)
    end;
  Writeln;
  { 1. меняем местами правую и левую половины }
  Writeln('*** 1 ***');
  k:=n div 2;
  for i:=1 to k do begin
    t:=a[i]; a[i]:=a[i+k]; a[i+k]:=t
    end;
  for i:=1 to n do Write(a[i]:4);
  Writeln;
  { 2. Элементы массива, большие 10, заменяем на 100 }
  for i:=1 to k do
    if a[i]>10 then a[i]:=100;
  Writeln('*** 2 ***');
  for i:=1 to n do Write(a[i]:4);
  Writeln;
  { 3. Удаляем максимальный элемент, вставляем 0 перед минимальным }
  { замороченная задача ! }
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    a[i]:=random(50)+1; { интервал [1;49] }
    Write(a[i]:4)
    end;
  Writeln; Writeln('*** 3 ***');
  imin:=1; imax:=1;
  for i:=2 to n do
    if a[i]>a[imax] then imax:=i
    else
      if a[i]<a[imin] then imin:=i;
  if imin < imax then begin { минимальный встречается раньше максимального }
    { подвигаем вправо на 1 все элементы от imin и до imax }
    for i:=imax-1 downto imin do a[i+1]:=a[i];
    a[imin]:=0 { вставляем 0 в позицию imin }
    end
  else begin { минимальный встречается позже максимального }
    { подвигаем влево на 1 элементы от imax до imin -1 }
    for i:=imax to imin-1 do a[i]:=a[i+1];
    a[imin-1]:=0; { вставляем 0 в позицию перед imin }
    end;
  for i:=1 to n do Write(a[i]:4);
  Writeln  
end.

Пример
*** Исходный массив ***
  14   1  11   7  14   8  12   8   1  14
*** 1 ***
   8  12   8   1  14  14   1  11   7  14
*** 2 ***
   8 100   8   1 100  14   1  11   7  14
*** Исходный массив ***
  24  36  25   4  42  42  16  39  45  44
*** 3 ***
  24  36  25   0   4  42  42  16  39  44

Задание 2

const
  n=10;
var
  a:array[1..n] of integer;
  i:integer;
begin
  randomize; { инициализация датчика пчевдослучайных чисел }
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    a[i]:=random(20); { интервал [0;19] }
    Write(a[i]:4)
    end;
  Writeln;
  { 1. выводим нечетные элементы }
  Writeln('*** 1 ***');
  for i:=1 to n do
    if a[i] mod 2 <>0 then Write(a[i]:4);
  Writeln;
  { 2. Элементы на четных позициях обнуляем }
  i:=2;
  while i<=n do begin
    a[i]:=0;
    i:=i+2
    end;
  Writeln('*** 2 ***');
  for i:=1 to n do Write(a[i]:4);
  Writeln
end.

Пример
*** Исходный массив ***
  12   0  14   8  13  17   3   1  12  17
*** 1 ***
  13  17   3   1  17
*** 2 ***
  12   0  14   0  13   0   3   0  12   0

Замечание:
Третью подзадачу решить в такой постановке невозможно.
В самом деле, требуется удалить последний нечетный элемент, а перед третьим элементом вставить ноль. Что делать, если этим последним нечетным окажется третий?
4,5(7 оценок)
Ответ:
SkylloutBrain
SkylloutBrain
31.03.2023
Мальчик, увлекающийся лёгкой атлетикой, рассказывает о новостях спорта Лёше и Саше;
Лёгкая атлетика - не Саша и не Лёша => остаются: Юра, Виталий или Антон

Виталий не занимается лёгкой атлетикой, как Антон;
Лёгкая атлетика - не Антон и не Виталий => остался: Юра

Юра - атлет

В отличие от Саши, его сестра умеет плавать;
Саша - не плаванье => остаётся: борьба, гимнастика, гребля

Саша, гимнаст и мальчик занимающийся греблей - друзья;
Саша - не гимнастика и не гребля = > остаётся борьба

Саша - борец

Антон и Лёша никогда не посещали бассейн;
Плаванье - не Антон и не Лёша => остался: Виталий

Виталий - пловец

Лёша, в отличие от Антона, умеет держать в руках вёсла.

Лёша - гребец

Антон - гимнаст

Итого:


Юра - атлет
Саша - борец
Виталий - пловец
Лёша - гребец
Антон - гимнаст
4,6(85 оценок)
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ