פורסם 2006 ביוני 2419 שנים מחבר אוי התייאשתי כבר, חיפשתי בכל מקום וכל מה שאני מוריד לא טוב, באימיול זו הגרסה היחידה נראה לי....מאיפה אתה הורדת את זה? אתה לא יכול להביא לי קישור?ואחי אין לי אייסי, אפשר בפרטי. אבל למה מה הבעיה למה אי אפשר פה?
פורסם 2006 ביוני 2519 שנים מחבר תודה, כבר התקנתי את זה וזה לא עבד טוב, אז קיצר אני חוזר לגרסה 4.5 שעבדה הכי נורמלי אצלי. עכשיו רק דבר אחד, הנה כתבתי תוכנה שמכניסים בה 3 מספרים והיא מחשבת את הממוצע שלהם: http://pics.sendit.co.il/pic/d556605265.jpg ואני אני מפעיל אותה, ואני מכניס 3 מספרים והכל, ואז היא מראה לי את התוצאה:
פורסם 2006 ביוני 2519 שנים מחבר וואלה אחי עשיתי מה שאמרת וזה הלך טוב. אבל איך זה הגיוני? הרי לפי מה שכתוב במדריך ב-UNDERWAR , הסימן if% מציין מספר רציונלי. ומספר שלם זה בכלל d% . וחוץ מזה התוכנה עצמה שכתבתי עכשיו היא מועתקת מהמדריך וככה זה כתוב שם בדיוק....עריכה: וואי עכשיו בדקתי במדריך אחר, וראיתי משתנה דומה שנקרא FLOAT, שאפשר להכניס בו כל מספר (שלם או רציונלי) ובתוצאה (של חיבור/חיסור וכו') הוא מציג את התוצאה בדיוק, גם אם מכניסים מספרים שלמים, וגם אפשר להכניס ערכים גדולים יותר. אז למה בעצם צריך את DOUBLE?
פורסם 2006 ביוני 2619 שנים אין לי מושג מה זה אומר if, אולי זו סתם שגיאת דפוס.מספר שלם זה יכול להיות d או i.תקרא כאן http://www.cplusplus.com/ref/cstdio/printf.htmlDouble הוא קיצור של double precision floating point.(בניגוד ל-float, שהוא סתם קיצור של floating point)double משתמש ביותר ביטים בשביל לייצג את המספר (במעבדי 32 ביט, float הוא 16 ביט ו-double הוא 32 ביט), ולכן מגיע לרמת דיוק יותר גבוהה.פעם (על מעבדי 16 ביט) היה עדיף להשתמש ב-float, כי העבודה איתו הייתה יותר מהירה מאשר עם double וגם הוא תופס פחות מקום.היום עדיף לעבוד עם double, כי ה-ALU (יחידת העיבוד האריתמטית) עובדת עם double-ים ולא עם float-ים. הסיבה היחידה להשתמש ב-float-ים היא אם באמת ההבדל בגודל משמעותי מבחינתך.
פורסם 2006 ביוני 2619 שנים מחבר הנה תראה במדריכים פה:http://www.underwar.co.il/library.asp?Page=Programming ופה: http://clang.eitan.ac.il/index.php?doc=chp&id=2 אומרים ש-%IF זה הסימן שמשתמשים לDOUBLE. זה לא יכול להיות שגיאת כתיב כי זה מופיע בכל המדריך ככה... ולא הבנתי איך בדיוק DOUBLE \ה יותר מדוייק? הנה קח לדוגמא את התוכנית הזו: כאן אתה יכול לכתוב איזה שני מספרים שבא לך- שלמים או שברים - והתוצאה תיהיה מדויקת. לעומת זאת אם תשנה לDOUBLE בכלל לא תיהיה תוצאה קשורה, וכדי לקבל תוצאה בעזרת DOUBLE נראה לי שצריך לעשות CASTING או משהו כזה.... וגם אתה יכול להכניס בFLOAT ערך גדול יותר. אז למה להתסבך סתם? אולי תראה לי דוגמא לשימוש בDOUBLE כך שלא משנה איזה שני מספרים תכניס- התוצאה תיהיה טובה
פורסם 2006 ביוני 2619 שנים א) מה זה מדוייק יותר?ב) לא משנה המספר הכי גבוה שאתה יכול להכניס, אלא מספר הספרות הנכונות אחרי הנקודה.ג) אם אתה רוצה מספר ממש גדול, עם דיוק, תיקח 2 LONGים - אחד יהייה אחרי הנקודה, ואחד אחרי(אתה יכול ליצור ממשק שיממש את זה).
פורסם 2006 ביוני 2619 שנים מחבר זה לא רק מספר גדול, זה כל מספר.יודע מה תראה לי תוכנית שקולטת מהמשתמש 2 מספרים, ומדפיסה את החיבור שלהם . או תוכנית, שקולטת 3 מספרים ומדפיסה את הממוצע שלהם .בשימוש בDOUBLE כמובן
פורסם 2006 ביוני 2619 שנים double d1, d1;scanf("%f%f", &d1, %d2);printf("%f", (d1+d1)/2);אני לא מבין מה הבעיה.
פורסם 2006 ביוני 2619 שנים מדויק יותר = אתה יכול לשים יותר ספרות אחרי הנקודה. ולגבי ה-if - זה lf, לא if (כלומר L ולא I). זה לא שגיאת כתיב במקרה הפשוט שנתת באמת אין עדיפות של double על float, אבל יש במקרים של חישובים יותר מורכבים יש עדיפות. אם נניח אני ארצה לחשב ממוצע של מספרים קצת יותר מסובכים, כמו 5.246982398794 + 6.34987928734, עדיף להשתמש ב-double.
פורסם 2006 ביוני 2719 שנים אין לי מושג מה זה אומר if, אולי זו סתם שגיאת דפוס.מספר שלם זה יכול להיות d או i.תקרא כאן http://www.cplusplus.com/ref/cstdio/printf.htmlDouble הוא קיצור של double precision floating point.(בניגוד ל-float, שהוא סתם קיצור של floating point)double משתמש ביותר ביטים בשביל לייצג את המספר (במעבדי 32 ביט, float הוא 16 ביט ו-double הוא 32 ביט), ולכן מגיע לרמת דיוק יותר גבוהה.פעם (על מעבדי 16 ביט) היה עדיף להשתמש ב-float, כי העבודה איתו הייתה יותר מהירה מאשר עם double וגם הוא תופס פחות מקום.היום עדיף לעבוד עם double, כי ה-ALU (יחידת העיבוד האריתמטית) עובדת עם double-ים ולא עם float-ים. הסיבה היחידה להשתמש ב-float-ים היא אם באמת ההבדל בגודל משמעותי מבחינתך.בתיקון קל - ברוב המעבדים היום וכן בתקנים הנפוצים (לדוגמא IEEE 754) מספרי single precision הם 32bit ו-double הם 64bit.על כן double יהיה 64 ו-float יהיה 32.
פורסם 2006 ביוני 2719 שנים מחבר double d1, d1;scanf("%f%f", &d1, %d2);printf("%f", (d1+d1)/2); אני לא מבין מה הבעיה. תראה מה הבעיה- כתבתי את התוכנית הזאתי (רק עם תיקונים קטנים, שמת % במקום &, ורשמת פעמיים D1). ותראה מה התוצאה הייתה: מדויק יותר = אתה יכול לשים יותר ספרות אחרי הנקודה. ולגבי ה-if - זה lf, לא if (כלומר L ולא I). זה לא שגיאת כתיב במקרה הפשוט שנתת באמת אין עדיפות של double על float, אבל יש במקרים של חישובים יותר מורכבים יש עדיפות. אם נניח אני ארצה לחשב ממוצע של מספרים קצת יותר מסובכים, כמו 5.246982398794 + 6.34987928734, עדיף להשתמש ב-double. רגע אז מתי צריך להשתמש בLF ?
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.