Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Zadachi_Po_Aip.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
6.64 Mб
Скачать
  1. Дан массив. Сформировать вектор b из неповторяющихся элементов вектора a, и вывести его на экран. Массив заполняется пользователем с клавиатуры.

#include <stdio.h>

#include <iostream>

int main ()

{setlocale (LC_ALL, "RUSSIAN");

{

int a[10], b[10], n,i,j,k,l;

printf("Введите размер массива \n");

scanf("%d",&n);

for(i=0;i<n;i++)

{printf("\n Введите элемент массива A[%d] = ",i);

scanf("%d",&a[i]);}

k=0;

for(i=0;i<n;i++)

{l=0;

j=0;

for(j=0;j<n;j++)

{if((a[i]==a[j])&&(j!=i))

{l=1;

break;}}

if (l==0)

{b[k]=a[i];

k++;}}

for(i=0;i<k;i++)

printf(" B[%d]=%d \n",i,b[i]);

}}

Стр. 21 №10

(7б) Написать программу нахождения среднегеометрического значения положительных элементов, лежащих выше главной диагонали. Массив заполняется пользователем с клавиатуры. Результат вывести на экран.

#include<stdio.h>

#include<iostream>

using namespace std;

#include<math.h>

#define N 30

#define M 30

void main()

{

setlocale(LC_ALL,"Russian");

int a[N][M], i,j,col=0,n,m;

double g=1;

printf("Введите размер массива\n");

scanf("%d",&n);

printf("Введите размер массива\n");

scanf("%d",&m);

for(i=0;i<n;i++)

{for(j=0;j<m;j++)

{printf("Введите элемент массива А[%d][%d]",i,j);

scanf("%d",&a[i][j]);

if(j>i)

{if(a[i][j]>0)

{col++;

g=g*a[i][j];

}

}}}

g=pow(g,(double)1*1.0/col);

cout<<g;

}

  1. (6б) Написать программу нахождения среднеарифметического элементов вектора, расположенных между минимальным и максимальным элементами (включая и сами эти элементы). Массив заполняется пользователем с клавиатуры. Вывести на экран результат.

# include <iostream>

using namespace std;

Int main()

{setlocale (LC_ALL, "Russian");

int arr[20], arr_size, i, j,k;

int sred;

int min = 0, max = 0, sum = 0;

printf("Введите размер массива \n");

scanf("%d",&arr_size);

for(i=0;i<arr_size;i++)

{printf("\n Введите элемент массива arr[%d] = ",i);

scanf("%d",&arr[i]);}

printf("Введенный массив\n");

for (i=0;i<arr_size;i++)

printf("%d ",arr[i]);

for(int i = 0; i < arr_size; ++i)

if(arr[min] > arr[i])

min = i;

for(int i = 0; i < arr_size; ++i)

if(arr[max] <= arr[i])

max = i;

if(min < max)

{

for(int i = min ; i <=max; ++i)

sum += arr[i];

k=max-min+1;}

else if(min > max)

{

for(int i = max ; i <=min; ++i)

sum += arr[i];

k=min-max+1;}

cout<<endl<<sum<<endl;

sred=sum/k;

printf("%d",sred);}

(8б) Написать программу проверки коммутативности произведения двух квадратных целочисленных матриц (условие A*B = B*A). Результат вывести на экран.

#include <iostream>

using namespace std;

Int main()

{

int a[2][2];

int b[2][2];

int c[2][2];

int d[2][2];

int i,j;

setlocale(LC_ALL,"Russian");

printf("Введите матрицу a\n");

for (int i=0;i<2;i++)

for (int j=0;j<2;j++)

scanf("%d",&a[i][j]);

cout<<"Matrix A:\n";

for (int i=0; i<2; i++)

{ for (int j=0; j<2; j++)

{cout<<a[i][j] <<' '; }

cout<<endl;}

printf("Введите матрицу b\n");

for (int i=0;i<2;i++)

for (int j=0;j<2;j++)

scanf("%d",&b[i][j]);

cout<<"\nMatrix B:\n";

for (int i=0; i<2; i++)

{ for (int j=0; j<2; j++)

{ cout<<b[i][j] <<' ';}

cout<<endl;}

for (int i=0; i<2; i++)

{ for (int j=0; j<2; j++)

{ int s = 0;

for (int k=0; k<2; k++)

{

s +=a[i][k] * b[k][j];

}

c[i][j] = s; }

}

cout<<"\nResult matrix:\n";

for (int i=0; i<2; i++)

{

for (int j=0; j<2; j++)

{cout<<c[i][j] <<' ';}

cout<<endl;

}

for (int i=0; i<2; i++)

{ for (int j=0; j<2; j++)

{

int s = 0;

for (int k=0; k<2; k++)

{

s +=b[i][k] * a[k][j];

}

d[i][j] = s;}

}

cout<<"\nResult matrix 2:\n";

for (int i=0; i<2; i++)

{

for (int j=0; j<2; j++)

{cout<<c[i][j] <<' ';}

cout<<endl;} }

(8б) Написать программу проверки симметричности матрицы (матрица симметрична, если она равна транспонированной). Заполнение матрицы происходит случайным образом. Результат вывести на экран.

#include<iostream>

#include <locale.h>

using namespace std;

void main(void)

{

setlocale(LC_ALL, "Russian");

int i,j,n,k=0;

int Mas[20][20];

int TMas[20][20];

printf("Введите размерность массива\n");

scanf("%d",&n);

cout<<"\n";

printf("Элементы массива:\n");

for (i=0;i<n;i++)

for (j=0;j<n;j++)

{Mas[i][j]=rand()%100;

cout<<Mas[i][j]<<endl;

}

cout<<"\n";

printf("\n");

printf("Матрица:\n");

for (i=0;i<n;i++)

{

for (j=0;j<n;j++)

printf("%d ",Mas[i][j]);

printf("\n");

}

cout<<"\n";

printf("Транспонированная матрица\n");

for (i=0;i<n;i++)

{for (j=0;j<n;j++)

TMas[j][i]=Mas[i][j];}

for (i=0;i<n;i++)

{for (j=0;j<n;j++)

printf("%d ",TMas[i][j]);

printf("\n");}

for (i=0;i<n;i++)

{for (j=0;j<n;j++){

if(Mas[i][j]==TMas[i][j])

k++;} }

cout<<"\n";

if(k==(n*n))

printf("Введенная матрица симметрична\n");

else

printf("Введенная матрица не симметрична\n");}

(9б) Написать программу проверки кососимметричности матрицы (матрица кососимметрична, если она равна транспонированной с обратным знаком). Массив заполняется пользователем с клавиатуры. Результат вывести на экран.

#include<stdio.h>

# include <locale.h>

void main(void)

{

setlocale(LC_ALL, "Russian");

int i,j,n,k=0;

int Mas[15][15];

int TMas[15][15];

printf("Введите размерность массива \n");

scanf("%d",&n);

printf("Введите массив\n");

for (i=0;i<n;i++)

for (j=0;j<n;j++)

scanf("%d",&Mas[i][j]);

printf("Введенный массив\n");

for (i=0;i<n;i++)

{ for (j=0;j<n;j++)

printf("%d ",Mas[i][j]);

printf("\n"); }

printf("Транспонированная матрица\n");

for (i=0;i<n;i++)

{ for (j=0;j<n;j++)

TMas[j][i]=Mas[i][j]; }

for (i=0;i<n;i++)

{ for (j=0;j<n;j++)

printf("%d ",TMas[i][j]);

printf("\n"); }

for (i=0;i<n;i++)

{

for (j=0;j<n;j++)

{ if(Mas[i][j]==-TMas[i][j])

k++; }}

if(k==(n*n))

printf("Введенная матрица кососимметрична\n");

else

printf("Введенная матрица не кососимметрична\n");

}

  1. (6б) Написать программу вычисления среднеарифметического квадратов элементов заданной матрицы, расположенных выше побочной диагонали, и присвоить это значение всем элементам главной диагонали. Массив заполняется пользователем с клавиатуры. Результат вывести на экран.

#include<iostream>

using namespace std;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]