Решите ** 4 или ** 5 9 класс,массивы Задача ** 4 Дан массив А(8) Ввод данных с...

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

Решите на 4 или на 5
9 класс,массивы
Задача на 4
Дан массив А(8) Ввод данных с клавиатуры.Найти произведение отрицательных элементов массива и кол во положительных массивов.
Задача на 5
Дан массив С(10) ВВОД данных с клавиатуры . Все положительные элементы возвести в квадрат .все отрицательные элементы заменить на число 20.


Информатика (176 баллов) | 32 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
1. Современное решение

// PascalABC.NET 3.2, сборка 1367 от 20.12.2016
// Внимание! Если программа не работает, обновите версию!

begin
  var c:=ReadArrInteger('Введите элементы массива: ',10);
  c.Transform(x->x>0?x*x:x=0?x:20); c.Println
end.

Пример
Введите элементы массива:  5 11 -7 0 3 -12 -8 1 9 -2
25 121 20 0 9 20 20 1 81 20

2. Традиционное "школьное" решение

const
  n=10;
var
  i:integer;
  c:array[1..n] of integer;
begin
  Write('Введите элементы массива: ');
  for i:=1 to n do Read(c[i]);
  for i:=1 to n do
    if c[i]>0 then c[i]:=sqr(c[i])
    else
      if c[i]<0 then c[i]:=20;<br>  for i:=1 to n do Write(c[i],' ');
  Writeln
end.

3. Улучшенное "школьное" решение

const
  n=10;
var
  i,t:integer;
  c:array[1..n] of integer;
begin
  Write('Введите элементы массива: ');
  for i:=1 to n do begin
    Read(t);
    if t>0 then c[i]:=t*t
    else
      if t<0 then c[i]:=20<br>    end;
  for i:=1 to n do Write(c[i],' ');
  Writeln
end.
(150k баллов)
0 голосов

Program zadacha;varA: array[1..8] of integer;i,kolvo_pol,proiz_otr: integer;beginfor i:=1 to 8 do read(A[i]);kolvo_pol:=0;proiz_otr:=1;
for i:=1 to 8 do beginif A[i]>0 then kolvo_pol:=kolvo_pol+1;end;writeln();writeln('kolvo_pol = ', kolvo_pol);
for i:=1 to 8 do beginif A[i]<0 then proiz_otr:=proiz_otr*A[i];end;writeln('proiz_otr= ', proiz_otr);end.<br>


program zadacha;varC: array[1..10] of integer;i: integer;beginfor i:=1 to 10 do read(C[i]);writeln();
for i:=1 to 10 do beginif C[i]>0 then C[i]:=sqr(C[i]);end;
for i:=1 to 10 do beginif C[i]<0 then C[i]:=20;end;<br>for i:=1 to 10 do write(C[i]:6);end.


image
image
(1.6k баллов)