
algoritmi4
.docx
Міністерство освіти і науки України
Запорізький національний технічний університет
кафедра програмних засобів
ЗВІТ
з лабораторної роботи № 4
з дисципліни "Алгоритми та структури даних" на тему:
"ОРГАНIЗАЦIЯ ЧЕРГИ ЗА ДОПОМОГОЮ СПИСКУ"
Виконав:
студент групи КНТ-423 В. В.Білевський
Прийняли: В. П. Рисіков
2014
4.1 Мета роботи
Метою роботи є вивчення основних операцiй над списковою структурою-чергою: включення нового елементу, виключення елементу, перевiрка поточної довжини та очищення.
4.2 Завдання
Модифiкувати програму таким чином, щоб данi якi зберігаються у черзi, були типа запису який складається з двох полiв. Вивiд полiв запису повинен виконуватись в один рядок.
4.3 Результати виконання роботи
Текст програми:
#include<iostream>
#include<fstream>
#include<stdio.h>
using namespace std;
class catalog{
struct books{
char name[20];
char autor[10];
};
struct elem{
books data;
elem *pnext;
};
public:
void add();
void show();
elem *plist = NULL,*pfirst;
};
void catalog::add() {
elem * tmp = new elem;
cout << "input name of book ";
cin >> tmp -> data.name;
cout << "input autor of book ";
cin >> tmp -> data.autor;
tmp->pnext=NULL;
if (!plist) {
plist = tmp;
pfirst = plist;
} else {
plist->pnext = tmp;
plist = tmp;
}
}
void catalog::show(){
elem *tmp=pfirst;
while(tmp){
cout<<"Book name:"<<tmp->data.name<<" "<<"Autor name:"<<tmp->data.autor<<endl;
tmp=tmp->pnext;
}
}
int main(){
catalog c;
int a;
int n=1;
for(int i=0;i<n;i++){
cout<<"Enter value:\n"<<"1:Add new book\n"<<"2:Show books\n"<<"3:exit"<<endl;
cin>>a;
switch (a) {
case 1:
c.add();
break;
case 2:
c.show();
break;
}
if(a==3){
break;}
n++;
a=0;
cout<<"-------------------------------------------------"<<endl;}
}
Рисунок 4.1 – Робота програми
4.4 Висновки
В ході даної лабораторної роботи я вивчив основні операцiї над списковою структурою-чергою: включення нового елементу, виключення елементу, перевiрка поточної довжини та очищення.