27-11-2007, 16:23
|
|
|
חבר מתאריך: 03.04.07
הודעות: 242
|
|
מכיוון שאתה יודע את הטווח העליון של המספרים הראשוניים (100) אתה יכול לגשת אל הבעיה מכיוון אחר, כיוון של "נפה", לדוגמא: Sieve of Eratosthenes. בשיטה הזאת אתה מנצל את התכונה של המספרים הראשוניים שהם מרכיבים את כל שאר המספרים האחרים (אבני הבניין). מה שאתה עושה זה דבר כזה: מדפיס רשימה של כל המספרים בטווח שלך (מהמספר 2 עד הגבול העליון - אצלך הוא 100) (במקום להדפיס, אתה יכול לאחסן במערך), במקרה שלך המערך יהיה
קוד:
(2,3,4,5,6,7,8...100)
ואז אתה מתחיל לעבור עליו: כל פעם המספר הראשון ברשימה יהיה ראשוני, אם הוא מעל 50 - תדפיס אותו , אבל בכל מקרה תמחק את כל הכפולות של המספר הזה (2,4,6,8,10,12 וכו'). עכשיו אחרי שמחקת את כולם, שוב פעם המספר הראשון יהיה ראשוני, ולכן אם הוא גדול מ 50 תדפיס אותו, ובכל מקרה תמחק את כל הכפולות שלו מהרשימה.
יש לי כבר בראש איך בערך לממש אותו, אבל זאת עבודה שלך (ואני ממליץ להכנס ללינק שהבאתי ולראות איך השיטה עובדת).
_____________________________________
חתימתכם הוסרה כיוון שלא עמדה בחוקי האתר. לפרטים נוספים לחצו כאן. תוכלו לקבל עזרה להתאמת החתימה לחוקים בפורום חתימות וצלמיות.
|