คือ ผมเพิ่งเริ่มฝึกเขียนโปรแกรมครับ แล้วทีนี้ผมลองเขียนโปรแกรมที่ใส่เลขสามตัวแล้วให้แสดงผลตัวเลขที่มากที่สุดครับ ประมาณว่าใส่เลข 2, 1, 0แล้วให้แสดงผลเป็นเลข 2 ครับ โดยผมลองเขียนโปรแกรมเป็นแบบนี้
import java.util.Scanner;
public class MyClass{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
Int d;
if (a > b && a> c){
d = a;
} else if (b > a && b > c){
d = b;
} else if (c> a && c> b){
d = c;
}
System.out.print("MAX : " + d);
}
}
โดยถ้าผมจะใส่ ตัวเลข a เป็น 2, b เป็น 1, C เป็น 0
ถ้าไม่มีอะไรผิดพลาด มันควรแสดงผลเป็น MAX : 2
แต่พอrun จริงๆ กลายเป็นว่า error โดยบอกว่า error: variable d might not have been initialized System.out.print("MAX : " + d) error
ทำไมถึง error ได้ครับ เพราะมันน่าจะรัน if แรกได้
อยากทราบข้อผิดพลาดครับ
ทำไมรัน if / Else if ไม่ได้ครับ
import java.util.Scanner;
public class MyClass{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
Int d;
if (a > b && a> c){
d = a;
} else if (b > a && b > c){
d = b;
} else if (c> a && c> b){
d = c;
}
System.out.print("MAX : " + d);
}
}
โดยถ้าผมจะใส่ ตัวเลข a เป็น 2, b เป็น 1, C เป็น 0
ถ้าไม่มีอะไรผิดพลาด มันควรแสดงผลเป็น MAX : 2
แต่พอrun จริงๆ กลายเป็นว่า error โดยบอกว่า error: variable d might not have been initialized System.out.print("MAX : " + d) error
ทำไมถึง error ได้ครับ เพราะมันน่าจะรัน if แรกได้
อยากทราบข้อผิดพลาดครับ