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

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

{ int i, inf; ochd *spk; sp=spk=NULL;

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

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

cin >> inf; addochd(&sp, &spk, inf); }

cout << "Vvedite chislo: "; cin >> inf;

addochd(&sp, &spk, inf);

delochd(&sp, &spk); getch(); return 0; }

void addochd(ochd **sp,ochd **spk, int inf)

{ ochd *spt=new ochd; spt->inf=inf;

spt->a=NULL; if (*spk==NULL)

*sp=*spk=spt; else

{ (*spk)->a=spt; *spk=spt; } }

void delochd(ochd **sp,ochd **spk)

{ int inf; ochd *spt;

while (*sp!=NULL)

{ inf=(*sp)->inf; cout << inf << " ";

spt=*sp; *sp=(*sp)->a;

delete spt; }cout << endl; }

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

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

#include <conio.h>

#include <iostream.h>

struct ochd

{ int inf; ochd *a; } *sp;

void addochd(ochd **, ochd **, int);

void delochd(ochd **, ochd **);

void delotr(ochd **, ochd **);

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

{ int i, inf; ochd *spk; sp=spk=NULL;

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

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

cin >> inf; addochd(&sp, &spk, inf); }

delotr(&sp, &spk); delochd(&sp, &spk);

getch(); return 0; }

void addochd(ochd **sp,ochd **spk, int inf)

{ ochd *spt=new ochd; spt->inf=inf;

spt->a=NULL;

if (*spk==NULL) *sp=*spk=spt;

else { (*spk)->a=spt; *spk=spt; } }

void delochd(ochd **sp,ochd **spk)

{ int inf; ochd *spt;

while (*sp!=NULL)

{ inf=(*sp)->inf; cout << inf << " ";

spt=*sp; *sp=(*sp)->a; delete spt; }

cout << endl; }

void delotr(ochd **sp, ochd **spk)

{ ochd *spt, *st;

while ((*sp)!=NULL&&(*sp)->inf<0)

{ st=*sp; *sp=(*sp)->a; delete st; }

spt=*sp;

while (spt->a!=*spk)

{ if (spt->a->inf<0)

{ st=spt->a; spt->a=spt->a->a; delete st; }

else spt=spt->a; }

if (spt->a->inf<0) { *spk=spt;

(*spk)->a=NULL; } }

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

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

#include <conio.h>

#include <iostream.h>

struct ochd

{ иint inf; ochd *a;} *sp;

void addochd(ochd **, ochd **, int);

void delochd(ochd **, ochd **);

void delpol(ochd **, ochd **);

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

{ int i, inf; ochd *spk; sp=spk=NULL;

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

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

cin >> inf; addochd(&sp, &spk, inf); }

delpol(&sp, &spk); delochd(&sp, &spk);

getch(); return 0; }

void addochd(ochd **sp,ochd **spk, int inf)

{ ochd *spt=new ochd; spt->inf=inf;

spt->a=NULL; if (*spk==NULL)

*sp=*spk=spt; else

{ (*spk)->a=spt; *spk=spt; } }

void delochd(ochd **sp,ochd **spk)

{ int inf; ochd *spt;

while (*sp!=NULL)

{ inf=(*sp)->inf; cout << inf << " ";

spt=*sp; *sp=(*sp)->a; delete spt;}

cout << endl; }

void delpol(ochd **sp, ochd **spk)

{ ochd *spt, *st;

while ((*sp)!=NULL&&(*sp)->inf>0)

{ st=*sp; *sp=(*sp)->a; delete st; }

spt=*sp;

while (spt->a!=*spk)

{ if (spt->a->inf>0)

{ st=spt->a; spt->a=spt->a->a; delete st; }

else spt=spt->a; }

if (spt->a->inf>0)

{ *spk=spt; (*spk)->a=NULL; } }

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

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

#include <conio.h>

#include <iostream.h>

struct ochd

{ int inf; ochd *a; } *sp;

void addochd(ochd **, ochd **, int);

void delochd(ochd **, ochd **);

void delmax(ochd **, ochd **, ochd**);

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