Как изменить знак максимального по модулю элемента массива. Pascal. Help!!!!!!

0 голосов
81 просмотров

Как изменить знак максимального по модулю элемента массива. Pascal. Help!!!!!!


Информатика (23 баллов) | 81 просмотров
0

Max:=-Max

Дано ответов: 2
0 голосов
Правильный ответ

PascalABC.NET 3.4.2, сборка 1837 от 11.10.2018

Внимание! Если программа не работает, обновите версию!

begin

 var a := ArrRandom(ReadInteger('n='), -50, 50);

 a.Println;

 var i := a.Select(t -> Abs(t)).ToArray.IndexMax;

 a[i] := -a[i];

 a.Println

end.


image
(654k баллов)
0

Ваше "попроще" - это на самом деле означает подлиннее. И еще: "с точек" начинают, а не заканчивают ими. И если вы с них не начали, то уже и не будете с ними работать: ваша учительница, скорее всего, не знает возможностей этой версии Паскаля. Но я не вижу причины, почему нужно дважды дать одну и ту же работу. Вы не указали ни версии Паскаля, ни особенностей того, как вы пишете программы, так что это уже Ваша вина.

0

в школах лямбды вряд ли преподают

0

Спасибо за программу, я без наездов итд,

0

у нас пока массивы

0

и наверное статические?

0

угу

0

Преподают. В восьмом классе. Я знаю такие школы. Не в полном объеме, конечно, но простые лямбды - почему нет? Кто Питон учит - тоже лямбды им дают.

0

Лямбду написать даже проще, чем функцию.

0

И главное: я бы не стал писать тут лямбды, если бы своими глазами не видел восьмиклассников, вовсю подсказывающих преподавателю на занятии, как писать лямбду.

0

akrom: я всего-то лишь хотел, чтобы Вы поняли, как следующий раз ставить вопрос, чтобы получить ожидаемый ответ.

0 голосов

Решение в стиле турбо-паскаля или фрипаскаля, со статическим массивом


image
(2.5k баллов)