Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.20 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3. using namespace std;
  4. const int MAX=50;
  5. int dimensione ();
  6. int numero();
  7. void inserimento (int d,int v[]);
  8. int ricerca (int d,int n,int v[]);
  9. void stampa(int k,int n);
  10. int main()
  11. {
  12. int d,k,n,v[MAX];
  13. d=dimensione();
  14. inserimento(d,v);
  15. n=numero();
  16. k=ricerca(d,n,v);
  17. stampa(k,n);
  18. return 0;
  19. }
  20. int dimensione()
  21. {
  22. int d;
  23. do{
  24.  
  25. cout<<"inserire valori:" ;
  26. cin>>d;
  27. cout<<endl;
  28. }while(d<1 || d>MAX);
  29. return d;
  30. }
  31. int numero()
  32. {
  33. int n;
  34. cout<<"inserire valore numero ricerca";
  35. cin>>n;
  36. cout<<endl ;
  37. return n;
  38. }
  39. void inserimento(int d,int v[])
  40. {
  41. for(int i=0;i<d;i++)
  42. {
  43. cout<<"inserire valore di N" "<<i<<:";
  44. cin>>v[i];
  45. }
  46. }
  47. int ricerca(int d,int n,int v[])
  48. {
  49. int k=-1,p=0,u=d-1,c;
  50. while(p<=u && k==-1)
  51. {
  52. c=(p+u/2);
  53. if(v[c]==n)
  54. k=c;
  55. else
  56. {
  57. if(n>c)
  58. p=c+1;
  59. else
  60. u=c-1;
  61. }
  62. }
  63. return k;
  64. }
  65. void stampa(int k,int n)
  66. {
  67.  
  68. if(k==-1)
  69. cout<<"il valore"<<n<<"non e stato trovato";
  70. else
  71. cout<<"il valore"<<n<< "e stato trovato nella posizione "<<k<<".";
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement