Advertisement
Guest User

Untitled

a guest
Mar 20th, 2019
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3. #include <stdlib.h>
  4. using namespace std;
  5.  
  6. struct nod
  7. {
  8. int nr,nd;nod *desc[5];
  9. }*rad,*aux,*aux2;
  10. void parcad(nod *n)
  11. {
  12. if(n!=NULL)
  13. {
  14. cout<<n->nr<<" ";
  15. for(int i=0;i<n->nd;i++)
  16. parcad(n->desc[i]);
  17.  
  18. }
  19.  
  20. }
  21.  
  22. int main()
  23. {
  24. //rad
  25. int i;
  26. rad=new nod;
  27. cin>>rad->nr;
  28. rad->nd=0;
  29. for(i=0;i<5;i++)
  30. rad->desc[i]=NULL;
  31. //n1
  32. aux=new nod;
  33. cin>>aux->nr;
  34. aux->nd=0;
  35. for(i=0;i<5;i++)
  36. aux->desc[i]=NULL;
  37. rad->desc[0]=aux;
  38. rad->nd++;
  39. //n2
  40. aux=new nod;
  41. cin>>aux->nr;
  42. aux->nd=0;
  43. for(i=0;i<5;i++)
  44. aux->desc[i]=NULL;
  45. rad->desc[1]=aux;
  46. rad->nd++;
  47. //n3
  48. aux=new nod;
  49. cin>>aux->nr;
  50. aux->nd=0;
  51. for(i=0;i<5;i++)
  52. aux->desc[i]=NULL;
  53. rad->desc[2]=aux;
  54. rad->nd++;
  55. //n4
  56. aux=new nod;
  57. cin>>aux->nr;
  58. aux->nd=0;
  59. for(i=0;i<5;i++)
  60. aux->desc[i]=NULL;
  61. aux2=rad->desc[0];
  62. aux2->desc[0]=aux;
  63. aux2->nd++;
  64. //n5
  65. aux=new nod;
  66. cin>>aux->nr;
  67. aux->nd=0;
  68. for(i=0;i<5;i++)
  69. aux->desc[i]=NULL;
  70. aux2=rad->desc[0];
  71. aux2->desc[1]=aux;
  72. aux2->nd++;
  73. cout<<endl<<"Parcurgerea in adancime:";
  74. parcad(rad);
  75. cout<<endl<<endl<<"Parcurgerea in latime:";
  76. nod *v[20];
  77. int ic=0,IF=0;
  78. v[0]=rad;
  79. while(ic<=IF)
  80. {
  81. for(i=0;i<v[ic]->nd;i++){
  82.  
  83. IF++;
  84. v[IF]=v[ic]->desc[i];
  85. }
  86. ic++;
  87. }
  88.  
  89. for(i=0;i<=IF;i++)
  90. cout<<v[i]->nr<<" ";
  91.  
  92. //stergerea ultimului nod
  93.  
  94. cout<<endl<<endl;
  95. cout<<"Stergerea ultimului nod :";
  96. aux2=rad->desc[0];
  97. aux=aux2->desc[1];
  98. aux2->desc[1]=NULL;
  99. free (aux);
  100. parcad(rad);
  101.  
  102. cout<<endl<<endl;
  103. cout<<"Stergerea unui nod cu descendenti:";
  104. aux=rad->desc[0];
  105. rad->desc[0]=aux->desc[0];
  106. rad->nd++;
  107. free (aux);
  108. parcad(rad);
  109.  
  110.  
  111.  
  112.  
  113. return 0;
  114.  
  115.  
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement