Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Ho risolto in parte il problema, dava sempre 0 perché avevo messo il break all'interno del ciclo for e quindi saltava gli altri cicli.
Comunque ho pensato così:
Solo che ora anziché stamparmi la sottrazione dei numeri inseriti, mi stampa l'indicecodice:if(i == 0) { risultante = i; } else { risultante = -i; }
?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Oh sisi è vero, hai ragione. Mi sono confuso perché non riuscivo, ora finalmente grazie al tuo aiuto ce l'ho fatta:
Ora va che è un amore.codice:if(i == 0) { risultante = risultante + numeri; } else { risultante = risultante - numeri; }
Mi resta solo da fare divisione e moltiplicazione. Se ho problemi scrivo qui, grazie di tutto.
Le auguro una buona serata![]()
?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Perché se l'indice è = 0, e quindi il ciclo si trova nella lettura del primo valore, il programma fa risultante (0) + il primo numero inserito dall'utente; questo frammento di codice mi serve giusto per salvare il primo numero.
Alla seconda "passata" ovviamente l'indice non è più 0 ma 1, quindi ora faccio risultante (che ora vale il primo numero inserito) - il numero che ha appena letto in ingresso; questo avviene finché non finiscono i numeri richiesti dall'utente. Infine stampo il tutto.
PS: Per la moltiplicazione come mi conviene agire?
?
Sì ma perché
risultante = risultante + numeri;
(che sarebbe comunque corretto se e solo se risultante è inizializzato a 0) quando è più semplice e logico
risultante = numeri;
?
Praticamente quasi uguale, salvo che risultante è da inizializzare a 1 ... e poi moltiplichi per i numeri.![]()
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Si infatti risultante è inizializzata a 0, questo l'ho fatto al momento della sua creazione.
Ok ho fatto anche per la moltiplicazione![]()
Ultima modifica di wormd; 03-12-2013 a 19:59 Motivo: corretto
?
Mannaggia, ora ho un problema con la divisione ho provato così:
Ma restituisce sempre 0codice:for(i = 0; i < max; i++) { System.out.println("Inseriscil il " + (i+1) + "° numero: "); numeri = leggi.nextInt(); if(numeri == 0) { risultante = 0; } else { risultante = risultante/numeri; } } System.out.print("= " + risultante); break;
?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet