Root /ArchiveAbout
()

Array 18 - 19

Array 18 - 19

На этой странице решаются задачи Array18 - Array19 из задачника Абрамяна.

Array18. Дан массив A ненулевых целых чисел размера 10. Вывести значение первого из тех его элементов AK, которые удовлетворяют неравенству AK < A10. Если таких элементов нет, то вывести 0.

var
  A: array[1..10] of integer;
  i: byte;
begin
  writeln(' Введите массив размера ', 10, ':');
  for i := 1 to 10 do
   read(a[i]);
  i := 0; //Присваивание начального значения.
  {Проверяем значения массива: }
  repeat
    inc(i) {Увеличиваем номер до тех пор, 
  пока не получим меньшее от a[10] число или не 
  выйдем за граници массива: }
  until (a[i] < a[10]) or (i > 10); 
  {Выводим результат: }
  if i < 10 then
   begin
     write(' Первый элемент, меньший a[10],');
     writeln(' имеет номер K = ', i, ':');
     write('  a[', i, '] = ', a[i])
   end
  else
   begin
     writeln(' Таких элементов нет: ');
     write('  0')
   end  
end.

**type** integer;: Представляет 32-битовое целое число со знаком.Диапазон значений: -2 147 483 648 .. 2 147 483 647

**type** integer;: Представляет 32-битовое целое число со знаком.Диапазон значений: -2 147 483 648 .. 2 147 483 647

**type** integer;: Представляет 32-битовое целое число со знаком.Диапазон значений: -2 147 483 648 .. 2 147 483 647

Array19. Дан целочисленный массив A размера 10. Вывести порядковый номер последнего из тех его элементов AK, которые удовлетворяют двойному неравенству A1 < AK < A10. Если таких элементов нет, то вывести 0.

var
  A: array[0..10] of integer;
  i: byte; 
begin
  writeln(' Введите массив размера ', 10, ':');
  write('  ');
  for i := 1 to 10 do
   read(a[i]);
  i := 10; //Присваивание начального значения.
  {Проверяем значения массива: }
  repeat
    dec(i) {Увеличиваем номер до тех пор, 
  пока не получим меньшее от a[10] число или не 
  выйдем за граници массива: }
  until ((a[i] < a[10]) and (a[i] > a[1])) or (i = 0); 
  {Выводим результат: }
  if i > 1 then
   begin
     write(' Последний элемент a[K], удовлетворяющий');
     write(' условию ', a[1], ' < a[K] < ', a[10]);
     writeln(' имеет номер K = ', i, ':');
     write('  a[', i, '] = ', a[i])
   end
  else
   begin
     write(' Элементов a[K], которые удовлетворяли бы условию ');
     writeln('a[1] < a[K] < a[10], в этом массиве нет: ');
     write('  0')
   end  
end.

**type** integer;: Представляет 32-битовое целое число со знаком.Диапазон значений: -2 147 483 648 .. 2 147 483 647

**type** integer;: Представляет 32-битовое целое число со знаком.Диапазон значений: -2 147 483 648 .. 2 147 483 647

**type** integer;: Представляет 32-битовое целое число со знаком.Диапазон значений: -2 147 483 648 .. 2 147 483 647