פורסם 2009 ביולי 1016 שנים 1) איך ניתן לייצר משתנה מסוג int אך שיכיל רק 2 ספרות וגם יוכל להתחיל בסיפרה אפס? (למשל 00, 01, 02 ..)2) איך הופכים שבר עשרוני לשבר פשוט (רגיל) כך שהמשתמש יוכל להבין? (למשל 1.333 יוצג כ- 1/3)תודה
פורסם 2009 ביולי 1016 שנים אין דרך מובנית בשפה לעשות את זה.במקרה הראשון, אתה צריך להגביל בעצמך את המשתנה לשתי ספרות (כלומר לעשות לו 100 % אחרי כל פעולה).משתנה מטיפוס int לא יכול להתחיל בספרה אפס. אתה יכול להחזיק במקומו מחרוזת (string), אבל אז תצטרך לעשות את כל ההמרות. אופציה שניה, בהנחה שאיכפת לך מהאפס המוביל רק בהדפסה, היא להשתמש ב-String.Format (חפש ב-msdn איך משתמשים בה).אופציה נוספת היא להגדיר קלאס חדש שייצג מספר דו ספרתי, ואז תוכל להגדיר את פעולות הכפל, החיבור וההדפסה שלו איך שאתה רוצה (ככה שהן יגבילו אותו לשתי ספרות בלבד).עבור 2, תיאורטית אין דרך לעשות את זה, כי אתה לא יכול לדעת אם בהכרח 0.3333 זה 1/3, או שיכול להיות שהתוצאה היא דווקא 3333/10000 (שזה רק קרוב לשליש, אבל לא בדיוק).מעשית יש כל מיני דרכים לקרב, אבל אין שום דבר מובנה כזה בשפה.אופציה נוספת היא מראש לבצע את כל החישובים באמצעות שברים פשוטים בלבד (ובשביל זה תצטרך להגדיר קלאס שיכיל "מספר רציונלי" ויידע לבצע את החישובים האלה).
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.