Решите плиз В массиве а1, а2, а3 … a10 вместо отрицательных элементов запи-сать их...

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

Решите плиз
В массиве а1, а2, а3 … a10 вместо отрицательных элементов запи-сать их модули и вывести на экран полученный массив. Найти сумму всех элементов преобразованного массива.


Информатика (34 баллов) | 30 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

1.
const n=10;
var a:array[1..n] of integer;
s,i:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do begin
 a[i]:=random(51)-25;
 write(a[i]:4);
 end;
writeln;
s:=0;
for i:=1 to n do
 if a[i]<0 then a[i]:=-a[i];<br>writeln('Полученный массив:');
s:=0;
for i:=1 to n do begin
 write(a[i]:4);
 s:=s+a[i];
 end;
writeln;
writeln('s = ',s);
end.

Пример:
Исходный массив:
   3   2  16  18 -16 -20 -15  -8 -23  17
Полученный массив:
   3   2  16  18  16  20  15   8  23  17
s = 138

2.
begin
  var a:=ArrRandom(ReadInteger('n='),-25,25);
  a.Println;
  a:=a.Select(x->x<0?-x:x).ToArray;<br>  a.Println;
  Writeln('Сумма равна ',a.Sum);
end.

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

Program f1;
var a:array [1..10] of integer;
i:integer;
begin
for i:=1 to 10 do begin
readln(a[i]);
if a[i]<0 then a[i]:=abs(a[i]);<br>end;
for i:=1 to 10 do 
s:=s+a[i];
writeln(s);
for i:=1 to 10 do 
writeln(a[i]);
end.

(1.2k баллов)