Сформировать одномерный целочисленный массив A размерностью N. Запросить у пользователя...

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

Сформировать одномерный целочисленный массив A размерностью N.
Запросить у пользователя индекс k и поменять местами элемент A[k-1] и
A[k+1]. Вывести на экран исходный и итоговый массивы. Если k = 1 или N –
вывести сообщение об ошибке.


Информатика (53 баллов) | 42 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Const n = 10;
var
  a:array[1..n]of integer;
i,k,temp:integer;

begin
  for i:=1 to n do a[i]:=random(21) - 10;
  repeat
    writeln('Введите k (k<>1 и k<>10)');
    readln(k);
    if (k=1) or (k=n) then writeln('Ошибка, повторите ввод');
  until (k<>1) and (k<>n);
  for i:=1 to n do write(a[i]:4);writeln;
  temp:=a[k-1];a[k-1]:=a[k+1];a[k+1]:=temp;
  for i:=1 to n do write(a[i]:4);  
end.

Тестовое решение:
Введите k (k<>1 и k<>10)
1
Ошибка, повторите ввод
Введите k (k<>1 и k<>10)
5
   7  -5  -6   6  -7   3   9   8   7  -6
   7  -5  -6   3  -7   6   9   8   7  -6

(13.9k баллов)