Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
Các bác cho em hỏi tại sao S nó lại bằng 0 nhờ :))
System.out.print("Moi nhap n= ");
n=new Scanner(System.in).nextInt();
for(i=1;i<=n;i++){
m+=i;
}
S=1/m;
System.out.println("S=1/(1+2+3+...+n) = "+S);
Hai số nguyên chia cho nhau thì kết quả sẽ ra số nguyên, cho dù S có là số thực thì nó sẽ tự ép kiểu về số nguyên. Cậu thử để m là float hoặc ép kiểu cho nó thử đi.
vì s của bạn là kiểu int. 1/ số lớn hơn 1 thì lấy phân2 nguyên là 0. bạn đổi kiểu dữ liệu của s là ok