
19+10БАЛЛОВ!!!!!!!!!!!!!!!!!!!!!! 1. Из массива размером n удалите все элементы, которые
встречаются более одного раза. 2. Пользователь вводит массив, предварительно указав его размер. Поменяйте местами максимальный и минимальный элементы массива. 3. Транспортируйте матрицу размером n×m (поменяйте местами строки и столбцы).

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

Первая программа:
Const
N = 13;
Var
A,B:array[1..N] of integer;
i,j,m:integer;
k:byte;
Begin
Randomize;
Write('Исходный массив:');
For i:= 1 to N do
Begin
A[i]:=random(N);
Write(' ',A[i])
End;
WriteLn;
Write('Уникальные элементы:');
m:=0;
For i:= 1 to N do
Begin
k:=1;
For j:= 1 to N do
if i<>j then
if A[i]=A[j] then k:=0;
if k=1 then
Begin
m:=m+1;
B[m]:=A[i];
End
End;
For m:=1 to m do
Begin
A[m]:=B[m];
Write(' ',A[m])
End;
End.
Пример работы программы:
Исходный массив: 3 7 11 11 11 0 9 3 9 9 10 1 4
Уникальные элементы: 7 0 10 1 4
Вторая программа:
Var
A:array[1..10000] of integer;
n,Min,Max,B:integer;
Begin
Write('Введите размерность массива: ');ReadLn(n);
Write('Введите массив A(',n,'): ');
For n:= 1 to n do
Read(A[n]);
Min:=1;
Max:=1;
For n:= 2 to n do
Begin
if A[n]<Min then Min:=n;
if A[n]>Max then Max:=n;
End;
WriteLn('Min(A) = A[',Min,'] = ',A[Min]);
WriteLn('Max(A) = A[',Max,'] = ',A[Max]);
B:=A[Max];
A[Max]:=A[Min];
A[Min]:=B;
Write('A(',n,'):');
For n:= 1 to n do
Write(' ',A[n])
End.
Пример работы программы:
Введите размерность массива: 7
Введите массив A(7): 1 3 4 6 7 5 2
Min(A) = A[1] = 1
Max(A) = A[5] = 7
A(7): 7 3 4 6 1 5 2
Третья программа:
Const
n = 3;
m = 4;
Var
A:array[1..n,1..m] of integer;
B:array[1..m,1..n] of integer;
i,j:integer;
Begin
Randomize;
WriteLn('Исходная матрица:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
A[i,j]:=random(21)-10;
Write(A[i,j]:3,' ')
End;
WriteLn;
End;
WriteLn;
WriteLn('Транспонированная матрица:');
For i:= 1 to M do
Begin
For j:= 1 to N do
Begin
B[i,j]:=A[j,i];
Write(B[i,j]:3,' ')
End;
WriteLn
End;
End.
Пример работы программы:
Исходная матрица:
10 3 10 1
-4 9 -9 2
-1 4 2 1
Транспонированная матрица:
10 -4 -1
3 9 4
10 -9 2
1 2 1



1. Из массива размером n удалите все элементы, которые встречаются более одного раза.
Для удаления элементов, которые встречаются более одного раза в массиве размером n, можно использовать следующий алгоритм:
1. Создайте пустой словарь (dictionary), где ключами будут элементы массива, а значениями будут их частоты встречаемости. 2. Пройдитесь по каждому элементу массива и увеличивайте соответствующее значение в словаре. 3. Создайте новый пустой массив (result). 4. Пройдитесь по каждому элементу массива и проверьте его частоту встречаемости в словаре. Если частота равна 1, добавьте элемент в новый массив. 5. Верните новый массив в качестве результата.
Пример кода на языке Python:
```python def remove_duplicates(arr): freq_dict = {} for num in arr: if num in freq_dict: freq_dict[num] += 1 else: freq_dict[num] = 1 result = [] for num in arr: if freq_dict[num] == 1: result.append(num) return result ```
Примечание: В данном примере предполагается, что массив arr уже существует и содержит элементы.
2. Поменяйте местами максимальный и минимальный элементы массива.
Для обмена местами максимального и минимального элементов массива можно использовать следующий алгоритм:
1. Найдите индекс минимального элемента в массиве. 2. Найдите индекс максимального элемента в массиве. 3. Обменяйте значения минимального и максимального элементов, используя временную переменную. 4. Верните измененный массив.
Пример кода на языке Python:
```python def swap_min_max(arr): min_index = arr.index(min(arr)) max_index = arr.index(max(arr)) temp = arr[min_index] arr[min_index] = arr[max_index] arr[max_index] = temp return arr ```
Примечание: В данном примере предполагается, что массив arr уже существует и содержит элементы.
3. Транспонируйте матрицу размером n×m (поменяйте местами строки и столбцы).
Для транспонирования матрицы размером n×m (поменять местами строки и столбцы) можно использовать следующий алгоритм:
1. Создайте новую пустую матрицу размером m×n. 2. Пройдитесь по каждому элементу исходной матрицы. 3. Поместите значение элемента в соответствующую ячейку новой матрицы, меняя индексы строки и столбца местами. 4. Верните новую матрицу в качестве результата.
Пример кода на языке Python:
```python def transpose_matrix(matrix): n = len(matrix) # количество строк m = len(matrix[0]) # количество столбцов transposed_matrix = [[0 for _ in range(n)] for _ in range(m)] for i in range(n): for j in range(m): transposed_matrix[j][i] = matrix[i][j] return transposed_matrix ```
Примечание: В данном примере предполагается, что матрица matrix уже существует и содержит элементы.


Топ вопросов за вчера в категории Информатика







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