שאלון קודגורו 6 שלב א'

רשומה רגילה

1. באיזו תצורת תקשורת פועלת תוכנת Kazaa?

  • server-based
  • peer-to-peer
  • ring topology
  • bus topology
2. מה עושה הפונקציה הבאה:ב – C:

int f(int n)
{
	int k = sqrt(n);
	int i;
	for (i = 2; i <= k; i++)
		if (!(n%i))
			return 0;
	return 1;
}

בפסקל:

function f(n : integer) : boolean;
var
	k, i : integer;
begin
	k := trunc(sqrt(n));
	f := true;
	for i := 2 to k do
		if (n mod i) = 0 then
			f := false;
end;
  • בודקת האם מספר הוא מספר מושלם
  • בודקת האם מספר הוא חזקה של 2
  • בודקת האם מספר הוא ריבוע שלם
  • בודקת האם מספר הוא ראשוני
3. בכיתה של יוסי יש 17 תלמידים. מה יש יותר: בנים או בנות?

  • בנים
  • בנות
  • אותו דבר
  • ג' לא נכון
4. מהו מספר ההשוואות המינימלי הנחוץ לשם מיון מערך בן 4 איברים?
5. למה קשור המושג PageRank?

  • פרס "אתר השנה" האמריקאי
  • שרתי פרוקסי
  • מנוע חיפוש
  • Spyware ו – Adware
6. על מנת להעריך את מספר הילדים הממוצע במשפחה חושב 1+ ממוצע מספר האחים של כל התלמידים בבית ספר גדול. האם התוצאה מדוייקת?

  • כן, כי בית הספר גדול
  • כן, כי מספר הילדים הוא 1+ מספר האחים
  • לא, כי אין ייצוג למשפחות ללא ילדים
  • תלוי בכמות המשפחות החד-הוריות
7. מה עושה הפונקציה הבאה:ב – C:

void f(int n)
{
	int i, s;
	for(s = i = 1; i <= n; i++) {
		printf("%d\n", s);
		s += 2*i+1;
	}
}

בפסקל:

procedure f(n : integer);
var
	i, s : integer;
begin
	s := 1;
	for i := 1 to n do
	begin
		writeln(s);
		s := s + 2*i+1;
	end;
end;
  • מדפיסה סדרה חשבונית
  • מדפיסה מספרים מהצורה: 2n-1
  • מדפיסה ריבועים עוקבים
  • מדפיסה סדרה הנדסית
8. * מהו מספר ההשוואות המינימלי הנחוץ למציאת האיבר השני בגודלו במערך בן 8 איברים?
9. רוצים לצרוב מידע על תקליטור בסקטורים של 1024 ביט. ככל שאיכות החומר ממנו הוא עשוי תהיה נמוכה יותר, כך הוא יהיה זול יותר, אבל הסיכוי לשגיאות יהיה רב יותר. מהו המספר המקסימלי של ביטים שגויים לסקטור שאפשר להרשות, כדי שניתן יהיה לצרוב ואז לקרוא בצורה אמינה לחלוטין את המידע שנצרב?
10. למה משמש הסימן | בפקודות unix?

  • המתנה ללחיצת מקש בכל פעם שהפלט ממלא את המסך
  • חילוץ שדות המופרדים באמצעות מרווח-לבן
  • הפעלת שתי פקודות (או יותר) בשורה אחת
  • העברת הפלט כקלט של פקודה נוספת
11. אבטיח מכיל 97 אחוזי מים ושלושה אחוזי קליפה. הכיצד?

  • זה לא יכול להיות
  • יש מים גם בקליפה
  • לסוכר משקל שלילי
  • יש גם גרעינים
12. * הפונקציה הבאה אמורה להחזיר את המיקום של האיבר הגדול ביותר במערך, אבל יש בה באג:ב – C:

