Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
cplusplusprogramming.doc
Скачиваний:
4
Добавлен:
24.12.2018
Размер:
165.38 Кб
Скачать

Лабораторна робота №7.

Тема: Створення програм з динамічними масивами

Мета роботи: набути навичок роботи в середовищі Microsoft Visual C++;

Виконання роботи

  1. Створити програму в якій є масив А та Б. В третьому масиві потрібно зібрати

    1. Всі елементи двох масивів

    2. Спільні елементи двох масивів

    3. Елементи масиву А, що не входять в Б

    4. Елементи масиву Б, що не входять в А

#include<iostream.h>

#include<iomanip.h>

#include<time.h>

#include<stdlib.h>

int main()

{

int m,s;

m=0;

int const n=25;

srand((unsigned)time(NULL));

cout<<"perviy massiv: "<<endl;

int a[n],b[n],c[n],d[n+n]={0}, e[n+n]={0}, f[n+n]={0};

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

{

a[i]=rand()%10-5;

cout<<setw(4)<<a[i];

}

cout<<endl;

cout<<"vtoroy massiv: "<<endl;

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

{

b[j]=rand()%10-4;

cout<<setw(4)<<b[j];

}

cout<<endl;

cout<<"tretiy massiv: Elementu obox macuviv"<<endl;

for (int h=0; h<n; h++)

{

c[h]=a[h]+b[h];

cout<<setw(4)<<c[h];

}

cout<<endl;

cout<<"4etvertui massiv: Cpilni elementu dvox macuviv"<<endl;

for(int z=0;z<n;z++)

{

s=0;

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

{

if(a[z]==b[k]&&s==0)

{

d[m]=a[z];

m++;

s++;

}

}

}

m=0;

for(int l=0;l<n;l++)

{

cout<<setw(4)<<d[l];

}

cout<<endl;

cout<<"Pyatiy massiv: Elementy massivu A, yaki ne vkluchayutsya v B"<<endl;

for(int r=0;r<n;r++)

{

s=0;

for(int t=0;t<n;t++)

{

if(a[r]!=b[t]&&s==0)

{

e[m]=a[r];

m++;

s++;

}

}

}

for(int g=0;g<n;g++)

{

cout<<setw(4)<<e[g];

}

m=0;

cout<<endl;

cout<<"Shestoy massiv: Elementy massivu B, yaki ne vkluchayutsya v A"<<endl;

for(int u=0;u<n;u++)

{

s=0;

for(int o=0;o<n;o++)

{

if(b[u]!=a[o]&&s==0)

{

f[m]=b[u];

m++;

s++;

}

}

}

for(int q=0;q<n;q++)

{

cout<<setw(4)<<f[q];

}

cout<<"\n\n\n\n\n\n\n";

}

  1. Створити програму яка за допомогою рекурсивної функції знаходить в масиві всі 0 та 1 замінюючи їх на протилежне.

#include<iostream.h>

#include<iomanip.h>

#include<stdlib.h>

#include<time.h>

int fun(int n,int a[])

{

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

{

if(a[i]==0) a[i]=1;

else a[i]=0;

}

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

{

cout<<setw(4)<<a[j];

}

cout<<"\n";

return 0;

}

int main()

{

int const n=10;

int a[n];

srand((unsigned)time(NULL));

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

{

a[i]=rand()%2;

cout<<setw(4)<<a[i];

}

cout<<"\n";

fun(n,a);

return 0;

}

  1. Знайти мінімальний елемент масиву та добуток від’ємних елементів.

#include<iostream.h>

#include<time.h>

#include<stdlib.h>

int main()

{

int pro,z,k,i,j,Min;

const n=5,m=5;

int a[n][m];

srand((unsigned)time(NULL));

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

{

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

{

a[i][j]=rand()%10-4;

cout<<"a["<<i<<"]["<<j<<"]="<<a[i][j]<<endl;

}

}

Min=a[0][0];

z=0;

k=0;

pro=1;

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

{

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

{

if(a[i][j]<Min)

{

Min=a[i][j];

k=i;

z=j;

}

}

}

cout<<"Minimal`nui element a["<<k<<"]["<<z<<"]="<<Min<<endl;

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

{

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

{

if(a[i][j]<0)

{

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

}

}

}

cout<<"Proizvedenie otricatel`nux elementov ="<<pro<<endl;

}

  1. Знайти добуток елементів масиву які більше 1

#include<iostream.h>

#include<time.h>

#include<stdlib.h>

int main()

{

int pro,z,k,i,j,Min;

const n=5,m=5;

int a[n][m];

srand((unsigned)time(NULL));

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

{

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

{

a[i][j]=rand()%10-4;

cout<<"a["<<i<<"]["<<j<<"]="<<a[i][j]<<endl;

}

}

Min=a[0][0];

z=0;

k=0;

pro=1;

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

{

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

{

if(a[i][j]<Min)

{

Min=a[i][j];

k=i;

z=j;

}

}

}

cout<<"Minimal`nui element a["<<k<<"]["<<z<<"]="<<Min<<endl;

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

{

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

{

if(a[i][j]<0)

{

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

}

}

}

cout<<"Proizvedenie otricatel`nux elementov ="<<pro<<endl;

}

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