มือใหม่นะคะ โค้ดอาจมั่วๆ เป็นการบ้านค่ะ
คือรู้สึกมันแปลๆ แต่ก็ได้ผลลัพธ์ตามโจทย์นะคะ แต่ก็รู้สึกเหมือนมันแปลกๆน่ะค่ะ
เอาเฉพาะช่วงหาค่าของเลขนะคะ จะเริ่มจาก for เลย
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้num1[] คืออาร์เรย์
num2 คือค่าตัวเลขถอดรูท
num3 คือค่าตัวเลขหารสอง
***ก่อนหน้านี้เข้า for loop เพื่อเอาตัวเลขจาก 2 ถึงเลขที่คีย์เข้าอาร์เรย์แล้วค่ะ
int i;
for (i = 2; i <= num2; i++)
{
int j;
for (j = 2; j <= num3; j++){
if (i * j < num){
num1[i*j] = 0;
}
}
}
for (i =2; i <= num3; i++)
{
num1[i*2] =0;
}
หลังจากนี้เข้า for loop อีกเรอบเพื่อแสดงค่าในอาร์เรย์ที่ไม่เท่ากับ 0 ค่ะ
คือขอคำแนะนำทีค่ะ รู้สึกเหมือนทำซ้ำซ้อนยังไงก็ไม่รู้ค่ะ
ลองหาโค้ดของคนอื่นๆดูตาม google แล้วค่ะ แต่ด้วยความมือใหม่ดูแล้วงงบ้างเข้าใจบ้าง ก็เลยเอาตามที่ตัวเองทำมาโพสถามดูค่ะ
และไม่รู้ว่าที่ท่านอื่นๆโพสตามเว็บจะใช่วิธีแบบ Sieve of Eratosthenes รึเปล่าด้วยค่ะ ขนาดของตัวเองยังไม่มั่นใจเท่าไหร่
ขอบคุณค่ะ
ขอคำแนะนำ หาค่า prime โดยวิธี Sieve of Eratosthenes ภาษาซี ช่วยเช็คให้หน่อยค่ะ
คือรู้สึกมันแปลๆ แต่ก็ได้ผลลัพธ์ตามโจทย์นะคะ แต่ก็รู้สึกเหมือนมันแปลกๆน่ะค่ะ
เอาเฉพาะช่วงหาค่าของเลขนะคะ จะเริ่มจาก for เลย
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้
คือขอคำแนะนำทีค่ะ รู้สึกเหมือนทำซ้ำซ้อนยังไงก็ไม่รู้ค่ะ
ลองหาโค้ดของคนอื่นๆดูตาม google แล้วค่ะ แต่ด้วยความมือใหม่ดูแล้วงงบ้างเข้าใจบ้าง ก็เลยเอาตามที่ตัวเองทำมาโพสถามดูค่ะ
และไม่รู้ว่าที่ท่านอื่นๆโพสตามเว็บจะใช่วิธีแบบ Sieve of Eratosthenes รึเปล่าด้วยค่ะ ขนาดของตัวเองยังไม่มั่นใจเท่าไหร่
ขอบคุณค่ะ