unsigned int find_max(unsigned int A[20])
{
	unsigned int max = 0;
	unsigned int imax;
	int i;
	for (i = 0; i < 20; i++) { if (A[i]> max) {
			imax = i;
			max = A[i];
		}
	}
	return imax;
}

בפסקל:

type
	word20 = array[0..19] of word;
function find_max(A : word20) : word;
var
	max, imax : word;
	i : integer;
begin
	max := 0;
	for i := 0 to 19 do
	begin
		if A[i] > max then
		begin
			imax := i;
			max := A[i];
		end;
	end;
	find_max := imax;
end;

כמה מערכים קיימים, עבורם היא תחזיר תשובה לא נכונה?

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

  • מבעל הכד הגדול (שימלא ראשון) ועד לבעל הכד הקטן (שימלא אחרון)
  • מבעל הכד הקטן (שימלא ראשון) ועד לבעל הכד הגדול (שימלא אחרון)
  • הסדר לא משנה, הזמן הממוצע יישאר זהה
  • מסתדרים לפי גודל הכדים ואז לוקחים אחד מההתחלה ואחד מהסוף לסירוגין
14. סכום הזויות במשולש על גבי כדור הוא:

  • תמיד קטן מ 200 מעלות
  • 200 מעלות
  • תמיד גדול מ 180 מעלות
  • 270 מעלות
15. בחר את השלשה המתאימה לשלשה: python, c++, java

  • interpreted, byte code, machine code
  • byte code, interpreted, machine code
  • interpreted, machine code, byte code
  • byte code, machine code, interpreted
16. בשמיים ישנן 3 דלתות. אחת מהדלתות מובילה לגן עדן ושתי הדלתות האחרות מובילות לגיהינום. השטן, שיודע לאן מובילה כל דלת, טוען שדלת מספר 2 מובילה לגיהינום. ידוע לכל כי השטן משקר בהסתברות 1/4. מה ההסתברות שדלת מספר 1 מובילה לגן עדן?

  • 1/4
  • 1/2
  • 0
  • 3/8
17. עבור כמה ערכים של n הפונקציה הבאה תסתיים (בסביבת 16bit):ב – C:

void be_useless(unsigned int n)
{
	while (n) n *= n;
}

בפסקל:

procedure be_useless(n : word);
begin
	while (n <> 0) do n := n * n;
end;
18. מה משמעות הביטוי הבא:

y1*x2-y2*x1 > 0
  • חישוב היקף של מקבילית
  • בדיקה האם וקטורים נמצאים באותו הרביע
  • בדיקת כיוון של פניה
  • השוואה בין גדלי וקטורים
19. כמה פתרונות טבעיים יש למשוואה הבאה:

(15 * X) mod 17 = 1
  • פתרון יחיד
  • אינסוף פתרונות
  • אין פתרונות בכלל – כי 15 > 1
  • אין פתרונות כי Z17 אינו שדה
20. מה היה שוק המניות האלקטרוני הראשון בעולם?

  • NASDAQ
  • הבורסה בטוקיו
  • NYSE
  • הבורסה בת"א
21. אם כוס שוקו שהוכנסה לחלקו הקדמי של מיקרוגל מסתובב הופיעה בצידו השמאלי לאחר 15 שניות, להיכן הייתה מגיעה לאחר 30 שניות?

  • לחלק הקדמי
  • לחלק האחורי
  • לחלק הימני
  • תלוי בכיוון הסיבוב
22. מה עושה הקוד הבא באסמבלי 80×86, תחת DOS:

mov ax, 3
int 10
  • מאתחל התקשרות סיריאלית
  • מקצה מערך בגודל 30 בתים
  • מקצה מערך בגודל 3 בתים
  • עובר למצב טקסט
23. (מחווה לאייזק אסימוב): אם 1.5 תרנגולות מטילות 1.5 ביצים ב-1.5 יום, אז כמה תטילנה 9 תרנגולות ב-9 יום?

  • 27
  • 54
  • 81
  • 108
24. האם ניתן לכתוב תוכנית מחשב בשפת C שהפלט שלה היא התוכנית עצמה? ובשפת פסקל?

  • כן, כן
  • כן, לא
  • לא, כן
  • לא, לא
25. באיזו שפה כתובה השורה הבאה:

/codeguru6/stage_a/contestant[@score>55]
  • Python
  • TCShell
  • XPath
  • Perl
26. בשתי פינות נגדיות של אולם מלבני שגודלו 9×10 מ2 בנו ארון על ריבוע שאורך כל צלע שלו הוא 0.5 מ'. "שלמה הרצף" אמור לרצף (לכסות את כל שטח האולם – לא כולל שטח שני הארונות – בלי לשבור אף אריח ובלי שאריחים יחפפו זה לזה), באריחי שיש שגודלם 1.0×0.5 מ2. בקצב הנחת אריחים של 2.47 אריחים בשעה, הוא יסיים את הריצוף תוך:

  • יותר מ – 140 שעות עבודה
  • פחות מ – 53 שעות עבודה
  • אף פעם
  • אף אחת מהתשובות א'-ג' אינה נכונה
27. מה עושה הקוד הבא בשפת אסמבלי 80×86:

xor ax, bx
xor bx, ax
xor ax, bx
  • מפעיל פונקציית גיבוב פשוטה
  • שוזר את ax ו – bx
  • מחליף בין ערכי אוגרים
  • מבצע פעולת איפוס מהירה
28. מהי הנגזרת של xx?

  • xxln(x + 1)
  • xx(ln(x) + 1)
  • xln(x + 1)
  • x(ln(x) + 1)
29. טבעת המונחת על האדמה והאוקיאנוסים מקיפה את כל כדור הארץ. יש להוסיף לה תוספת שתאפשר לחתול שגובהו 30 ס"מ לעבור תחתיה בלי להתכופף, תוך שמירה על צורתה העגולה של הטבעת. מה אורך הקטע שיש להוסיף לטבעת?

  • בערך 30 ס"מ
  • בערך 2 מטר
  • בערך 900 מטר
  • בערך 12 ק"מ
30. כיצד מתבצע תיקון השגיאות ב-CD?

  • בעזרת קודי האפמן (Huffman Coding)
  • בעזרת קודי ריד-סולומון (Reed-Solomon Coding)
  • בעזרת קוד אריתמטי (Arithmetic Coding)
  • בעזרת קוד דה-וינצ'י (Da-Vinci Code)
31. מה קרה למשפט הבא?

רבםו חציקטצ בםגקעורו
  • אצבעות זזו בכתיבה עיוורת
  • ביט lsb התהפך
  • כתיבת אנגלית באותיות עבריות
  • לכל מילה תשובה אחרת
32. כמה כוכביות ידפיס הקוד הבא בשפת C:

unsigned char i;
for (i = 0; i <= 255; i++)
	printf("*");
  • 255
  • 256
  • אינסוף
  • 0
33. מהו המספר הבא בסדרה:

8, 49, 216, 625, 1024, 729, ..
34. מה מהבאים נכון לומר על פונקציות סטטיות:

  • לא ניתן לשנות את הקוד שלהן בזמן ריצה
  • הן מפחיתות את כמות הזכרון המוקצה להחזקת קוד
  • הן אינן יכולות לשנות את הפרמטרים המוכנסים אליהן
  • הן אינן יכולות לגשת למשתנים חברים במחלקה שלהן
35. ברזולוציית מסך של 320×200, פלטתי 64000 פיקסלים, כל אחד במקום אקראי. מהו הסיכוי שמילאתי את כל המסך?

  • 1 ל – 64000
  • 1 ל – 64000!
  • 1 ל – 6400064000
  • 64000! ל – 6400064000
36. מה עושה הפונקציה הבאה:ב – C:

