Devo scrivere un programma in cui l'utente immette 3 numeri in una matrice e quindi l'output è i numeri sottratti gli uni dagli altri.
Ho provato ad usare un ciclo for per questo, ma restituisce solo i numeri aggiunti insieme, quindi lo rende negativo ad esempio: se inserisco i numeri 1,2 e 3, dovrebbe produrre -4 ma output -6.
questo è il mio codice: (la parte della linea di stampa è in un altro metodo)
int sub = 0;
for(int j =0; j < numbers.length;j++)
{
sub -= numbers[j];
}
return sub;
come faccio a sottrarre i numeri. Anche se qualcuno sa come ottenere i numeri da dividere l'uno con l'altro sarebbe molto utile:)
Grazie in anticipo
risposte:
0 per risposta № 1int sub = numbers[0];
for(int j = 1; j < numbers.length;j++)
{
sub -= numbers[j];
}
return sub;
Per dividere, usare /=
invece di -=
.
0 per risposta № 2
Cambialo per assomigliare a questo:
int sub = numbers[0];
for (int j = 1; j < numbers.length; j++) {
sub -= numbers[j];
}
return sub;
Il tuo codice fa
0 - numbers[0] - numbers[1] - numbers[2]
quando ciò che vuoi è
numbers[0] - numbers[1] - numbers[2]
0 per risposta № 3
Sembra che tu stia assegnando sub = 0 che sta creando un problema. Devi invece assegnare il primo valore dell'array.
Ho corretto il codice per te:
public static void main (String[] args) throws java.lang.Exception
{
int a [] ={1, 2, 3};
int sub = a[0];
for(int j =1; j < a.length;j++)
{
sub = sub -a[j];
}
System.out.println (sub);
}
Puoi eseguire questo codice Qui. Potresti trovare il codice completo Qui