Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4360_С++_мас.doc
Скачиваний:
8
Добавлен:
11.11.2019
Размер:
429.06 Кб
Скачать

Ров’язки завдань

Слайд № 8

Задача 3a

#include <iostream.h>

#include <conio.h>

void show_array(inta[], int n)

{for (int I=0; I<n; I++) cout<<a[I]<<” “;

cout<<endl;}

//----------------------------------------------------

void get_array(int a[], int n)

{for (int I=0; I<n; I++) cin>>a[I];}

//----------------------------------------------------

int MaxEl(int a[], int m, int n)

{int max=a[m]; int L=m;

for (int I=m+1; I<n; I++)

if (a[I]>=max) {max=a[I]; L=І;}

return (L);}

//---------------------------------------------------

void swap(int*a, int*b)

{int temp=*a; *a=b; *b=temp;}

//---------------------------------------------------

int main()

{int n; cin>>n; int a[100];

get_array(a,n);

int mc=0; int L;

int nc=sizeof(a)/sizeof(a[0]);

while (mc<nc)

{ L=MaxEl(a, mc, nc);

swap(&a[mc], &a[L]);

mc++;}

show_array(a, n);

getch();

return 0;

}

Задача 3b

#include <iostream.h>

#include <conio.h>

void show_array(inta[], int n)

{for (int I=0; I<n; I++) cout<<a[I]<<” “;

cout<<endl;}

//----------------------------------------------------

void get_array(int a[], int n)

{for (int I=0; I<n; I++) cin>>a[I];}

//----------------------------------------------------

void swap(int*a, int*b)

{int temp=*a; *a=b; *b=temp;}

//---------------------------------------------------

void bubl(int *mas[], int n)

{bool fl=false; int j=1;

do

{fl=false;

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

if (*max[I]>*mas[I+1])

{swap(&mas[I], &mas[I+1];

fl=true;}

j++}

while (fl)

}

//--------------------------------------------------

int main()

{int n; cin>>n; int a[100];

get_array(a,n);

int nc=sizeof(a)/sizeof(a[0]);

bubl(&a, nc)

show_array(a, n);

getch();

return 0;

}

Задача 4

(після сортування, замість виведення елементів масиву)

for (int k=1; int I=0; I<n-1; I++)

if (a[I]!=a[I+1]) k++;

cout<<k<<endl;

Задача 5

(після сортування, замість виведення елементів масиву)

int k=1, km=1, b=a[0];

for (int I=0; I<n-1; I++)

if (a[I]==a[I+1]) k++;

else

if (k>km) {km=k; b=a[I], k=1;}

cout<<b<<endl;

Задача 6

(зміни внести в головну функцію)

int main()

{int n; cin>>n; int a[100];

get_array(a,n);

int m; cin>>m; int b[100];

get_array(b, m);

bubl(&a, n);

bubl(&b, m);

int I=0, L=0;

do

{if (a[I]!=b[L]) I++;

else {cout<<a[I]<<” “; I++; L++;}

while (I<n && L<m);

getch();

return 0;

}

Задача 7

#include <iostream.h>

#include <conio.h>

void show_array(inta[], int n)

{for (int I=0; I<n; I++) cout<<a[I]<<” “;

cout<<endl;}

//----------------------------------------------------

void get_array(int a[], int n)

{for (int I=0; I<n; I++) cin>>a[I];}

//----------------------------------------------------

int main()

{int n; cin>>n; int a[100];

get_array(a,n);

int m; cin>>m; int b[100];

get_array(b, m);

int c[200];

int I=L=k=0;

do

{if (a[I]<b[L]) {c[k]=a[I]; k++;}

else

if (a[I]=b[L]) {c[k]=a[I]; I++; k++; c[k]=b[L]; L++; k++;}

else {c[k]=b[L]; L++; k++;}

}

while (I<n && L<m);

if (I==n && L!=m)

{for (I=l; I<m; I++) {c[k]=b[L]; k++;}}

else

if (L==m && I!=n)

{for I=L; I<n; I++) {c[k]=a[I]; k++;}}

show_array(c, m+n);

getch (); return 0;}

Урок № 28

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