ABA


"איך ניתן לבצע חישובים ממש ממש גדולים?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #10217 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 10217
MrSus
חבר מתאריך 8.5.09
1801 הודעות
   18:46   03.01.11   
אל הפורום  
  איך ניתן לבצע חישובים ממש ממש גדולים?  
 
   האם יש אפשרות לעשות חישובים על מספרים ממש ממש גדולים כדוגמת 4 בחזקת 10,000 וכד'?
האמת המחשב האישי בכלל מסוגל לבצע חישובים כאלה?


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  דווקא 4 בחזקת 10,000? ldan192  03.01.11 19:53 1
  מתוכן השאלה שלך זה נראה Net_Boy  03.01.11 20:50 2
     אוקיי אני אנסח מחדש MrSus 03.01.11 21:10 3
         אתה מנסה לחשב את החישובים האלה רקורסיבית? ldan192  03.01.11 22:22 4
             סתם משהו הכי פשוט בעולם MrSus 03.01.11 22:27 5

       
ldan192 
חבר מתאריך 14.9.08
95119 הודעות
   19:53   03.01.11   
אל הפורום  
  1. דווקא 4 בחזקת 10,000?  
בתגובה להודעה מספר 0
 

unsigned long num = 1, count = 10000;
while (--count) num *= 4;

חישוב שכל מחשב יבצע בלי להזיע

הבעיה היא בחישובים וקירובים, למשל הספרה המשהו שבפאיי
ואז שוב מסתמכים על קירובים עם שגיאה מסויימת... לרוב זה מספיק טוב.


בברכה,
עידן


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   20:50   03.01.11   
אל הפורום  
  2. מתוכן השאלה שלך זה נראה  
בתגובה להודעה מספר 0
 
   כאילו אתה שואל אם יש משתנה שיכול להכיל את התוצאה של החישוב שרצית
משתנה בסיסי ופרימיטיבי אין אבל אפשר לארגן מחלקה שתאפשר הכלה של מספרים מאד מאד גדולים.

לגבי חישובים, הכל אפשרי השאלה כמה זמן יקח לחישוב להתבצע. זה משהו שמודדים בסיבוכיות ולא מה המחיר של פעולה אטומית.
לדוגמא פונקציות מסדרי גודל של n! או n^n יקחו המון המון זמן לביצוע עבור קלטים קטנים יחסית.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MrSus
חבר מתאריך 8.5.09
1801 הודעות
   21:10   03.01.11   
אל הפורום  
  3. אוקיי אני אנסח מחדש  
בתגובה להודעה מספר 2
 
   אני עובד עם VB ולמשל כשאני רוצה לבצע את החישוב (ללא משתנים דווקא) 4^10000
הוא נותן שגיאה של STACK OVERFLOW.. כאילו הוא לא יכול לבצע חישובים כ"כ גדולים.

אז הכוונה שלי האם יש אפשרות לעקוף את זה..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ldan192 
חבר מתאריך 14.9.08
95119 הודעות
   22:22   03.01.11   
אל הפורום  
  4. אתה מנסה לחשב את החישובים האלה רקורסיבית?  
בתגובה להודעה מספר 3
 
יש לך דוגמאת קוד?


בברכה,
עידן


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MrSus
חבר מתאריך 8.5.09
1801 הודעות
   22:27   03.01.11   
אל הפורום  
  5. סתם משהו הכי פשוט בעולם  
בתגובה להודעה מספר 4
 
   MsgBox 4^10000

ללא משתנים.. אני לא בדיוק יודע מה ההגבלות של VB בנוגע לביצוע חישובים אבל זה נראה לי מוזר שזה לא מצליח לבצע חישוב כזה.. וגם באופן תאורטי אם החישוב הזה היה לוקח שעה, הייתי מצפה שיבצע אותו ושייקח שעה אבל שלא יחזיר שגיאה של OVERFLOW.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net