Wannabree
Wannabree
JCHJava Community | Help. Code. Learn.
Created by Bolo on 4/14/2025 in #java-help
Java While Loop Question
Hey, Java noob here. your num1 will always be the first value you enter since it's outside of your while loop. i don't know why it happens but when you enter a negative number, your first
if (num1 > num){
largest = num1;
}
if (num1 > num){
largest = num1;
}
is accessed and largest is set to the initial num1 value.
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner stdin = new Scanner(System.in);


int largest = Integer.MIN_VALUE;
boolean running = true;


while(running) {
System.out.println("Please provide an integer: ");
int num = stdin.nextInt();

if(num<0) {
running = false;
System.out.println("The largest number is " + largest);
stdin.close();
}else if(num > largest) {
largest = num;
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner stdin = new Scanner(System.in);


int largest = Integer.MIN_VALUE;
boolean running = true;


while(running) {
System.out.println("Please provide an integer: ");
int num = stdin.nextInt();

if(num<0) {
running = false;
System.out.println("The largest number is " + largest);
stdin.close();
}else if(num > largest) {
largest = num;
}
}
}
i don't know what your homework/quiz is asking you to do but for this problem you pretty much only need onle else if()
18 replies