Hỏi về dòng lệnh ok trong code

đây là ct tính tổng snt

int n, i, x, ok, tong = 0;
do
{
    Console.Write("Nhap n: ");
    n = int.Parse(Console.ReadLine());
} while (n < 2);
for (x = 2; x <= n; x++)
{
    ok = 1;
    for (i = 2; i <=Math.Sqrt(x); i++)
    {
        if (x % i == 0)
            ok = 0;
    }
    if (ok == 1)
        tong = tong + x;
}
Console.Write("Tong cac so nguyen to tu 1 den {0}={1}", n, tong);
Console.ReadKey();

em cám ơn

int n, i, x, ok, tong = 0;
do
{
    Console.Write("Nhap n: ");
    n = int.Parse(Console.ReadLine());
} while (n < 2);
for (x = 2; x <= n; x++)
{
    ok = 1;// gán giá trị mạc định cho ok, nếu 1 thì tổng sẽ được cộng lên
    for (i = 2; i <=Math.Sqrt(x); i++)
    {
        if (x % i == 0)// check nếu x mà chia hết cho i thì nó không phải là số nt
            ok = 0;// thay đổi giá trị ok để ngăn không cho tổng tăng
    }
    if (ok == 1)// ok đã đúng là 1, đã check x đúng là số nguyên tố
        tong = tong + x;
}
Console.Write("Tong cac so nguyen to tu 1 den {0}={1}", n, tong);
Console.ReadKey();
1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?