Register

OR

Do you already have an account? Login

Login

OR

Don't you have an account yet? Register

Newsletter

Submit to our newsletter to receive exclusive stories delivered to you inbox!

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

более месяца назад
Просмотров : 15    Ответов : 1   

Лучший ответ:

Код Pascal:


Первая программа:


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]    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

более месяца назад
Ваш ответ:
Комментарий должен быть минимум 20 символов
Чтобы получить баллы за ответ войди на сайт





Вы можете из нескольких рисунков создать анимацию (или целый мультфильм!). Для этого нарисуйте несколько последовательных кадров и нажмите кнопку Просмотр анимации.


Другие вопросы: