Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- using namespace std;
- class WebPage
- {
- char url[100];
- char *sodrzina;
- public:
- WebPage(char *url,char *sodrzina)
- {
- strcpy(this->url,url);
- this->sodrzina=new char[strlen(sodrzina)+1];
- strcpy(this->sodrzina,sodrzina);
- }
- WebPage()
- {
- strcpy(this->url,"");
- this->sodrzina=new char[0];
- strcpy(this->sodrzina,"");
- }
- WebPage(const WebPage &wp)
- {
- strcpy(this->url,wp.url);
- this->sodrzina=new char[strlen(wp.sodrzina)+1];
- strcpy(this->sodrzina,wp.sodrzina);
- }
- char* getUrl()
- {
- return this->url;
- }
- char* getSodrzina()
- {
- return this->sodrzina;
- }
- void setUrl(char *url)
- {
- strcpy(this->url,url);
- }
- void setSodrzina(char *sodrzina)
- {
- delete []this->sodrzina;
- this->sodrzina=new char[strlen(sodrzina)+1];
- strcpy(this->sodrzina,sodrzina);
- }
- bool Proverka(WebPage wpp)
- {
- if((strcmp(this->url,wpp.url)==0)&&(strcmp(this->sodrzina,wpp.sodrzina)==0))
- return true;
- else
- return false;
- }
- void pecati()
- {
- cout<<this->url;
- cout<<this->sodrzina;
- }
- };
- class WebServer
- {
- char ime[30];
- WebPage *wp;
- int count;
- public:
- WebServer()
- {
- strcpy(this->ime,"");
- this->count=0;
- this->wp=new WebPage[0];
- }
- WebServer(char *ime,WebPage *wp,int count)
- {
- strcpy(this->ime,ime);
- this->count=count;
- this->wp=new WebPage[count];
- for(int i=0;i<count;i++)
- {
- this->wp[i]=wp[i];
- }
- cout<<"Serverot e konstruiran"<<endl;
- }
- WebServer(const WebServer &ws)
- {
- strcpy(this->ime,ws.ime);
- this->count=ws.count;
- this->wp=new WebPage[count];
- for(int i=0;i<count;i++)
- {
- this->wp[i]=ws.wp[i];
- }
- }
- void Dodadi(WebPage wpp)
- {
- WebPage *temp;
- temp=new WebPage[this->count];
- for(int i=0;i<count;i++)
- {
- temp[i]=WebPage(this->wp[i]);
- }
- delete []this->wp;
- this->wp=new WebPage[this->count+1];
- for(int i=0;i<count;i++)
- {
- this->wp[i]=temp[i];
- }
- delete []temp;
- this->wp[count]=WebPage(wpp);
- count++;
- }
- void Izbrisi(WebPage wpp)
- {
- WebPage *temp;
- int j=0;
- temp=new WebPage[count-1];
- for(int i=0;i<count;i++)
- {
- if(this->wp[i].Proverka(wpp))
- continue;
- else
- {
- temp[j]=this->wp[i];
- }
- }
- delete []wp;
- this->count--;
- this->wp=new WebPage[count];
- for(int i=0;i<count;i++)
- {
- this->wp[i]=temp[i];
- }
- delete []temp;
- }
- void Pecati()
- {
- for(int i=0;i<count;i++)
- {
- wp[i].pecati();
- }
- }
- void pecatiStranicisoUrl(int threshold)
- {
- for(int i=0;i<this->count;i++)
- {
- if(strlen(this->wp[i].getUrl())>threshold)
- {
- this->wp[i].pecati();
- }
- }
- }
- };
- int main()
- {
- char *sodrzina,url[100];
- char ime[30];
- cout<<"Vnesete ime za web serverot"<<endl;
- cin>>ime;
- WebPage *wp;
- cout<<"Vnesete broj na stranici"<<endl;
- int count;
- cin>>count;
- for (int i=0;i<count;i++)
- {
- cout<<"Vnesete sodrzina i url za wp"<<endl;
- cin>>sodrzina;
- cin>>url;
- wp[i]=WebPage(url,sodrzina);
- }
- WebServer ws(ime,wp,count);
- char *novasodrzina;
- char novUrl[100];
- cout<<"Vnesete sodrzina i url za novata strana "<<endl;
- cin>>novasodrzina;
- cin>>novUrl;
- WebPage wpp(novUrl,novasodrzina);
- ws.Dodadi(wpp);
- cout<<"Stranicata e dodadena"<<endl;
- ws.Pecati();
- ws.Izbrisi(wpp);
- cout<<"Stranicata e izbrisana"<<endl;
- ws.Pecati();
- int urll;
- ws.Pecati();
- cout<<"Vnesete url"<<endl;
- cin>>urll;
- ws.pecatiStranicisoUrl(urll);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement