|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Mar 2008
Città: Albano Laziale
Messaggi: 49
|
c++ - problema array
inseriti 5 numeri da tastiera effettuare la somma tra il 1 numero inserito e l'ultimo;tra il 2 inserito e il 4;moltiplicare le somme per il 3 elemento se il 3 elemento è un numero paro, altrimenti dividere
Codice:
#include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int A[5],i,somma1,somma2,mol1,mol2,div1,div2; for (i=0;i<5;i++) { cout <<"inserisci numero: "; cin>> A[i]; } somma1= A[1]+A[5]; somma2= A[2]+A[4]; cout <<"\n la prima somma e: "<<somma1; cout <<"\n la seconda somma e: "<<somma2; if (A[3] %2 ==0) { mol1=A[3]*somma1; mol2=A[3]*somma2; cout <<"\n la prima moltiplicazione e: "<<mol1; cout <<"\n la seconda moltiplicazione e: "<<mol2; } else { div1= somma1/A[3]; div2= somma2/A[3]; cout <<"\n la prima divisione e: "<<div1; cout <<"\n la seconda divisione e: "<<div2; } system("PAUSE"); return EXIT_SUCCESS; } Codice:
somma1= A[1]+A[5]; somma2= A[2]+A[4]; |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
per forza, gli indici degli array in C++ si contano a partire da 0 e l'ultimo indice valido di un array di j elementi è j-1.
Quindi avendo dichiarato questo: Codice:
int A[5],i,somma1,somma2,mol1,mol2,div1,div2; Codice:
somma1= A[1]+A[5]; Inoltre il primo elemento è A[0].
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Mar 2008
Città: Albano Laziale
Messaggi: 49
|
quindi in teoria dichiarando
Codice:
A[6] |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Invece credo che tu voglia averlo di 5. Correggi gli indici con cui accedi agli elementi nell'array, non la dichiarazione di dimensione dell'array. Ti è chiara la differenza?
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Mar 2008
Città: Albano Laziale
Messaggi: 49
|
Codice:
somma1= A[1]+A[5]; somma2= A[2]+A[4]; ![]() |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
![]() Rileggiti il mio primo post e prova a correggere il codice che hai appena indicato.
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
![]() |
![]() |
![]() |
#7 |
Member
Iscritto dal: Mar 2008
Città: Albano Laziale
Messaggi: 49
|
Codice:
somma1= A[0]+A[4]; somma2= A[1]+A[3]; ![]() |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Bravo ragazzo, ciao
![]()
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:00.