Дан массив x(7). найти номера нечётных элементов, стоящих ** чётных местах (паскаль)

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

Дан массив x(7). найти номера нечётных элементов, стоящих на чётных местах (паскаль)


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

А мне еще более лениво, поэтому решение на PascalABC.Net 3.2
Зачем напрягаться, если автор жадный и задачу за 5 баллов ставит?

begin
  var x:=ArrRandom(7,-20,20); x.Println;
  x.Select((e,i)->(e,i)).Where(a->(a[0] mod 2<>0) and (a[1] mod 2=0)).
    Select(a->a[1]+1).Println
end.

Пример
20 9 13 -9 7 -8 -6
3 5

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

Мне лениво каждый раз вводить значения от руки, поэтому массив заполняется рандомно (в задаче нет четкого указания) но если нужен ввод с клавы, его нетрудно заменить:
вместо
     A[i]:=random(20); 
     write(A[i]:4) 
надо
     readln (A[i])
------------------------------------------------------

program aaa;
var A: array[1..7] of integer; i: byte;
begin  
  randomize;  //запускаем генератор случайных чисел
  
  // формируем и одновременно выводим массив  
  writeln ('Исходный массив:');
  for i:=1 to 7 do
    begin
      A[i]:=random(20);  //рандомное значение 
      write(A[i]:4)  //вывод массива
    end;
  writeln;
  
  //проверяем условие и выводим номера нужных элементов:
  writeln ('номера нечётных элементов, стоящих на чётных местах :');
  writeln;
  for i:=1 to 7 do
   if ((i mod 2)=0) and ((A[i] mod 2)=1)
     then writeln (i:3) 
end.
-----------------------------------------------

Результат работы программы:

Исходный массив:
  13  16   7  11  11   5  17

номера нечётных элементов, стоящих на чётных местах :
  4
  6

(3.9k баллов)