Sono un principiante di Java, e come esercizio volevo WAP un semplice programma per stampare richiesto no. di '*' caratteri secondo l'utente. Ma in qualche modo, l'uscita di questo codice rimane sempre simile:valore intero letto da System.in non è il valore digitato
package stars;
public class Stars {
public static void main(String[] args) {
int no_stars=0;
try {
System.out.print("Enter the number of stars:");
no_stars = (int)System.in.read();
} catch (Exception e) {
System.out.println("Error! Invalid argument!");
System.out.println();
}
printstars(no_stars);
}
public static void printstars(int n){
int i;
for(i=0;i<=n;i++)
{
System.out.println('*');
}
}
}
Se sostituisco '*' con i, posso vedere che loop fino a 50/52/54, anche se corro il no_stars ciclo volte.
Quale sembra essere il problema qui?
Qual è il tuo output previsto e attualmente ciò che l'output sembra l ike? – Smit
fa un System.out.println (n); prima del ciclo – darijan