struct node {
	node* left;
	node* right;
	int val;
};
int traverse(node* root)
{
	int current_max = root->val;
	if (root->left != NULL)
		current_max = max(current_max, traverse(root->left));
	else if (root->right != NULL)
		current_max = max(current_max, traverse(root->right));
	return current_max;
}

בפסקל:

type
	nodeptr = ^node;
	node = 	record
			left, right : nodeptr;
			val : integer;
		end;
function traverse(root : nodeptr) : integer;
var
	current_max : integer;
begin
	current_max := root^.val;
	if root^.left <> NIL then
		current_max := max(current_max, traverse(root^.left))
	else if root^.right <> NIL then
		current_max := max(current_max, traverse(root^.right));
	traverse := current_max;
end;
  • מוצאת את הערך המקסימלי בעץ בינארי
  • מוצאת את הצומת השמאלי ביותר מבין הצמתים שערכם מקסימלי
  • מוצאת את הערך המקסימלי במעטפת הימנית של עץ בינארי
  • אף אחת מהתשובות הקודמות אינה נכונה
37. האם יכול להיות קצב ירידת המים באסלה גדול משמעותית מקצב אספקת המים לשירותים?

  • לא, משום שחלק מהמים מתאדה (בדומה לחוסר יעילות בתכנות)
  • לא, כי תוספת הנוזלים הנובעת מהשימוש בשירותים זניחה
  • כן (זמנית), בגלל מתקני ה"ניאגרה" (או בעברית: מיכלי ההדחה) המתפקדים כחוצצים (buffers)
  • כן (באופן מתמשך), כפי שאפשר לשחרר יותר זיכרון מאשר הוקצה
38. מהי הדרך הטובה ביותר להשתמש בגרביים כדי להבטיח שימוש אחיד ככל האפשר?

  • להכניסם מהכביסה בצד שמאל של המגרה ולהוציא מצד ימין (כמו תור)
  • להכניסם מהכביסה בצד שמאל של המגרה ולהוציא מצד שמאל (כמו מחסנית)
  • להכניסם מהכביסה בצד שמאל של המגרה ולהוציא באופן מקרי
  • להכניסם מהכביסה באופן מקרי ולהוציאם באופן מקרי
39. נתונה הפונקציה הבאה על רשימות מקושרות:ב – C:

struct node {
	int data;
	node* next;
};
int f(node* h, int c)
{
	node* p = h;
	int i;
	while (1) {
		for (i = 0; i < c; i++) { if (p == NULL) return h->data;				
			p = p->next;
		}
		h = h->next;
	}	
}

בפסקל:

type
	nodeptr = ^node;
	node = record
 data : integer;
		 next : nodeptr;
	 end;
function func(h : nodeptr; c : integer) : integer;
var
	p : nodeptr;
 i : integer;
begin
	p := h;
	while true do
	begin
		for i := 0 to c-1 do
		begin
			if p = NIL then
			begin
				func := h^.data;
				exit;
			end;
			p := p^.next;
		end;
		h := h^.next;
	end;
end;

מהו הביטוי המקביל על המערך A שמוגדר כך:
ב – C:

int A[N];

בפסקל:

var
	A : array[0..N-1] of integer;
  • ב – C: A[N%c], בפסקל: A[N mod c]
  • ב – C: A[N-c], בפסקל: A[N-c]
  • ב – C: A[N/c], בפסקל: A[N div c]
  • ב – C: A[c%N], בפסקל: A[c mod N]
40. חברת "מאכלים" מצרפת מספר לכל מוצר, ומחלקת פרסים לכל מי שיקנה מוצרים כך שסכום המספרים יהיה 111. כיצד יכולה החברה לוודא שלא יהיו יותר מדי זוכים?

  • להשתמש רק במספרים דו ספרתיים נמוכים
  • לוודא שרק מעט מבין המספרים יתחלקו ב – 37
  • לוודא שרק מעט מבין המספרים לא יתחלקו ב – 13
  • לשים את המספר 111 בעשרה מוצרים בלבד
41. אבטיח מקולף התייבש יומיים כך שאחוז המים בו ירד מ 99 אחוז ל 98 אחוז. כמה איבד ממשקלו?

  • כמעט אחוז אחד
  • אחוז אחד
  • כשלושים אחוז
  • חמישים אחוז
42. מכונת קולה מופעלת על מטבעות של שקל אחד. מחיר פחית הוא 4.30 והמכונה לא מחזירה עודף, אלא זוכרת את העודף לקניה הבאה. לאחר שימוש ממושך במכונה, מה יהיה העודף השכיח?

  • 30 אגורות
  • או 0 או 50 אגורות
  • 70 אגורות
  • כל עשרת האפשרויות שוות הסתברות
43. אם יש 15 אפשרויות שונות לאורכן של צלעות מלבן, כמה ביטים דרושים על מנת לייצג את השטח?

  • 225, כי שטח הוא כפולת אורך ברוחב
  • 15, כי x כפול y = y כפול x
  • 8, כי אפשר לייצג 2x אפשרויות ב x ביטים
  • 7, כי 120 קטן מ 128
44. 98 אחוז מהבנות בכיתה של יהושוע אינן ג'ינג'יות. כמה ג'ינג'יות יש בכיתה?

  • לפחות 4, כי יש גם בנים בכיתה
  • בדיוק 2, כי 100-98=2
  • לכל היותר 2, כי יהושוע הוא בן
  • אפס, כי אין כיתה מעל 50 תלמידים
45. במערכת שמש כלשהי ישנם שלושה כוכבי לכת אשר מסתובבים סביב השמש. לשלושת הכוכבים מחזורי סיבוב של שנה, חמש שנים, ו- פאי שנים בהתאמה. בראש השנה של שנת 0 כל שלושת הכוכבים נמצאו על קו אחד עם השמש. באיזה שנה יפגשו שוב על קו אחד עם השמש?

  • בין שנת 0 לשנת 314
  • בין שנת 314 לשנת 5000
  • בשנת התשס"ה
  • לעולם לא
46. שמש וירח גדולים יותר בשעת זריחה או שקיעה. מדוע?

  • שכבת האטמוספרה העבה יותר קרוב לאופק משמשת כעדשה המגדילה את מראה השמש והירח
  • בגלל הכבידה השמש והירח גדלים כאשר הם מתקרבים לאדמה
  • זה סתם נדמה לנו. הם לא באמת נראים גדולים יותר – הכל פסיכולוגיה!
  • העין שלנו רואה גופים בעלי גוון אדמדם כגדולים יותר
47. ** נתון בניין בן 129 קומות. הקומה הקריטית בבניין היא הקומה שהטלת ביצה ממנה ומעלה תביא לשבירתה ולעומת זאת, הטלה מכל קומה נמוכה יותר לא תביא לשבירת הביצה.לרשותך עומדות שלוש ביצים אשר ניתן להטיל כל אחת מהן מכל קומה אפשרית כל עוד לא נשברה. משימתך היא לגלות את הקומה הקריטית (אם קיימת), במספר מינימלי של הטלות ביצים.
מהו מספר ההטלות הנמוך ביותר שניתן להתחייב לא לחרוג ממנו (כאשר נוקטים באסטרטגיה אופטימלית)?
48. ** בהמשך לשאלה הקודמת, מאיזה קומה יש להטיל בפעם הראשונה, כדי להיות מסוגל להתחייב על מספר ההטלות המינימלי?
49. מי אמר: אך מוזר ונבער מדעת הוא האדם בעיני התולעת
על כי את ספריו לא יכרסם

  • חיים נחמן ביאליק
  • רבינדרנט טאגור
  • סמואל בקט
  • שאול טשרניחובסקי

 

כתיבת תגובה