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

Дан массив A(30), заполненный случайным образом в диапозоне [0,4].
Найти:
1) Второй по значению максимальный элемент и его номер.
2)Сдвигать массив вправо до тех пор, пока на первом месте не окажется ноль.

👇
Открыть все ответы
Ответ:
IvanMalin1
IvanMalin1
07.02.2020

ответ на Python:

a = list(map(int,input().split())) #Принимаем массив из одной строки

s = 0 #Счётчик

for i in range(len(a)-2): #Проход по массиву до пред-предпоследнего элемента

   if a[i] == (a[i+1] + a[i+2]) / 2: # Проверяем, является ли этот элемент средним арифметическим 2-х следующих

       s += 1 #Прибавляем счётчик

print(s) #Выводим ответ

Или вот:

a = list(map(int,input().split()))

s = 0

for i in range(len(a)-2):

   a1 = a[i+1]

   a2 = a[i+2]

   if a[i] == (a1 + a2) / 2:

       s += 1

print(s)

Объяснение:

4,4(12 оценок)
Ответ:
SofiaBlack17
SofiaBlack17
07.02.2020
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

function Res(a:integer;op:char;b:integer):integer;
begin
  case op of
  '+':Result:=a+b;
  '-':Result:=a-b;
  '*':Result:=a*b;
  '/':Result:=a div b
  end
end;

begin
  var s:=ReadlnString('Вводите:');
  var p:=s.Matches('(((\-)?\d+)|[\+\-\*\/])').ToArray;
  if p.Count<>5 then Writeln('Ошибка!')
  else begin
    var op1:=p[1].Value[1];
    var op2:=p[3].Value[1];
    var a:=p[0].Value.ToInteger;
    var b:=p[2].Value.ToInteger;
    var c:=p[4].Value.ToInteger;
    if (op1 in ['+','-']) and (op2 in ['*','/']) then
      Writeln('='+Res(Res(b,op2,c),op1,a))
    else Writeln('='+Res(Res(a,op1,b),op2,c))
    end
end.

Примеры
Вводите: -4--3--2
=1
Вводите: 12*3+45
=81
Вводите: 45+12*3
=81
Вводите: -26/13--5
=3
4,4(64 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