Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - eccomi di nuovo ho un problema con gli array... help
Forum - C/C++ - eccomi di nuovo ho un problema con gli array... help

Avatar
bip (Normal User)
Rookie


Messaggi: 36
Iscritto: 22/04/2008

Segnala al moderatore
Postato alle 21:46
Domenica, 12/10/2008
io vorrei sommare i primi 3 valori dell'array e i ultimi 3 valori dell'array ma non ci riesco ecco il prog:

#include <iostream.h>
#define MAX 100          //dimensione massima dell'array

main(){
int array[6];
int n=7;

  for (int x=0; x<n; x++){ //lettura degli elementi dell'array
    cout<<"Inserisci l'elemento dell'array in "<<x+1<<"° posizione: ";
    cin>>array[x];
}

cout<<"\nA  = {"<<array[n-1];
for (int j=n-2; j>=0; j--){     //scrittura dell'array rovesciato
    cout<<"; "<<array[j];


}

cout<<"}";
system("pause");
return(0);
}



Ultima modifica effettuata da bip il 12/10/2008 alle 21:46
PM Quote
Avatar
munkaka (Member)
Pro


Messaggi: 119
Iscritto: 07/09/2008

Segnala al moderatore
Postato alle 22:32
Domenica, 12/10/2008
basta prendere il contenuto dell'array e sommarlo a una varibile, se ho capito bene cosa vuoi fare
Codice sorgente - presumibilmente C/C++

  1. int somma1=0,somma2=0;
  2.  
  3. for(i=0;i<3;i++) somma1+=array[i];
  4. for(i=5;i>2;i--) somma2+=array[i];


nel tuoi programma cè un errore, il primo ciclo for viene eseguito 7 volte, mentre l'array è lungo 6, devi cambiare la varibile n da 7 a 6

Ultima modifica effettuata da munkaka il 12/10/2008 alle 22:35
PM Quote
Avatar
bip (Normal User)
Rookie


Messaggi: 36
Iscritto: 22/04/2008

Segnala al moderatore
Postato alle 23:14
Domenica, 12/10/2008
no amico non funziona neanche come dici tu anzi mi da un risultato a mè incomprensibile.

Il quesito è questo:
dopo aver caricato in memoria un array di numeri reali con dimensione inserita da tastiera non superiore a 20, calcola la somma dei primi cinque e poi la somma dei ultimi cinque

(lascia perdere il fatto che io invece di venti ne ho inseriti 7)

Sicome ho perso la domenica su sta cosa ora chiedo a testa bassa aiuto xkhè nn ne posso + la prossi settimana ho compito :s

PM Quote
Avatar
munkaka (Member)
Pro


Messaggi: 119
Iscritto: 07/09/2008

Segnala al moderatore
Postato alle 13:24
Lunedì, 13/10/2008
ho provato, ecco l'unione del mio codice con il tuo
Codice sorgente - presumibilmente C#

  1. #include <iostream>
  2. using namespace std;
  3. #define MAX 20 //dimensione massima dell'array
  4.  
  5. int main()
  6. {
  7. int n;
  8.  
  9. do
  10. {
  11.     cout<<"Inserisci la lunghezza dell'array :";
  12.     cin>>n;
  13.    
  14.     if(n>MAX)
  15.              cout<<"Troppo grande"<<endl;
  16. }while(n>MAX);
  17.  
  18. double array[n]; //se l'array contiene valori reali devi dichiararlo double, non int
  19.  
  20. for (int x=0; x<n; x++)
  21. { //lettura degli elementi dell'array
  22. cout<<"Inserisci l'elemento dell'array in "<<x+1<<"° posizione: ";
  23. cin>>array[x];
  24. }
  25.  
  26. cout<<"\nA = {"<<array[n-1];
  27. for (int j=n-2; j>=0; j--)
  28. { //scrittura dell'array rovesciato
  29. cout<<"; "<<array[j];
  30. }
  31. cout<<"}"<<endl;
  32.  
  33. double somma1=0,somma2=0;
  34. int i;
  35.  
  36. for(i=0;i<5;i++) somma1+=array[i];//calcolo la somma dei primi cinque
  37. for(i=(n-1);i>(n-6);i--) somma2+=array[i]; //calcolo la somma degli ultimi cinque
  38.  
  39. cout<<"Somma dei primi cinque:"<<somma1<<endl;
  40. cout<<"Somma degli ultimi cinque:"<<somma2<<endl;
  41.  
  42. system("pause");
  43.  
  44. }


PM Quote
Avatar
bip (Normal User)
Rookie


Messaggi: 36
Iscritto: 22/04/2008

Segnala al moderatore
Postato alle 12:43
Mercoledì, 15/10/2008
thx mukaka:k:

PM Quote