Advertisement
Guest User

Untitled

a guest
Dec 18th, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3. #include <fstream>
  4. using namespace std;
  5.  
  6. struct numeri {
  7. int valore ;
  8. struct numeri* prossimo;
  9. };
  10.  
  11. typedef struct numeri Lista;
  12. void Lettura( Lista *l, int &i)
  13. {
  14. ifstream input;
  15. char nomefile[50];
  16. do
  17. {
  18. cout<<" inserisci il nome del file ";
  19. cin>> nomefile;
  20. cout<<endl;
  21. input.open(nomefile);
  22. if(!input.is_open())
  23. {
  24. cout<<"errore il nome del file non e' corretto"<<endl;
  25. }
  26. else
  27. {
  28. cout<< " file aperto "<<endl;
  29. }
  30. }while(!input.is_open());
  31. i = 0;
  32. int temp;
  33. while(i<100 && !input.eof())
  34. {
  35. input>>l->valore;
  36. //cout<< l->valore << " -";
  37. l->prossimo = new Lista;
  38. l = l->prossimo;
  39.  
  40. i++;
  41. }
  42. input.close();
  43. l->prossimo = NULL;
  44. }
  45.  
  46. void stampa (Lista *l,int i)
  47. {
  48. Lista *p = l;
  49. while(p!= NULL)
  50. {
  51. cout <<" || " <<p->valore;
  52. p = p->prossimo;
  53. }
  54. }
  55.  
  56.  
  57. void bubblesort(Lista *l, int n) {
  58.  
  59.  
  60. int i,k;
  61. int v [n];
  62.  
  63. i = 0;
  64. Lista *p = l;
  65. while(p!= NULL)
  66. {
  67. v[i] = p->valore;// metto in un vettore tutte i valori e poi con il bubble sort li ordino
  68. i++;
  69. p = p->prossimo;
  70. }
  71.  
  72. int temp;
  73. for(i = 0; i<n-1; i++) {
  74. for(k = 0; k<n-1-i; k++) {
  75. if(v[k] > v[k+1]) {
  76. temp = v[k];
  77. v[k] = v[k+1];
  78. v[k+1] = temp;
  79. }
  80. }
  81. }
  82.  
  83.  
  84. i = 0;
  85. Lista *q = l;
  86. while(q!= NULL)
  87. {
  88. q->valore= v[i];// ributto dentro le struct il vettore ordinato
  89. i++;
  90. q = q->prossimo;
  91. }
  92.  
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement