Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # include<iostream>
- # include<conio.h>
- # include<string.h>
- # include<stdio.h>
- struct mas
- {
- char name[20];
- char autor[20];
- int god;
- }
- class bibl
- {
- private:
- mas kn;
- public:
- void in(bibl[],int&);
- void vyb(bibl[],int&);
- void poisk(bibl[],int&);
- void udal(bibl[],int&);
- void dobavl(bibl[],int&);
- void vivod(bibl[],int&);
- };
- void main()
- {
- clrscr();
- bibl a[10];
- int x=0;
- cout<<"Введите число книг:\n";
- cin>>x;
- cout<<"Введите Ваши книги:\n";
- a[x].in(a,x);
- getch();
- }
- void bibl::in(bibl a[], int&x)
- {
- for(int i=0;i<x;i++)
- {
- cout<<"Название: ";
- cin>>a[i].kn.name;
- cout<<"Автор: ";
- cin>>a[i].kn.autor;
- cout<<"Год издания: ";
- cin>>a[i].kn.god;
- }
- getch();
- clrscr();
- a[x].vyb(a,x);
- }
- void bibl::vyb(bibl a[],int&x)
- {
- int vybor=0;
- do
- {
- clrscr();
- cout<<"1-Поиск книги\n2-Удалить книги\n3-Добавить книгу\n4-Показать библиотеку\n5-Выход\n Ваш выбор:";
- cin>>vybor;
- clrscr();
- if(vybor==1)
- a[x].poisk(a,x);
- if(vybor==2)
- a[x].udal(a,x);
- if(vybor==3)
- a[x].dobavl(a,x);
- if(vybor==4)
- a[x].vivod(a,x);
- }
- while(vybor!=5);
- }
- void bibl::poisk(bibl a[],int&x)
- {
- int p=0,god=0;
- char name[20],autor[20];
- cout<<"1-Поиск по названию\n2-Поиск по автору\n3-Поиск по году издания\n Ваш выбор:";
- cin>>p;
- clrscr();
- if(p==1)
- {
- int f=0;
- cout<<"Введите название: ";
- cin>>name;
- for(int i=0;i<x;i++)
- {
- if(strcmp(name,a[i].kn.name)==0)
- {
- cout<<a[i].kn.name<<" "<<a[i].kn.autor<<" "<<a[i].kn.god<<endl;
- f++;
- }}
- if(f==0)
- cout<<"Таких книг нет";
- getch();
- }
- if(p==2)
- {
- int h=0;
- cout<<"Введите автора: ";
- cin>>autor;
- for(int i=0;i<x;i++)
- {
- if(strcmp(autor,a[i].kn.autor)==0)
- {
- cout<<a[i].kn.name<<" "<<a[i].kn.autor<<" "<<a[i].kn.god<<endl;
- h++;
- }}
- if(h==0)
- cout<<"Таких книг нет";
- getch();
- }
- if(p==3)
- {
- int g=0;
- cout<<"Введите год издания ";
- cin>>god;
- for(int i=0;i<x;i++)
- {
- if(god==a[i].kn.god)
- {
- cout<<a[i].kn.name<<" "<<a[i].kn.autor<<" "<<a[i].kn.god<<endl;
- g++;
- }}
- if(g==0)
- cout<<"Таких книг нет";
- getch();
- }
- }
- void bibl::udal(bibl a[],int&x)
- {
- int udal;
- cout<<"введите адрес для удаления < "<<x<<endl;
- cin>>udal;
- if(x==1)
- cout<<"Удаление невозможно";
- strcpy(a[udal-1].kn.name,a[x-1].kn.name);
- strcpy(a[udal-1].kn.autor,a[x-1].kn.autor);
- a[udal-1].kn.god=a[x-1].kn.god;
- x--;
- cout<<"Удалено!\n";
- }
- void bibl::dobavl(bibl a[],int&x)
- {
- cout<<"Название: ";
- cin>>a[x+1].kn.name;
- cout<<"Автор: ";
- cin>>a[x+1].kn.autor;
- cout<<"Год издания: ";
- cin>>a[x+1].kn.god;
- x++;
- }
- void bibl::vivod(bibl a[],int&x)
- {
- for(int i=0;i<x;i++)
- {
- cout<<a[i].kn.name<<" "<<a[i].kn.autor<<" "<<a[i].kn.god<<endl;
- }
- getch();
- clrscr();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement