
Дан одномерный целочисленный массив mas. Поменять местами два элемента массива с номерами k1 и k2,
если оба этих элемента положительны. Иначе – запросить у пользователя индекс ещё одного элемента k 3 и поменять его местами с первым элементом массива. Вывести на экран итоговый массив в строку.

Ответы на вопрос

Const
n=10;
Var
ar:array[1..n] of integer;
k1,i,c,k2,k3:integer;
begin
randomize;
writeln('First array:');
for i:=1 to n do
begin
ar[i]:=random(9)-3;
write(ar[i]:4);
end;
writeln;
write('Enter index 1:');
readln(k1);
write('Enter index 2:');
readln(k2);
if (ar[k1]>0) and (ar[k2]>0) then
begin
c:=ar[k1];
ar[k1]:=ar[k2];
ar[k2]:=c;
end
else
begin
write('Enter index 3:');
readln(k3);
c:=ar[1];
ar[1]:=ar[k3];
ar[k3]:=c;
end;
writeln('Final array:');
for i:=1 to n do
write(ar[i]:4);
end.
Пример работы программы:
First array:
-1 -1 1 -1 0 -1 -2 -2 5 -2
Enter index 1:9
Enter index 2:1
Enter index 3:7
Final array:
-2 -1 1 -1 0 -1 -1 -2 5 -2



Конечно, вот пример программы на языке Python, реализующей указанное условие:
```python def swap_elements(arr, k1, k2, k3): # Проверяем, что оба элемента с индексами k1 и k2 положительны if arr[k1] > 0 and arr[k2] > 0: # Меняем местами элементы с индексами k1 и k2 arr[k1], arr[k2] = arr[k2], arr[k1] else: # Запрашиваем у пользователя индекс ещё одного элемента k3 k3 = int(input("Введите индекс элемента k3: ")) # Проверяем, что индекс k3 находится в пределах массива if 0 <= k3 < len(arr): # Меняем местами элементы с индексами k1 и k3 arr[k1], arr[k3] = arr[k3], arr[k1] else: print("Некорректный индекс k3. Обмен не выполнен.")
# Выводим итоговый массив print("Итоговый массив:", arr)
# Пример использования mas = [1, 2, 3, 4, 5] k1 = 1 k2 = 3 k3 = 0
swap_elements(mas, k1, k2, k3) ```
В данном примере создается функция `swap_elements`, которая принимает массив `arr` и индексы `k1`, `k2`, `k3`. Если оба элемента с индексами `k1` и `k2` положительны, они меняются местами. В противном случае запрашивается у пользователя индекс `k3`, и если он корректен, элемент с индексом `k1` меняется местами с элементом с индексом `k3`. Итоговый массив выводится на экран.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili