Задан массив вещественных чисел от 0 до 20. Отрицательные числа заменить их модулями , а...

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

Задан массив вещественных чисел от 0 до 20. Отрицательные числа заменить их модулями , а положительные округлить до целых.


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

Мне интересно, как можно найти отрицательные числа в диапазоне от 0 до 20?

0

Мне тоже это было интересно, большее спасибо за ответ

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

PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018

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

begin

 var a := SeqRandomReal(ReadInteger('n='), 0, 20)

     .Select(t -> Round(t, 2)).ToArray;

 a.Println;

 a.Transform(t -> t < 0 ? Abs(t) : Round(t));

 a.Println

end.

Пример

n= 12

17 13.27 2.31 5.23 1.45 12.1 18.75 4.51 0.22 14.06 9.18 19.06

17 13 2 5 1 12 19 5 0 14 9 19

(654k баллов)
0 голосов

//PascalABC.NET v3.3 1633

const n = 10;

var arr: array [1..n] of real;

begin

 var min:=0;

 var max:=20;

 for var i:=1 to n do

   arr[i]:=random()*(max - min) + min;

 writeln('Исходный массив:');

 arr.PrintLn(', ');

 

 for var i:=1 to n do

   if arr[i] < 0 then

     arr[i]:=Abs(arr[i])

   else

     arr[i]:=Round(arr[i]);

 

  writeln('Конечный массив:');

  arr.Print(', ');

end.

(4.3k баллов)