עבור אל תוכן

חוקי הפורום - נא לקרוא

תמונה

אשכול חידות


  • אנא התחבר בכדי להגיב
1176 תגובות לנושא זה

#1021 avrahamcool

avrahamcool

    קול, אברהם קול.

  • ותיקים
  • *******
  • 5,704 הודעות

נכתב ב- ‎11/10/2011‏, ‎19:51

חידה בC# ששמעתי (אני מאמין שאפשר לפתור גם בשפות אחרות)

אתם קולטים 2 מספרים שלמים וצריכים להחזיר את המספר הגדול יותר. מותר להשתמש רק ב+,-,*,/.
* אסור להשתמש בתנאים ובמחלקה Math או כל מחלקה אחרת.

לא יודע אם זה עובד גם ב C#, אבל זה וודאי עובד ב C++.
למעט אם אחד המספרים הוא 0.

int var1,var2;
bool bool1,bool2;
cin >>var1 >>var2;
bool1 = var1/var2;
bool2 = var2/var1;
cout <<var1*bool1 + var2*bool2 - var1*bool1*bool2;


כן , כן , מלכים אין רק באגדות...

1411724.png


#1022 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎11/10/2011‏, ‎21:35


חידה בC# ששמעתי (אני מאמין שאפשר לפתור גם בשפות אחרות)

אתם קולטים 2 מספרים שלמים וצריכים להחזיר את המספר הגדול יותר. מותר להשתמש רק ב+,-,*,/.
* אסור להשתמש בתנאים ובמחלקה Math או כל מחלקה אחרת.

לא יודע אם זה עובד גם ב C#, אבל זה וודאי עובד ב C++.
למעט אם אחד המספרים הוא 0.
[left]
[/left]
int var1,var2;
bool bool1,bool2;
cin >>var1 >>var2;
bool1 = var1/var2;
bool2 = var2/var1;
cout <<var1*bool1 + var2*bool2 - var1*bool1*bool2;

כן המספרים תמיד גדולים מאפס שחכתי לכתוב את זה.רק שבתרגיל אסור גם להשתמש casting, אז צריך להשתמש בחילוק מספרים שלמים.
ככה שהמספר הקטן חלקי הגדול יחזיר לנו אפס ואז לשחק עם זה בעזרת כפל וחילוק (לא יודע אם זה ככה גם בC++).
  • ג'ולס ווינפלד אוהב את זה

#1023 avrahamcool

avrahamcool

    קול, אברהם קול.

  • ותיקים
  • *******
  • 5,704 הודעות

נכתב ב- ‎11/10/2011‏, ‎23:47

יש לי רעיון מסויים, ניסיתי ב C++ והוא לא עובד, אבל אולי ב C# זה כן.
אני מנסה להעזר בעיקרון (שגוי) שאם הוא רואה 0 במונה, הוא מתעלם מהמכנה ומחזיר 0 מייד.

cout <<((A/<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />/(A/<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />)*A + ((B/A)/(B/A))*B;


כן , כן , מלכים אין רק באגדות...

1411724.png


#1024 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎11/10/2011‏, ‎23:52

יש לי רעיון מסויים, ניסיתי ב C++ והוא לא עובד, אבל אולי ב C# זה כן. (אני לא מבין למה זה לא עובד גם ב C++, זה אמור לעבוד).

cout <<((A/<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />/(A/<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />)*A + ((B/A)/(B/A))*B;


A/B או B/A בc# יתן אפס, ואסור בC# לחלק באפס גם לא 0/0.
  • ג'ולס ווינפלד אוהב את זה

#1025 avrahamcool

avrahamcool

    קול, אברהם קול.

  • ותיקים
  • *******
  • 5,704 הודעות

נכתב ב- ‎12/10/2011‏, ‎10:41

cout <<((2*A)/(A+<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />)*A + ((2*<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />/(A+<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />)*B - ((2*<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />/(A+<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />)*((2*A)/(A+<img src='http://www.qsubs.net/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />)*A;

כן , כן , מלכים אין רק באגדות...

1411724.png


#1026 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎12/10/2011‏, ‎11:01

עוד פתרון אפשרי:[left]
[/left]

int c = A / B;

int d = B / A;

int e = (A * c + B * d) / (c + d);



#1027 dror

dror

    כבר לא רוצים לזכור את השם שלי

  • רשומים
  • *****
  • 1,065 הודעות

נכתב ב- ‎13/11/2011‏, ‎14:08

המטרה היא להגיע מן המספר 10 לכל אחד משני המספרים. נתונות שתי הפעולות החשבון ×2 ,+1 :
באמצעות שימוש חוזר בפעולות החשבון הנתונות. מהו המספר הקטן ביותר של פעולות
הנדרש להשגת המטרה עבור כל אחד מן המספרים הבאים?

417
794

#1028 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎13/11/2011‏, ‎15:18

המטרה היא להגיע מן המספר 10 לכל אחד משני המספרים. נתונות שתי הפעולות החשבון ×2 ,+1 :
באמצעות שימוש חוזר בפעולות החשבון הנתונות. מהו המספר הקטן ביותר של פעולות
הנדרש להשגת המטרה עבור כל אחד מן המספרים הבאים?

417
794

היה את זה באולימפיאדת מדעי המחשב ביום חמישי, יצא לי הכפל 99.
הפתרון די קל, כל פעם מורידים אחד אם המספר אי זוגי מחלקים ב2, ושוב אם יצא אי זוגי מורידים 1 ומחלקים עד שמגיעים למספר הכי קטן שגדול מ10,
בודקים כמה +1 צריך לעשות וזה התשובה.

דוגמא:
417
1
416
2
208
3
104
4
52
5
26
6
13
7
12
8
11
9
10

התשובה ל417 זה 9.

#1029 dror

dror

    כבר לא רוצים לזכור את השם שלי

  • רשומים
  • *****
  • 1,065 הודעות

נכתב ב- ‎13/11/2011‏, ‎16:22

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

החידה -
נתון סולם שבו 10 שלבים. אדם מעוניין לטפס על הסולם, כך שהוא מתחיל בתחתיתו (מתחת
לשלב הראשון), ובכל צעד הוא עולה שלב אחד, או שני שלבים, או שלושה שלבים. כמה דרכים
שונות של טיפוס קיימות כדי להגיע לשלב העשירי?

#1030 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎13/11/2011‏, ‎16:27

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

החידה -
נתון סולם שבו 10 שלבים. אדם מעוניין לטפס על הסולם, כך שהוא מתחיל בתחתיתו (מתחת
לשלב הראשון), ובכל צעד הוא עולה שלב אחד, או שני שלבים, או שלושה שלבים. כמה דרכים
שונות של טיפוס קיימות כדי להגיע לשלב העשירי?

אה ותודה לavrahamcool שהסביר את השאלה הזאת עם שינוי קטן בעמוד הקודם :)

#1031 dror

dror

    כבר לא רוצים לזכור את השם שלי

  • רשומים
  • *****
  • 1,065 הודעות

נכתב ב- ‎13/11/2011‏, ‎16:43

הצלחת את כל המבחן?

#1032 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎13/11/2011‏, ‎17:12

הצלחת את כל המבחן?

את השאלה עם הסדרות התחלתי לבנות סוג של תחום הגדרה אבל זה לקח יותר מדי זמן, בטח הייתה דרך יותר מהירה אז פשוט דילגתי.
את התרגילים שפרסמת פה עשיתי, ואת תרגיל 1 (נקודות מפגש), ובשאלה 5 טעיתי.

אני הייתי בטוח שאת התרגילים הולכים לעשות במחשב, אבל טוב לדעת שגם בלי אני מסוגל לפתור חלק :D

#1033 dror

dror

    כבר לא רוצים לזכור את השם שלי

  • רשומים
  • *****
  • 1,065 הודעות

נכתב ב- ‎13/11/2011‏, ‎17:23

אני לא ידעתי מראש מתי זה בכלל, היום שעה לפני המורה אמרה לי לבוא לעשות..
עם הסדרות הסתבכתי גם הרבה זמן, אני חושב שיצא לי בסוף 15, שאלה 5 התשובה נראה לי 960.

השאר לא היו מאוד קשים, את שאלה 4ב' עם מספר מסלולים שונים לרובוט עשית?

#1034 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎13/11/2011‏, ‎17:27

אני לא ידעתי מראש מתי זה בכלל, היום שעה לפני המורה אמרה לי לבוא לעשות..
עם הסדרות הסתבכתי גם הרבה זמן, אני חושב שיצא לי בסוף 15, שאלה 5 התשובה נראה לי 960.

השאר לא היו מאוד קשים, את שאלה 4ב' עם מספר מסלולים שונים לרובוט עשית?

חח ב5 כתבת בדיוק כמוני, שהרצתי במחשב יצא לי שהתשובה היא 64
שאלה 4 ב' יצא לי אם אני זוכר נכון 160, עשיתי שכל משבצת שווה לסכום של המשבצת משמאלה וזאת שמתחתיה, כשיש שחור זה אפס.

#1035 dror

dror

    כבר לא רוצים לזכור את השם שלי

  • רשומים
  • *****
  • 1,065 הודעות

נכתב ב- ‎13/11/2011‏, ‎21:26

כתוב לי את התכנית שהרצת ל-5..
ולא כל כך הבנתי מה עשית ב4 ב', אני עכשיו שיצא לי 85 אבל אני ממש לא בטוח על זה.

שנה שעברה היה הרבה יותר קל

#1036 BBLN

BBLN

    כבר זוכרים את השם שלי

  • רשומים
  • ***
  • 359 הודעות

נכתב ב- ‎13/11/2011‏, ‎21:34

כתוב לי את התכנית שהרצת ל-5..
ולא כל כך הבנתי מה עשית ב4 ב', אני עכשיו שיצא לי 85 אבל אני ממש לא בטוח על זה.

שנה שעברה היה הרבה יותר קל


int m = 1;
int x = 675;
while (x != 960)
{
m++;
x += 675;
if (x > 960)
x -= 960;
Console.WriteLine(x);
}
Console.WriteLine(x);
Console.WriteLine(m);
קוד די פשוט, מתחיל מ675 בשביל שהוא לא יעצור בm=0

ב4 אמרתי שמספר הדרכים להגיע למשבצת מסוימת היא מספר הדרכים להגיע לנקודה משמאלה והנקודה מתחתיה, כי מותר תמיד ללכת או ימינה או למעלה.

#1037 dror

dror

    כבר לא רוצים לזכור את השם שלי

  • רשומים
  • *****
  • 1,065 הודעות

נכתב ב- ‎13/11/2011‏, ‎23:30

כן קוד לא מסובך בכלל, לא מבין איך עושים את זה בלי מחשב ליד..

#1038 SnirJa

SnirJa

    Rolling Supreme

  • ותיקים
  • ********
  • 10,533 הודעות

נכתב ב- ‎14/11/2011‏, ‎00:14

תותח יורה פגז במהירות 800 מטר לשניה, זוית התותח היא היא 60 מעלות. באיזה זוית יהיה לו את אותו טווח?

gg1209191.jpg

בית"ר

במאבק עיקש ואכזר,

בדם ויזע,

לא נחנו אף רגע,

שיחקנו עם הלב והנשמה,

בוגרים וגם נוער,

גביע ותואר,

נרומנה בעוז והדר.

 


#1039 J.P

J.P

    כבר לא רוצים לזכור את השם שלי

  • רשומים
  • *****
  • 1,637 הודעות

נכתב ב- ‎14/11/2011‏, ‎00:22

30

זאת לא חידה חח זאת שאלה במכניקה

#1040 SnirJa

SnirJa

    Rolling Supreme

  • ותיקים
  • ********
  • 10,533 הודעות

נכתב ב- ‎14/11/2011‏, ‎00:45

חחחחחחחחחחחחח אתה יכול להסביר לי בבקשה? סתם עשיתי פוזה שאני יודע, זאת שאלה בשיעורים....

מה עשית בשביל להגיע לזה?

Vx= 800cos60
Vy=800sin60-10t

הצבתי את זה בנוסחה X=Xo+Vo(t-to)-5(t-t0)²
(עם הנתונים של Y) מצאתי את הt שY שווה לאפס, הצבתי את הt הזה במשוואה של X כדי לגלות טווח,
אחרי זה מה אני אמור לעשות?
X=0+800cosZ-5t²
שבאיקס אני מציב את הטווח ממקודם,
(יוצא לי שתי נעלמים)
ואני עושה משוואה של אותו דבר עם ציר הY ומציב 800sinZ-5tª ואז יש לי שתי משוואות עם שתי נעלמים, ואני מוצא את Z (יענו הזווית)?

gg1209191.jpg

בית"ר

במאבק עיקש ואכזר,

בדם ויזע,

לא נחנו אף רגע,

שיחקנו עם הלב והנשמה,

בוגרים וגם נוער,

גביע ותואר,

נרומנה בעוז והדר.

 





1 משתמשים קוראים נושא זה

0 משתמשים, 1 אורחים, 0 משתמשים אנונימיים