Как Удвоить все отрицательные нечётные числа в паскале ( Массив)

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

Как Удвоить все отрицательные нечётные числа в паскале ( Массив)


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

Дано натуральное число N и последовательность целых чисел a1 a2 an заданные случайным образом из диапазона [-35;25]. Удвоить все отрицательные числа нечётные этой последовательности. Решить задачу для n=10

0

Задачку решите пожалуйста

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

Вообщем решил данную проблему 

(904 баллов)
0

я вижу, что вы уже исправили. НО! условие на нечетность   только в остатке 1!!! А вы допускаете любое отличное от нуля, а вдруг это будет 2 или 4?

0

var a: array [1..10] of real; // возьмем массив из 10 чисел
    i,x      :byte;
begin
  randomize;
  for i:=1 to 10 do //заполняем исходный массив случайными числами (до 10)
  begin
    a[i]:=random(10)-10;
    write (' ' ,a[i]);
  end;
  writeln ();
  for i:=1 to 10 do
  begin
        if (a[i] < 0) and (a[i] <> 0) then
          a[i]:=a[i]*a[i];
          writeln ('[ ', i, ' ]', ' Результат удвоения: ',a[i]);
  end;
end.

0

Если в рандоме указать не - 10 а -5 то в массиве будут и положительные числа. Код их трогать не будет, а будет удваивать только отрицательные нечетные

0

Ахаха я лооол, вы были правы

0

Прошу прощение, ошибку допустил ^^

0

var a: array [1..10] of integer; // возьмем массив из 10 чисел
    i,x      :byte;
begin
  randomize;
  for i:=1 to 10 do //заполняем исходный массив случайными числами (до 10)
  begin
    a[i]:=random(10)-5;
    write (' ' ,a[i]);
  end;
  writeln ();
  for i:=1 to 10 do
  begin
        if (a[i] < 0) and (a[i] mod 2 <> 0 ) then
          a[i]:=a[i]*a[i];
          write ( ' ',a[i]);
  end;
end.

0

Вот так будет правильно

0

в цикле УДВОЕНИЕ, а не возведение во вторую степень. Правильно в задаче   a[i]:=a[i]*2

0

Поспешишь - людей насмешишь =(

0

Решите лучше чуть ниже задачку. Я её написал под другой коментарий, пожалуйста. По вашим решениям всё равно что то не выходит

0 голосов

Если просто условие, то вот оно:
if (a[i]<0) AND (a[i] mod 2 =1) then a[i]:=a[i]*2

(6.9k баллов)
0

Кхм что то не так.
не могли бы вы помочь с полнйо задачей?
Дано натуральное число N и последовательность целых чисел a1 a2 an заданные случайным образом из диапазона [-35;25]. Удвоить все отрицательные числа нечётные этой последовательности. Решить задачу для n=10