Advertisement
Guest User

s

a guest
Dec 13th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3.  
  4. using namespace std;
  5. ifstream f("lista3.txt");
  6.  
  7. struct nod{int info;
  8. nod *urm;};
  9. int n,x;
  10. void adauga_nod(nod *&prim, nod*&ultim)
  11. {
  12. prim= new nod;
  13. ultim=prim;
  14. prim->info=n;
  15. prim->urm=NULL;
  16. }
  17.  
  18. void adauga_ultim(nod *&ultim)
  19. {
  20. nod *p=new nod;
  21. p->info=n;
  22. p->urm=NULL;
  23. ultim->urm=p;
  24. ultim= p;
  25. }
  26.  
  27. nod *cauta(nod *p)
  28. {
  29. while(p->urm!=NULL && p->urm->info!=x)
  30. p=p->urm;
  31. return p;
  32. }
  33.  
  34. void elimina_prim(nod *&prim)
  35. {
  36. nod *q=prim; prim=prim->urm; delete q;
  37. }
  38.  
  39. void elimina_urm(nod *p)
  40. {
  41. nod *q=p->urm; p->urm=p->urm->urm; delete q;
  42. }
  43.  
  44. void afisare(nod *prim)
  45. {
  46. for(nod *p=prim; p!=NULL; p=p->urm)
  47. cout<<p->info<<" ";
  48. cout<<endl;
  49. }
  50.  
  51. int main()
  52. {nod *prim, *ultim, *p; cout<<"x= "; cin>>x;
  53. f>>n; adauga_nod(prim, ultim);
  54. while(f>>n)
  55. adauga_ultim(ultim);
  56. f.close();
  57. if(prim->info==x) elimina_prim(prim);
  58. else {p=cauta(prim);
  59. if(p->urm!=NULL) elimina_urm(p);}
  60. afisare(prim);
  61. return 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement