מחלקת Math
הוצגמעקב אחר טווח אקראי בשתי הקצוות
- הכרטיסיות זקוקות לתוויות שלמות מ-4 ועד 9 כולל. השתמש ב-(int)(Math.random() * 6) + 4.
- סקיילिंग נותן ערכים מ0 ועד אך לא כולל ⟨6; טרונקינג נותן 0 דרך 5; הזזה נותן 4 דרך 9.
ערכת הכלים המתמטית
- המחלקה
Mathהיא ספריית מתודות קלאס וקבועים מוכנים מראש. אין צורך ב-import או באובייקט — רק קרא לMath.something(...). - היא מכסה חזקות, שורשים, עיגול, ערך מוחלט, מינימום/מקסימום ועוד. בחר את המתודה שבה קלט, סוג הפלט והמשמעות המתמטית תואמים למשימה; לא לכל קלט יש תוצאה רגילה וסופית.
שיטות נפוצות לבחינות AP
Math.abs(x)— ערך מוחלט:Math.abs(-5)הוא5.Math.pow(b, e)—bבחזקהe:Math.pow(2, 3)הוא8.0.Math.sqrt(x)— שורש ריבעי:Math.sqrt(9)הוא3.0.Math.max(a, b)/Math.min(a, b)— הגדול / הקטן משני ערכים.
מספרים אקראיים
Math.random()מחזירהdoubleבטווח0.0ומעלה (אך לא כולל)1.0. קנה מידה והזז אותה עבור טווח:(int)(Math.random() * 6)נותן0–5.- הוסף
1לקבלת גלגלת קובייה:(int)(Math.random() * 6) + 1נותן1–6. עבור רוחב שלם חיובי וקטן n שהתוויות הנובעות ממנו יכנסו ב-int,(int)(Math.random() * n) + startנותן n תוויות שלמות אפשריות. עבור 4 ועד 9 כולל, n הוא9 - 4 + 1 = 6.
בניית הבערת קובייה באמצעות Math.random()
שקל, חתוך ואז הזז כדי לקבל 1-6.
מה שווה Math.pow(2, 3) (כמספר)?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
2 חזקה 3 = 8 (מוחזר כערך כפול 8.0).
Math.sqrt(9) מחזיר ערך מה סוג?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
sqrt תמיד מחזיר ערך מסוג double — יש להמיר לסוג int כדי להשתמש בו.
Math.random() מחזיר ערך מסוג double בטווח איזה?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
[0.0, 1.0) — הגבול העליון 1.0 לעולם אינו מוחזר.
איזה ביטוי נותן מספר שלם אקראי מטווח 1 עד 6?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
הגדלה פי 6 → 0..5, חיתוך, ואז +1 → 1..6.
מה התוצאה של Math.abs(-5)?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
ערך מוחלט של −5 הוא 5.
השם לבסוגי ההחזרה
Math.powוMath.sqrtתמיד מחזירותdouble(למשל8.0, לא8). כדי להשתמש בתוצאה כ-int, עליך לבצע המרה:(int) Math.pow(2, 3).Math.random()גם היאdouble— בצע המרה לאחר קנה המידה, ולא לפני. הערבוב ביןintלdoubleהוא טעות קלאסית במחלקת Math.
Math.pow ו-Math.sqrt מחזירים double, לא int. Math.pow(2, 3) הוא 8.0; אחסן אותו ב-double, או המר סוג כדי להשתמש בו כ-int. וה-Math.random() מחזיר double ב-[0.0, 1.0); הגבול העליון 1.0 לעולם אינו מוחזר. בנה טווח של מספרים שלמים עם (int)(Math.random() * n) + start.
Order the operations that build labels 4 through 9.
Difficulty 3/5 · 200 coins + a small bonus on first completion today
Scaling must happen before the cast; otherwise every initial cast is zero.
עבור התוויות 4 עד 9, הצבו u=0 בביטוי (int)(u * 6) + 4. איזו תווית תקבלו?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
הערך המוקנה והמומסר הוא אפס, ואז מוסף 4.
Math.sqrt(-1) זורק יוצא מן הדרך במקום להחזיר תוצאה מסוג double.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
הוא מחזיר את ערך ה-double המיוחד NaN; זה שונה מזורק יוצא מן הדרך.
השלכת קובייה אקראית (1–6):
Math.random()→ ערך כפול כמו0.42.Math.random() * 6→0.0עד אך לא כולל6.0(כמו2.52).(int)(Math.random() * 6) + 1→ חיתוך ל-2, ואז+1→3.
להעביר את הניתוח למקרה חדש
- המרה לפני קנה המידה,
(int)Math.random() * 6 + 4, תמיד נותנת 4. בדוק u=0 וערך מייצג קצת מתחת ל1 ב-(int)(u * 6) + 4: הקצוות האפשריים הם 4 ו9; u=1 מחוץ לטווח המתודות האקראיות. - מתודות הספרייה גם הן מתנהגות בגבולות:
Math.sqrt(-1)מחזירה NaN, וMath.abs(Integer.MIN_VALUE)מחזירה אותו שלם שלילי זה כי הגודל החיובי שלו אינו מכנס ב-int. הדוגמה הרגילה abs(-5)=5 עדיין תקפה.
הקلاس Math מספק שיטות סטטיות: abs, pow, sqrt, max, min, ו-random. pow/sqrt מחזירות double (המר סוג עבור int). Math.random() מחזירה double ב-[0.0, 1.0); בנה טווח של שלמים עם (int)(Math.random() * n) + start.