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

Дан массив, содержащий 2015 неотрицательных целых чисел. ямой называется не крайний элемент массива, который меньше обоих своих соседей. необходимо найти в массиве самую глубокую яму, то есть яму, значение которой минимально. если в массиве нет ни одной ямы, ответ считается равным 0. например, в массиве из шести элементов, равных соответственно 4, 9, 2, 17, 3, 8, есть две ямы – 2 и 3, самая глубокая яма – 2.

👇
Ответ:
PROFESSIONALL
PROFESSIONALL
24.11.2022
Const
N=2015;
var
a: array [1..N] of integer;
i, min: integer;

begin
min:=-1;
for i:=2 to N-1 do
if (a[i]>a[i-1]) and (a[i]<a[i+1]) and ((a[i]<min) or (min=-1)) then
min:=a[i];
Writeln(min)
end.
4,8(84 оценок)
Открыть все ответы
Ответ:
Егор4ik18
Егор4ik18
24.11.2022

Для того, чтобы в последовательности из n элементов удалить последний путем вычеркивания каждого k-го элемента, n должно быть кратно k - это и есть условие успешного удаления. Запишем его в виде n mod k = 0, где mod - операция получения остатка целочисленного деления n на k.

Если n не кратно k, то будут вычеркнуты [n / k] элементов последовательности. Здесь [ ] - обозначение операция взятия целой части числа (антье), введенное в математику К. Гауссом.

После вычеркивания [n / k] элементов, в последовательности останется n₁ = n - [n / k] элементов. Если повторять этот процесс, то либо на шаге m будет вычеркнут последний элемент, либо количество элементов станет меньше k.

Рассмотрим приведенный в задании пример.

n=13, k=2

n mod k ≠ 0, поэтому полагаем n₁ = n - [n / k] = 13 - [13 / 2] = 13 - 6 = 7

n₁ mod k ≠ 0, поэтому полагаем n₂ = n₁ - [n₁ / k] = 7 - [7 / 2] = 7 - 3 = 4

n₂ mod k = 0, следовательно на третьем шаге вычеркивания мы получим нужный результат.

PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018Внимание! Если программа не работает, обновите версию!

begin

 var (n, k) := ReadInteger2;

 var m := 0;

 while n >= k do

 begin

   if n mod k = 0 then

   begin

     Print(m + 1);

     exit

   end

   else

   begin

     n := n - n div k;

     Inc(m)

   end

 end;

 Print(0)

end.

Пример13 23

Вводить данные можно как через пробел, так и построчно

4,7(88 оценок)
Ответ:
ивашка9
ивашка9
24.11.2022
ответ:1)

var tf : real;

begin

 for tc : integer := 0 to 25 do  

 begin

   tf := (9 * tc) / 5 + 32;

   println(tc, '|', tf);

 end;

end.

2)

var a, sum : real;

begin

 readln(a);

 while a <> 0 do

 begin

   sum += a;

   readln(a);

 end;

 print(sum);

end.

3)

var b : real;

var a : real := ;  //введешь нужное тебе число

var n : integer := ;  //введешь нужное тебе число

begin

 b := a;

 for i: integer := 1 to n-1 do

 begin

   b := (a + i) * b

 end;

 print(b)

end.

4)

var v, p : real;

begin

 readln(v);

 for i : integer := 1 to 12 do

 begin

   v += v/20;

   println(i,v)

 end;

end.

4,5(79 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