Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OAIP-_zadachi_shrift_5.doc
Скачиваний:
35
Добавлен:
11.05.2015
Размер:
178.69 Кб
Скачать

Int main(int argc, char* argv[])

{ int i;

cout << "Vvedite chislo elementov: ";

cin >> n;

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

{cout << "Vvedite chislo " << i+1 << ": ";

cin >> a[i];

}

puz(); getch();

return 0;

}

void puz()

{ int i, j, m;

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

{ for (j=n-1; j>=i; j--)

{ if (a[j-1]>a[j])

{ m=a[j-1];

a[j-1]=a[j];

a[j]=m;

} } }

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

cout << a[i] << " ";

cout << endl;

}

Написать ф- для сортировки масива

целых чисел методом вставок.

#include <iostream.h>

#include <conio.h>

int n, a[20];

void vst();

Int main(int argc, char* argv[])

{ int i;

cout << "Vvedite chislo elementov: ";

cin >> n;

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

{ cout << "Vvedite chislo " << i+1 << ": ";

cin >> a[i];

}

vst(); getch();

return 0;

}

void vst()

{int i, j, m;

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

{ m=a[i];

for (j=i-1; j>=0&&m<a[j]; j--)

{ a[j+1]=a[j]; a[j]=m;

} }

for (i=0; i<n; i++)cout << a[i] << " ";

cout << endl;

}

Задан 1мер. масив. Написать ф-ю линейного

поиска заданного элемента в

массиве с использованием барьера.

#include <iostream.h>

#include <conio.h>

int n, a[20];

void poisk();

Int main(int argc, char* argv[])

{ int i;

cout << "Vvedite chislo elementov: ";

cin >> n;

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

{ cout << "Vvedite chislo " << i+1 << ": ";

cin >> a[i];

} poisk(); getch();

return 0;

}

void poisk()

{ int i, m;

cout << "Vvedite iskomij element: ";

cin >> m;

a[n]=m;

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

{ if (a[i]==m)

if (i==n)

cout << "Elementa v masive net" << endl;

else

{cout << " Element: " << a[i] << endl; break;

}}}

Задан отсортированный по возрастанию массив.

Написать ф-ю 2го поиска заданного элемента в массиве.

#include <iostream.h>

#include <conio.h>

int n, a[20];

void poisk();

Int main(int argc, char* argv[])

{ int i;

cout << "Vvedite chislo elementov: ";

cin >> n;

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

{ cout << "Vvedite chislo " << i+1 << ": ";

cin >> a[i];

} poisk(); getch();

return 0;

}

void poisk()

{ int m, x, i=0, j=n-1;

cout << "Vvedite iskomij element: ";

cin >> m;

while (i<j)

{ x=(i+j)/2;

if (m>a[x]) i=x+1;

else j=x;

}

if (a[i]==m)

cout << " Element: " << a[i] << endl;

else cout << "Elementa v masive net" << endl;

}

Написать программу формирующую стек из 7 чисел. Удалить последний элемент стека.

Предусмотреть вывод результата и очистку стека в конце работы.

#include <conio.h>

#include <iostream.h>

struct stk

{ int inf;

stk *a;

} st;

stk *adst(stk *, int);

stk *del(stk *);

Int main(int argc, char* argv[])

{ int i, inf, n=7;

stk *sp, *st=NULL;

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

{ cout << "Vvedite element " << i+1 << ": ";

cin >> inf;

st=adst(st, inf);

} sp=st;

while (sp->a->a!=NULL) sp=sp->a;

sp->a=NULL;

del(st); getch();

return 0;

}

stk *adst(stk *st, int inf)

{ stk *spt=new stk;

spt->inf=inf;

spt->a=st;

return spt;

}

stk *del(stk *st)

{ int inf;

stk *spt;

while (st!=NULL)

{ spt=st;

st=st->a;

inf=spt->inf;

cout << inf << " ";

delete spt;

} cout << endl;

return NULL;

Написать программу формирующую стек из 6 чисел. Удалить первый элемент стека.

Предусмотреть вывод результата и очистку стека в конце работы.

#include <conio.h>

#include <iostream.h>

struct stk

{ int inf;

stk *a;} st;

stk *adst(stk *, int);

stk *del(stk *);

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