Предмет: Информатика, автор: s74ffcsgop6o82t

Одномерный массив. Отрицательные элементы заменить максимальным элементом.

Ответы

Автор ответа: BobbyFresnel
0

// PascalABC.NET

begin

 var n := ReadInteger('n =');

 var a:= ArrRandom(n, -99, 99);

 a.Println;

 var m := a.Max;

 a.Transform(p -> p < 0 ? m : p);

 a.Print

end.


ramlshakirov05: Помоги мне
Автор ответа: LRSM
0

                                      PascalABC.NET                                       

Ответ:

  • begin
  • var a:=ArrRandom(ReadInteger('Введите размер:'),-10,10);
  • Println(a);
  • a.ForEach((x,i) -> if x<0 then a[i]:= a.Max);
  • Println(a);
  • end.

Пояснение:

ArrRandom(a,b,c) возвращает массив размера a, заполненный случайными целыми значениями в диапазоне от b до с.

Пример работоспособности:

Приложения:

ramlshakirov05: Помоги мне
LRSM: Да, забыл... просто на js пишу, а там бы a.Max обновилась бы только после foreach.
LRSM: Хехе, там приоритеты регулируются.
LRSM: "a.Max на a.Max + 1" конечно max будет каждый раз разный. А на счёт js - за чистый не ручаюсь, но на react абсолютно другая система работы, её просто неправильно будет сравнить с такими как Python или C# (в Haskell не влазил). И как я уже сказал, приоритеты выполнения настраиваются, перевычисление там конечно же есть.
Похожие вопросы
Предмет: Математика, автор: береке5
Предмет: Музыка, автор: elviratimorchanova