30/09/2018, 19:57

Mọi người cho em hỏi vấn đề này chút xíu ạ

tại sao lặp trong lặp for ở ct2 lại cho kq khác với lặp trong lặp for và while ở ct ạ:
ct1:
package baitapcuacorejava;

public class Bai53 {

public static void main(String[] args) {
	// TODO Auto-generated method stub
	int k=1,i=1;
	int fact=1;
	int sum=0;
	for(k=1;k<=7;k++)
	{
		while(i<=k)
		{
			fact*=i;
			i++;
		}
		sum+=fact;
	}
	System.out.println("Tổng của dãy đã cho là: "+sum);
}

}
ct2:
package baitapcuacorejava;

public class Bai53 {

public static void main(String[] args) {
	// TODO Auto-generated method stub
	int k=1,i=1;
	int fact=1;
	int sum=0;
	for(k=1;k<=7;k++)
	{
		for(i=1;i<=k;i++)
			fact*=i;
		sum+=fact;
	}
	System.out.println("Tổng của dãy đã cho là: "+sum);
}

}
Ngoài ra trong Eclipse tại sao hàm import java.util.Scanner; đã được khai báo nhưng lúc nhập dữ liệu cho 1 biến n nào đó thì lỗi token never used;

Hoàng Lâm Nguyễn viết 22:04 ngày 30/09/2018

Mình mới học C được 1 tháng thôi nên nói sai thì bỏ qua nha, chỗ dòng for lúc lặp thì gán i=1 còn vòng while ko thấy gán i=1 phía trên while nên lặp lần thứ 2 i bị sai. ko biết mình nghĩ vậy có đúng ko.

Hoàng Lâm Nguyễn viết 21:57 ngày 30/09/2018

thử thêm int i=1; trên dòng while xem ra đúng ko bạn

nguyen tuan viết 22:02 ngày 30/09/2018

Đồng ý với bạn này , bạn thớt test thử xem

Bài liên quan
0