Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - array
Forum - C/C++ - array

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
eddy92 (Normal User)
Newbie


Messaggi: 15
Iscritto: 30/01/2010

Segnala al moderatore
Postato alle 17:16
Sabato, 30/01/2010

ciao a tutti!!! sto cercando di fare un prog con un menu  ke riceve dei valori in ingresso ,li ordina ,e li stampa......e anke ke trovi un numero....questo e quello ke sono riuscito a fare:

Codice sorgente - presumibilmente C++

  1. #include<iostream.h>
  2. #define MAX 100
  3.  
  4. void insnum(int A[] ,int N)
  5.  
  6. void vis(int A[] ,int N)
  7.  
  8. void ordnum(int A[] ,int N)
  9. int xpos(int A[],int N)
  10.  
  11. int main()
  12. {   int a[MAX],n,b,c=1,m ;
  13.  
  14.  
  15.           cout <<"ins N:";
  16.       cin >>n;
  17.  
  18. while(c==1){
  19.  cout <<"secegliere 1 x inserimento numeri "<<end;
  20.  cout <<"secegliere 2 x la visualizazione "<<end;
  21.  cout <<"secegliere 3 x l'ordinamento "<<end;
  22.  cout <<"secegliere 4 x trovare la posizione di un numero "<<end;
  23.  
  24. cin>>b;
  25.  
  26. switch (b){
  27. case 1:insnum(a,n); break;
  28. case 2:vis(a,n); break;
  29. case 3:ordnum(a,n); break;
  30. case 4:cout<<"x si trova in posizione :"<<xpos(a,n);  break;}
  31.  
  32. cout<<"ins 1 x ritornare al menu':";
  33. cin>>m;c=m;
  34. system("cls");
  35. }
  36. cout<<"END"<<endl<<endl;
  37. system("pause");
  38.         return 0;
  39. }
  40.  
  41.  
  42. void insnum(int A[],int N) {
  43.  
  44. int i;
  45.  
  46.         for(i=0;i<N;i++){
  47. cout<<"ins num";
  48. cin >>A[i];}
  49.  
  50.     }
  51. void vis(int A[],int N) {
  52.  
  53. int i;
  54.      for (i=0;i<N;i++) {
  55. cout<<"il "<<i+1<<" numero e':"<<A[i]<<endl;
  56.  
  57. }
  58.  
  59.     }
  60. void ordnum(int A[],int N) {
  61.  
  62. int i,j,t;
  63.     for (i = 0; i <N; i++) {
  64.  for (j = i+1; j <N; j++) {
  65.  if(A[i]>A[j])
  66.  {t=A[i];
  67.  A[i]=A[j];
  68.  A[j]=t;}
  69.  }
  70. }
  71.     }
  72. int xpos(int A[],int N)    {
  73.  
  74. int sx,dx,mx,x;
  75.     cout <<"ins x:";
  76. cin >>x;
  77. sx=0;
  78. dx=N-1;
  79. do{mx=(sx+dx)/2;
  80. if(x==A[sx])  return sx;
  81. if(x==A[dx]) return dx;
  82. if(A[mx]==x) return mx;
  83. if(A[mx]<x){sx=mx+1;}
  84. else {dx=mx-1;}
  85. } while(sx<dx);
  86.  
  87.  return -1;
  88.     }



in teoria dovrebbe essere giusto ,ma nn so xke mi da uno strano erorre alla compilazione...ke nn capisco:

--riga 7(void vis...):error: expected initializer befor "void".
qualcuno mi puo dire cosa ho sbagliato?
grz1000 in anticipo....:D

EDIT by HeDo: il codice va racchiuso tra i tag code

Ultima modifica effettuata da HeDo il 31/01/2010 alle 17:03


return -16548451321564789745123189;
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5714
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 17:21
Sabato, 30/01/2010
Mancano tutti i ; nei prototipi

Codice sorgente - presumibilmente C++

  1. void insnum(int A[] ,int N);
  2. void vis(int A[] ,int N);
  3. void ordnum(int A[] ,int N);
  4. int xpos(int A[],int N);



P.S. Usa i tag CODE per postare il codice, altrimenti non si capisce nulla ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
eddy92 (Normal User)
Newbie


Messaggi: 15
Iscritto: 30/01/2010

Segnala al moderatore
Postato alle 18:18
Sabato, 30/01/2010
aaa ok grz....ma è saltato fuori un altro problemma ke nn mi spiego.....questa volta il programa si complilla e parte....ho provato a mettere N=10....poi 1 x scegliere la prima voce del menu(inserimento numeri)...mi fa inserire i numeri fino al 7°.....al settimo numero
si'npalla e mi viene fuori un messaggio d'erorre e il programma si kiude......

e pure nn ci dovrebbero essere sbagli nel codice:
Codice sorgente - presumibilmente C/C++

  1. void insnum(int A[],int N) {
  2.  
  3. int i;
  4.  
  5.         for(i=0;i<N;i++){
  6. cout<<"ins num";
  7. cin >>A[i];}
  8.  
  9.     }



c'è qualcosa di sbagliato?


return -16548451321564789745123189;
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5714
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 18:26
Sabato, 30/01/2010
Quale messaggio d'errore? Devi dirlo (in dettaglio) se vuoi dei suggerimenti ...



Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 967
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 19:42
Sabato, 30/01/2010
E' molto strano che ci siano errori in quella funzione!
L' ho provata e funziona!

Piuttosto controlla la funzione che stampa i numeri.

Ultima modifica effettuata da Poggi Marco il 30/01/2010 alle 19:54


Nulla va più veloce della luce, quindi rilassati.
PM Quote
Avatar
eddy92 (Normal User)
Newbie


Messaggi: 15
Iscritto: 30/01/2010

Segnala al moderatore
Postato alle 22:59
Sabato, 30/01/2010
all è il mio compilatore che fa cagare.......ho appena messo win 7.......e sembrea che nn ci sia nessun compilatore compatibile...


return -16548451321564789745123189;
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5714
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 23:07
Sabato, 30/01/2010
Testo quotato

Postato originariamente da eddy92:

all è il mio compilatore che fa cagare.......ho appena messo win 7.......e sembrea che nn ci sia nessun compilatore compatibile...



Stai scherzando? Scarica Visual C++ 2008 Express Edition ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
eddy92 (Normal User)
Newbie


Messaggi: 15
Iscritto: 30/01/2010

Segnala al moderatore
Postato alle 9:44
Domenica, 31/01/2010
lo scaricato ma nn funziona bene neanke lui...


return -16548451321564789745123189;
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5714
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 11:11
Domenica, 31/01/2010
Testo quotato

Postato originariamente da eddy92:

lo scaricato ma nn funziona bene neanke lui...



Il prodotto e' di Microsoft e non funziona bene neanche lui su Windows 7 di Microsoft?

Ho l'impressione che tu abbia dei problemi (di virus? hardware?) nel tuo computer perche' quello che hai detto è assurdo.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo