כותב |
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 04 October 2007 בשעה 12:35 | | IP רשוּם
|
|
|
|
המורה הביאה לנו 5 תרגילים ואני לא מצליח 2 אני אודה לכם אם תעזרו לי לפתור
שאלה 1:
ציטוט:
כתוב תוכנית הקולטת 10 זוגות של מספרים חיוביים.
הפלט הוא המספר המינימאלי מבין כל המספרים הגדולים בכל
זוג וכן מספר זוג (1-10) שבו הופיע המספר המינימאלי.
לדוגמא:
עבור הקלט :
12 5
23 45
1 8
9 71
17 6
7 12
8 61
5 19
14 62
2 10
הפלט הוא: המספר המינימאלי מבין כל המספרים הגדולים בכל
זוג הוא 8
הוא
מופיע בזוג מספר 3
הערה:
ניתן להניח שהקלט תקין.
|
|
|
שאלה 2:
ציטוט:
בבית ספר נערך מבצע איסוף של 2 סוגי חפצים לצורך מיחזור –
בקבוקי פלסטיק וסוללות.
בבית הספר הוכרזה תחרות איסוף בין שכבות ט' ו - י' .
מספר התלמידים הלומדים בשתי השכבות הוא 400.
במהלך התחרות אספו התלמידים פריטים המיועדים למיחזור. כל
פריט זיכה את השכבה בנקודות באופן הזה:
·
עבור בקבוק פלסטיק – 3 נקודות
·
עבור סוללה – 7 נקודות
שכבה שצברה את מספר הנקודות הגדול ביותר נצחה בתחרות .
כתבו תוכנית שתקלוט עבור כל תלמיד את מספר השכבה ( 1
עבור שכבת ט', 2 עבור שכבת י'), את מספר בקבוקי הפלסטיק שאסף ואת מספר הסוללות
שאסף. ( 0 הוא קלט תקין ).
התוכנית תסכם את מספר הנקודות שקבלה כל שכבה.
הפלט יהיה השכבה המנצחת ומספר הנקודות שצברה.
אם שתי הכבות צברו אותו מספר
נקודות הפלט יהיה תיקו – draw .
הערה:
ניתן להניח שהקלט תקין.
|
|
|
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 04 October 2007 בשעה 12:35 | | IP רשוּם
|
|
|
|
אני מצטער שזה יצא גדול, אני לא הצלחתי להקטין =[
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 04 October 2007 בשעה 13:49 | | IP רשוּם
|
|
|
|
(1)
2 משתנים: MIN, המספר הכי קטן עד כה, ו-MINROW, מספר השורה הכי קטנה.
קולט 10 זוגות מספרים בלולאת FOR, לכל אחד מהם שומר במשתנה X את המספר הקטן
מבין השניים, אם זאת הריצה הראשונה של הלולאה (I == 1) או ש-X קטן מ-MIN אז
שומר את X ב-MIN ואת I ב-MINROW.
וזהו, בסוף מדפיס את MIN ו-MINROW.
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 04 October 2007 בשעה 13:53 | | IP רשוּם
|
|
|
|
shoshan כתב:
(1)
2 משתנים: MIN, המספר הכי קטן עד כה, ו-MINROW, מספר השורה הכי קטנה.
קולט 10 זוגות מספרים בלולאת FOR, לכל אחד מהם שומר במשתנה X את המספר הקטן
מבין השניים, אם זאת הריצה הראשונה של הלולאה (I == 1) או ש-X קטן מ-MIN אז
שומר את X ב-MIN ואת I ב-MINROW.
וזהו, בסוף מדפיס את MIN ו-MINROW.
|
|
|
תודה! זה עזר לי מאוד =]
אני אנסה עכשיו לכתוב את זה ב- JCreator
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 04 October 2007 בשעה 13:55 | | IP רשוּם
|
|
|
|
(2) לא צריך מערכים כמובן, צריך רק משתנה של מספר הנקודות של כל שכבה,
לצורך נוחות
נגדיר בתור מערך בגודל 2, P.
מאתחלים את P במקום 0 ו-1 ל-0.
עושים לולאה שרצה 400 פעמים.
קולטת I, מספר שכבה, ומורידה ממנו 1.
קולטת X, מספר בקבוקים.
קולטת Y, מספק סוללות.
ואז
בסוף בודקים מי יותר גדול, P במקום 0 או P במקום 1, ומדפיסים פלט ומספר נקודות
בהתאם.
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 04 October 2007 בשעה 15:27 | | IP רשוּם
|
|
|
|
shoshan כתב:
(2) לא צריך מערכים כמובן, צריך רק משתנה של מספר הנקודות של כל שכבה,
לצורך נוחות
נגדיר בתור מערך בגודל 2, P.
מאתחלים את P במקום 0 ו-1 ל-0.
עושים לולאה שרצה 400 פעמים.
קולטת I, מספר שכבה, ומורידה ממנו 1.
קולטת X, מספר בקבוקים.
קולטת Y, מספק סוללות.
ואז
בסוף בודקים מי יותר גדול, P במקום 0 או P במקום 1, ומדפיסים פלט ומספר נקודות
בהתאם. |
|
|
תודה מאוד, שום פעם אתה עוזר =] אבל אתה יכול בבקשה להסביר לי את הקטע הבא? (לא הבנתי )
קוד:
נגדיר בתור מערך בגודל 2, P.
מאתחלים את P במקום 0 ו-1 ל-0.
|
|
|
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 04 October 2007 בשעה 15:36 | | IP רשוּם
|
|
|
|
P - מערך בגודל 2
למדת/ם מערכים ?
אם לא פשוט תכריז משתנה P1 ומשתנה P2.
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 04 October 2007 בשעה 20:31 | | IP רשוּם
|
|
|
|
shoshan כתב:
P - מערך בגודל 2
למדת/ם מערכים ?
אם לא פשוט תכריז משתנה P1 ומשתנה P2. |
|
|
אהה, תודה עכשיו הבנתי
לא למדנו מערכים אבל אני יודע איך להכריז על 2 המשתנים הללו
אני ממש מודה לך, אין לי הרבה זמן אז רק מחר אני אנסה לעשות את התרגילים אתה מאוד עזרת לי, תודה תודה תודה
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 05 October 2007 בשעה 12:53 | | IP רשוּם
|
|
|
|
shoshan,
בבקשה תעזור לי עם שאלה 2
אני מסתבך עם הלולאה, זה קשה לי T_T
קוד:
import java.util.*;
class mihzur
{
static Scanner reader = new Scanner (System.in);
public static void main (String[]args)
{
int P, P1, P2, bakbookim, solelot, nekudot;
for (int i=0; i<3; i++);
{
System.out.println("'הקלד את מספר השכבה, 1 ט', 2 י");
P=reader.nextInt();
while (P==1)||(P==2);
{
if (P==1)
P1++;
else
p2++;
}
System.out.println("הכנס את מספר הבקבוקים שאספת");
bakbookim=reader.nextInt();
System.out.println("הכנס את מספר הסוללות שאספת");
solelot=reader.nextInt();
nekudot=bakbookim*3+solelot*7;
System.out.println("nekudot");
}
System.out.println("nekudot");
}
}
|
|
|
בבקשה T_T
תודה מראש
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 05 October 2007 בשעה 15:37 | | IP רשוּם
|
|
|
|
את הלולאת whilE תוריד,
אחרי שחישבת את הנקודות אם P שווה 1 תוסיף אותן ל-P1, אחרת תוסיף אותן ל-P2.
ורק בסוף תבדוק איזו שכבה ניצחה וכמה נקודות יש לה (:
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 05 October 2007 בשעה 16:04 | | IP רשוּם
|
|
|
|
shoshan כתב:
את הלולאת whilE תוריד,
אחרי שחישבת את הנקודות אם P שווה 1 תוסיף אותן ל-P1, אחרת תוסיף אותן ל-P2.
ורק בסוף תבדוק איזו שכבה ניצחה וכמה נקודות יש לה (: |
|
|
זה קשה הכל מתבלבל לי T_T
הורדתי את הלולאת WHILE וכתבתים במקום זה
קוד:
if (P==1)
P1++;
else
P2++;
|
|
|
אבל אני מקבל את השגיאה
variable P1 might not have been initialized
אותה השגיאה גם על P2
אנחנו לא למדנו הרבה JAVA בכתה י' בגלל שכל השביתות היו לנו על מחשבים אז אני מצטער על טמטומי הרב אם אפשר בבקשה תכתוב לי איזה חלק קטן מהלולאה \ איזשהו קוד שיעזור לי לפתור את התרגיל אני ממש רוצה לסיים את זה ואני לא מצליח T_T
תודה מראש, מצטער שאני מבקש הרבה
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 05 October 2007 בשעה 16:58 | | IP רשוּם
|
|
|
|
P1 ו-P2 זה לא הנקודות ?
למה בכלל יש את הקוד הזה שמוסיף להן 1 ??
אני לא יודע JAVA אז אני אכתוב לוגיקה.
קוד:
int p, p1, p2, bakbukim, batariot, points;
for (int i = 0 ; i < 400 ; ++i)
{
writeln("הכנס 1 לשכבת ט', 2 לשכבת י'");
readln(p);
writeln("מספר בקבוקים:");
readln(bakbukim);
writeln("מספר בטריות:");
readln(batariot);
points = 7*batariot+3*bakbukim;
if (p == 1)
p1 += points;
else
p2 += points;
}
if (p1 == p2)
writeln("תיקו, שתי השכבות זכו ב", p1, "נקודות");
else if (p1 > p2)
writeln("ט' ניצחו, ", p1, "נקודות");
else
writeln("י' ניצחו, ", p2, "נקודות"); |
|
|
רק תחליף את writeln לאיך שמדפיסים ב-JAVA ואת readln לאיך שקולטים
מספרים ב-JAVA.
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 05 October 2007 בשעה 18:01 | | IP רשוּם
|
|
|
|
תודה רבה,
אני שיניתי לשפת JAVA וזה עושה לי רק 2 שגיאות על השורה הזאת:
if (p1==p2)
השגיאה היא:
variable p1 might not have been initialized אותו הדבר על p2
אני לא מבין מה הבעיה, לי זה נראה אחלה. לפי דעתי עשית עבודה מעולה, אני אגיש את זה ככה למורה והיא כבר תתקן את הטעות.
ד"א בקשה לשאלה מספר 1, היא עובדת לי מעולה, אתה ממש עזרת לי יש לי רק ממש בעיה קטנה זה מדפיס לי בכל זוג את המספר המינימלי מביניהם (בכל "סיבוב" זה מדפיס את המספר הכי קטן) אבל בסוף ה-10 סיבובים זה מדפיס את ההכי קטן מכולם. אבל אתה יודע איך אפשר לסדר שזה לא ידפיס את המספר הכי קטן מביניהם?
אם לא, זה לא נורא, כי בכל מקרה זה מדפיס בסוף את המספר הכי קטן מבין כל ה- 10 זוגות, זה פשוט קצת מציק P:
תודה רבה על העזרה
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 05 October 2007 בשעה 21:18 | | IP רשוּם
|
|
|
|
בקשר לשאלה השנייה, לא, צריך באמת לאתחל לפני הלולאה את p1 ו-p2 ל-0.
בשאלה הראשונה לא הבנתי, אבל לא משנה, כבר תדברו על זה עם מי שצריך לדבר על זה (:
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|