Advertisement
Guest User

Untitled

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