עבור לתוכן

חיפוש closestPrime בJAVA ..

Featured Replies

פורסם

יש לי פונקציה שמוצאת מספר ראשוני

יש לי פונקציה שנותנת מערך של ראשונים בתחום מסוים

עכשיו איך אני לכל הרוחות עושה פוקנציה שמקבל מספר שלם ומחזירה את המספר הראשוני הסמוך לו כאשר הפעלת הפונקציה על המספר 27 תחזיר את הערך 29 , והפעלת הפונקציה על 20 תחזיר 19 , במקרים של שוויון למשל עבור הערך 9 הפונקציה צריכה להחזיר

את הקרוב ביותר מלמטה 7.

בתור התחלה עשיתי כמובן שאם המספר שאני מקבל הוא ראשוני אז מן הסתם שיחזיר את עצמו אבל מעבר לזה אני לא יודע מה לעשות..

תודה

פורסם

אין דרך פשוטה יותר מלבדוק את כל המספרים בסביבה של המספר הנתון.

פורסם
  • מחבר

כן אבל פשוט לא כולכך מבין איך לעשות את זה..

פורסם

int i = 0;
while (true)
{
if (isPrime(n-i))
return n-i;
else if (isPrime(n+i))
return n+i;
else
i += 1;
}

כמובן בהנחה ש-n הוא המספר המקורי.

פורסם
  • מחבר

אחלה תודה

פורסם

תוודא ש-n > 1 אחרת (תלוי במימוש של isprime) הפונקציה עלולה לא לעצור לעולם.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים