שאלון קודגורו 20 – שלב ב'

רשומה רגילה

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

היום אנחנו חוגגים יום הולדת 312 ללאונרד אוילר.באיזו שיטת הצפנה משתמשים בפונקציית אוילר?

באיזה מהגרפים הבאים אין מסלול אוילר?

במרחב n-ממדי, מה היחס בין נפח כדור לנפח קובייה שחוסמת אותו?

איזו סקאלה יוצאת דופן?

מה מקבלים כשמעלים מספר בחזקת מפתח פרטי מודולו n גדול?

מה הסיבוכיות של פרסור פייתון?

איזו תקיפה Stateless FW לא יכולה לזהות וStateful FW כן?

מה מחשבת הפונקציה הבאה?

float func(float x) {return (float)((*(uint32_t*)&x) >> 23) – 127}

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

נניח ואני רוצה לדגום אות בתדירות של 40KHz. כמה דגימות בשנייה אצטרך לקחת כדי שאצליח לדגום את האות ללא שגיאות?

איזו דרך היית בוחר כדי לנהל חישוב SHA256 של מאות קבצים במקביל בפייתון?

איזו בעיה לא קשורה באופן ישיר לשימוש בmutex?

מה מחשב קטע הקוד הבא?

for (s=i=0 i<N i++) s += a[i]

איזה באג יש בקטע הקוד הבא:

int lionInDesert(int v[], int n, int x) { int l=0, h=n-1, m while (v[m=(l+h)/2] != x) { if (v[m]<x) l=m+1 else h=m if (l==h) return -1 } return m}

מה עושה קטע הקוד הבא?

int f(int v[], int n, int m) { if (n) return f(v,n-1,m)|f(v,n-1,m-v[n-1]) else return !m}

איזה מכלי הלינוקס הבאים עלול לגרום לנזק בלתי הפיך למערכת בשימוש לא נכון?

מה מהבאים לא אמור להתבצע בקרנל, במערכת הפעלה המממשת מודל של מיקרוקרנל?

צריך להעביר את כל הדיסקיות ממוט A אל מוט C, בכפוף לשני חוקים:מותר להזיז רק דיסקית אחת בכל פעם – מראש מוט אחד לראש מוט אחר.אסור להניח דיסקית אחת על דיסקית שקטנה ממנה.מה מספר המהלכים המינימלי שבו ניתן לעשות זאת?

מהו אחד ההבדלים בין הפרוטוקולים UDP וSCTP?

מערכת המחשב שלנו "נתקעה" במצב לא תקין, כיצד ניתן לתקן זאת?

נניח שלנתב לוקח 3.14 שניות לנתב חבילה, מה תקן RFC 791 ממליץ שיעשה?

כיצד glibc יודעת כמה זיכרון עליה לשחרר כאשר אני מבצע free לזיכרון שהקציתי עם malloc?

באימון רשתות נוירונים, מה מהבאים לא יכול לגרום לoverfit?

מי מהמעבדים הבאים אני

כיצד אנחנו יכולים לגלות את זהותם של שני צדדים שמתקשרים ביניהם דרך TOR?

באיזו מערכת כדי להשתמש במדיניות תזמון שהיא non-preemptive?

באיזו מערכת כדי להשתמש במדיניות תזמון שהיא non-preemptive?

מה מבצע הRegex הבא:

\b(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\b

דניאלה כתבה את קטע הקוד הבא, הריצה אותו בפייתון 2.7 ובפייתון 3.6, והדפיסה בכל גרסה את s, ונדהמה לגלות שהתוצאה הייתה שונה. איזה פיצ'ר שקיים בפייתון 3.6 הוא הגורם להבדל?

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

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

עזרו למנדל לשוב ולתכנת וענו על השאלה:

https://docs.google.com/document/d/1p00mKdcCoDxRrapZt6_56XkZHkzl62f9d5iOOQI0wZU/edit?usp=sharing



שאלון קודגורו 8 – שלב ב'

רשומה רגילה
3. Branch prediction מסייע:

  1. לצמצם Control hazards
  2. להוריד כמות interrupts
  3. לבצע מספר Branchים בפקודה אחת
  4. להעלים לחלוטין Instruction cache misses
4. (*) עליך להשתמש בשערים מסוג אחד בלבד על מנת לייצר מעגלים אשר יודעים לבצע פעולות: NOT, AND, XOR, וOR.
באיזה סוג שער תשתמש?

  1. XOR
  2. AND
  3. OR
  4. NOT
  5. NAND
5. מה משמעות הסיומת BAT?

  1. הגדרת מדפסות
  2. קולות ינשופים
  3. כלי נשק
  4. קובץ אצווה
6. Int 80h ל-Linux זה כמו:

  1. Int 21h ל-DOS
  2. Int 1h ל-Windows
  3. Int 0x80 ל-Windows
  4. Int 13h ל-DOS
7. שתי הפונקציות הבאות מוצאות מינימום במערך. איזו מהן עדיפה?
ב-C:

int min1(int [] arr, int first, int last)
{
	int m, i;
	m = arr[first];
	
	for (i = first + 1; i <= last; i++) {
		if (arr[i] < m) {
			m = arr[i];
		}
	}
	
	return m;
}
int min2(int [] arr, int first, int last)
{
	int m;
	
	if (first == last) {
		return arr[first];
	}
	
	m = min2(arr, first + 1, last);
	if (arr[first] < m) {
		return arr[first];
	}
	
	return m;
}
  1. שתיהן טובות באותה המידה
  2. הראשונה, כי השנייה עלולה לגלוש מהמחסנית
  3. השנייה, כי היא רצה מהר יותר עבור מערכים גדולים
  4. תלוי במהדר (קומפיילר)
8. מה זה DLL HELL?

  1. כינוי לבעיות תאימות וגרסאות בין ספריות הרצה ב- Windows
  2. וירוס שמדביק קבצי DLL שהיה נפוץ באינטרנט בשנת 2002
  3. כינוי לבאג ידוע בטעינה של קבצי DLL שלא תוקן עד היום
  4. שם של אחד מהספרים בסדרת Win32 Programming של Microsoft Press
9. איזה מהביטויים הנתונים נכון מבחינה לוגית? [A,B,C הנחות כלשהן]

  1. אם A גורם ל-B, אזי B מעולם לא יגרום ל-A
  2. אם A גורם ל-B, אזי B בהכרח גורם ל-A
  3. אם A גורם ל-B, ו-B גורם ל-C, אזי בהכרח C גורם ל-A
  4. אם A גורם ל-B, אזי B לא בהכרח גורם ל-A
10. איך מתכנתים DNS Lookup רגיל (תרגום שם ל- IP)?

  1. DnsHostnameToComputerName
  2. gethostbyname
  3. gethostbyaddr
  4. connect, ואז getpeername
11. איזה מבין הבעיות אופיינית לעבודה עם Heaps?

  1. פרגמנטציה
  2. Deadlock
  3. Page Fault
  4. בעיות סנכרון בין Processים שונים הניגשים לאותו Heap
12. כיצד ניתן להקטין בעיה זו?

  1. מנגנוני סנכרון מתאימים
  2. הקצאת מספר Heapים, כשבכל Heap מקצים זיכרון בגודל קבוע
  3. יצירת Thread ייעודי לטיפול ב- Heap
  4. הגדלת כמות זיכרון ה- RAM במחשב
13. אילו מהבאים אינו Interpreter לסקריפטים ב-Unix:

  1. bash
  2. expect
  3. grep
  4. perl
14. להלן הקלטה של שיחה בין שני מחשבים:

user code
331  Give me your password, please
Pass guru
230  Logged in successfully
TYPE I
200  Type is Image (Binary)
port 220,5,211,3,5,42
200  PORT command okay
RETR codeguru

באיזה פרוטוקול הם מתקשרים?

  1. SMTP
  2. POP3
  3. FTP
  4. HTTP
  5. SSL
  6. NFS
  7. SNMP
  8. ICMP
15. מה מהבאים אינו נכון לומר על Process?

  1. לכל Process מרחב זכרון משלו
  2. כל Process יכול להכיל כמה Threads, אבל כל Thread משויך לProcess בודד
  3. Process הינו סוג של Thread, שלא מתבצע בו Context Switch. (Uninteruptable thread)
  4. ניתן לתקשר בין Processים ע"י מנגנוני IPC
16. איזה מבין הבאים, לא התווסף לארכיטקטורות מחשב על מנת לנסות להאיץ ביצועים?

  1. Pipeline
  2. Cache
  3. DMA
  4. זיכרון וירטואלי
17. מה ההבדל בין טיפוס char לטיפוס varchar במסד נתונים?

  1. varchar מאפשר הגדרת גודל שונה עבור כל תו במחרוזת; char מגדיר גודל קבוע לכל תו
  2. char מייצג מחרוזת באורך קבוע, בעוד ש- varchar מייצג מחרוזת באורך משתנה
  3. בשמירה הפיזית של הנתונים char תמיד יתפוס מקום כגודל מקסימלי של המחרוזת, בעוד ש- varchar יתפוס מקום רק כאורך המחרוזת
  4. char הינו ייצוג ASCII בעוד ש- varchar הינו ייצוג Unicode
18. מה עושה DRIVESPACE?

  1. דחיסה שקופה
  2. יוצר מערכת קבצים וירטואלית בזיכרון
  3. מאפשר להריץ דברים עם הרשאות של Driver
  4. מסדר את המקום הפנוי על הדיסק הקשיח בסדר רציף
19. איזה ביטוי מתמטי מבטא הכי נכון את פעולת הOR בין שני משתנים, x וy?

  1. x*y-x
  2. x*y-y
  3. x+y-x*y
  4. modulo 2 (x*x+y*y)
20. מה זה chargen?

  1. איגוד תקינה אירופאי, אחראי בין השאר על RFCs
  2. מילה בגרמנית שפירושה "לתקוף"
  3. "change region", תוכנה שפורצת הגנה של כונן DVD
  4. שרת ששולח רצפי תוים בלולאה אינסופית
21. כיצד מוצאים את מספרי הטלפון השונים בטבלת SQL?

  1. select phone from table once;
  2. select distinct phone from table;
  3. select count(phone) from table;
  4. select phone unique from table;
22. איזה מהמאפיינים הבאים אינו מתקשר למעבד 80X86/8?

  1. תמיכה במצב עבודה Real Mode בלבד
  2. תמיכה במרחב זיכרון של 1MB בלבד
  3. קיים זיכרון מטמון פנימי בתוך ה CPU, וזיכרון מטמון חיצוני על לוח האם
  4. רוחב המילה של מעבד הוא שמונה סיביות בלבד. (אמנם 80X86 תמך ב- 16 סיביות, אך רק שמונה סיביות באו לידי ביטוי)
23. כאשר מריצים פקודת dir על שם קובץ שאינו קיים, מקבלים את ההדפסה הבאה:

 Volume in drive C is Codeguru
 Volume Serial Number is C001-C0DE
 Directory of C:
File Not Found

לאיזה Standard file descriptors נשלחת ההדפסה?

  1. STDOUT
  2. STDERR
  3. חלק ל-STDOUT, וה-File Not Found ל-STDERR
  4. חלק ל-STDOUT, וה-File Not Found תמיד נשלח למסך (Con)
  5. הכל תמיד נשלח למסך
24. מה משמעות המילה השמורה fixed ב- NET.?

  1. הכרזה על משתנה שערכו קבוע ולא יכול להשתנות
  2. הכרזה על משתנה שה-GC לא יכול להזיז בזיכרון
  3. הכרזה על בלוק קוד שלא ניתן לבצע לו JIT
  4. אף אחת מהתשובות לא נכונה
25. באיזו שנה הציגו את ה PC הראשון עם GUI?

  1. 1980
  2. 1986
  3. 1981
  4. 1978
26. לפניך הקטע הבא:

MOV DX, 0F8FAH
MOV CX, 1
MOV BX, 1EA0H
MOV AX, 0B8B8H
INC AX
INC AX

עליך להוסיף פקודת אסמבלי אחת בלבד בסוף הקטע, על מנת לגרום לערך שבAX להיות 4040H בסוף הריצה. איזה פקודה לא תוכל לבצע זאת?

  1. ADD
  2. SUB
  3. MUL
  4. XOR
  5. LOOP
27. באיזה אלגוריתם סביר שנשתמש כדי לממש תוכנית פשוטה שמשחקת שח-מט?

  1. Minimax
  2. Prim
  3. חיפוש בינארי
  4. Fuzzy-Logic
28. איך ניתן לשנות שם של קובץ בעזרת ה- Win32 API?

  1. קריאה לפונקציה MoveFile
  2. קריאה לפונקציה RenameFile
  3. קריאה לפונקציה CreateFile עם פרמטר מתאים
  4. אין דרך מסודרת – יש לקרוא את הקובץ, לכתוב אותו מחדש בשם אחר, ולמחוק את העותק המקורי
29. איזה מבין המדדים הבאים על שימוש בCache יעיד על הביצועים הכי טובים?

  1. Hit rate גבוה, Miss rate נמוך, וMiss time גבוה
  2. Hit rate גבוה, Miss rate נמוך, וMiss time נמוך
  3. Hit rate נמוך, Miss rate גבוה, וMiss time נמוך
  4. Hit rate נמוך, Miss rate גבוה, וMiss time גבוה
30. היכן עבדה האישה הראשונה בעולם שזכתה ב"פרס נובל למחשבים"?

  1. מיקרוסופט
  2. י.ב.מ.
  3. אלאדין
  4. מכון ויצמן למדע
31. איזה מבין הפעולות הבאות לא ניתן לבצע בUser mode?

  1. חלוקה ב-0
  2. שינוי ה Program Counter(Instruction Pointer)
  3. קריאה לפסיקת תוכנה
  4. שינוי טבלת הפסיקות
32. מהו ה-Source Port שממנו שרת FTP סטנדרטי שולח הודעות?

  1. 21
  2. 20
  3. 2121
  4. 1024
33. כאשר קובץ מסומן כ-suid, מה זה אומר לגביו?

  1. שהמשתמש שמריץ אותו מקבל את ההרשאות של המשתמש שלו שייך הקובץ
  2. שרק משתמש ה-Root יכול לקרוא את הקובץ
  3. שהקובץ הוא קובץ Device מיוחד המפנה לממשק פיסי במערכת
  4. שהקובץ בלתי ניתן למחיקה רגילה
34. מה מבצע הקטע קוד הבא?

not dx
not cx
not bx
neg ax
sbb bx, FFFFH
sbb cx, FFFFH
sbb dx, FFFFH
  1. ספירת כמות הביטים הדולקים ב-4 האוגרים ax-dx
  2. NOT למספר בן 64 ביט
  3. שלילה למספר בן 64 ביט
  4. Sign extension ממספר בן 16 ביט למספר בן 64 ביט
  5. בדיקת ה-Parity של מספר בן 64 ביט
35. על איזה אובייקט לא ניתן לבצע select ב unix?

  1. socket
  2. pipe
  3. file
  4. posix semaphore
36. בחר את תקן התקשורת היוצא דופן:

  1. 802.11
  2. 802.15
  3. 802.3
  4. 802.16
37. ישנם אתרים שכשאתה מגיע אליהם ממנוע חיפוש (לדוגמא Google), ידגישו את המילים שאותם חיפשת במנוע החיפוש. איך אותם אתרים יודעים מה חיפשת, למרות שהם לא קשורים למנוע החיפוש?

  1. משתמשים בעמודים מיוחדים במנועי חיפוש שנותנים מידע על מי חיפש מה
  2. מתשאלים את ה- browser שלך באמצעות JavaScript
  3. משתמשים ב- Referrer Header
  4. תשובות ב' וג' נכונות
38. מהי מטרת קובץ ה-shadow ב-Unix?

  1. להפריד את Hash ססמאות המשתמשים מקובץ ה-passwd, כך שמשתמשים רגילים אינם יכולים לקרוא קובץ זה
  2. עותק Mirror של קובץ הססמאות, למקרה שימחק בטעות
  3. קובץ בלתי נראה למשתמשים רגילים המכיל את ססמאות המשתמשים במערכת
  4. גיבוי לקבצי מערכת ההפעלה
  5. העתקת הBIOS מהROM לRAM
39. מה יחזיר הקוד הבא?

public boolean getBoolean() {
	try {
		return true;
	} finally {
		return false;
	}
}
  1. true
  2. false
  3. תיזרק RuntimeException
  4. הקוד לא מתקמפל
40. מה הדרך הטובה ביותר להתמודדות עם משתמשים שבאופן קבוע מוחקים קבצים קריטיים וצריכים אותם בחזרה תוך מספר דקות תוך איבוד שינויים מינימלי?

  1. שימוש ב- incremental backup לטייפ גיבוי כל כמה שעות
  2. שימוש ב- shadow copies המתרעננים כל כמה שעות
  3. סקריפט המעתיק את הקבצים הקריטיים למקום בטוח כל מספר שעות
  4. שימוש ב- RAID
41. מה המקבילה ב- DOS לתוכנית GREP של מערכת ההפעלה UNIX?

  1. FIND
  2. GREP
  3. FC
  4. COM
42. מהי ההגדרה הבאה?

char *c();
  1. מצביע למערך תווים
  2. מצביע לפונקציה שמחזירה תו
  3. פונקציה שמחזירה מצביע לתו
  4. כל התשובות נכונות
43. לפניך קטע קוד:

MOV AX, 0xF00D
PUSH AX
PUSH SP
MOV AX, SP
POP SP
PUSH AX
MOV CX, _____
GetOverHere:
POP SP
LOOP GetOverHere

איזה ערך ניתן לשים ב – CX על מנת שבסיום הריצה SP יכיל את הערך 0xF00D?

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. אין ערך כזה
44. ברצונך לשלוח הודעת Ethernet אשר תגיע לכל המחשבים בLAN.
לאיזה כתובת MAC עליך לשלוח אותה?

  1. FF-FF-FF-FF-FF-FF
  2. 00-00-00-00-00-00
  3. 80-00-00-00-00-00
  4. אי אפשר לשלוח הודעה כזו: ב Ethernet, בניגוד לIP, אין תמיכה בMulticast וBroadcast
45. איך נבדוק איזו חברה (AMD, Intel וכו') יצרה את המעבד שעליו התוכנית רצה, בזמן-ריצה?

  1. פקודת IN
  2. פקודת INT FF
  3. פקודת CPUID
  4. פקודת MOV (מכתובת קבועה)
46. מה האורך המקסימלי של המחרוזת שתוחזר ע"י הפקודה מהשאלה הקודמת?

  1. 12 (מוחזר ב-3 רגיסטרים של 32 ביט)
  2. 512 (מוחזר מצביע ל- sector המכיל את המחרוזת)
  3. 4096 (מוחזר מצביע ל- page המכיל את המחרוזת)
  4. אין מגבלה על האורך, מוחזר מצביע זיכרון חופשי
47. אם נבצע העתקה של דיסק המכיל מערכת הפעלה Windows XP ונשנה את שם המחשב ואת סיסמת ה- administrator בעותק, ייתכן שתהיה אפשרות להיכנס מהמחשב המקורי לעותק דרך הרשת בהרשאות administrator גם בלי לדעת את סיסמת administrator החדשה. מדוע?

  1. בכל מערכת מוגדר משתמש LocalSystem, והוא נשמר בהעתקה עם אותה סיסמה, כך שאפשר להשתמש בו כדי להיכנס
  2. למרות שסיסמת administrator שונתה, ה- SID של המשתמש נשאר זהה בהעתקה
  3. יצירת GUID מבוססת על כתובת ה- MAC של כרטיס הרשת, ומכיוון שה- MAC הועתק יש סיכוי ש- GUID -ים ייוצרו בצורה זהה בשתי התחנות
  4. הזדהות בין מחשבים מתבצעת באמצעות כתובות ממשקי התקשורת, ומכיוון שאלו עברו בהעתקה המחשב המועתק "יסמוך" אוטומטית על המקורי כי הוא חושב שזה הוא עצמו
48. מה משותף ל DF, ECN ו SYN?

  1. כולם דגלי TCP/IP
  2. כולם מסייעים במניעת עומס ברשת
  3. כולם משתמשים באסמבלי מיועל בכל המימושים
  4. אין משותף לשלושה
49. להלן קטע קוד ב-#C:

delegate void functions();
static void f1() {
	Console.WriteLine("1");
}
static void f2() {
	Console.WriteLine("2");
}
static void Main(string args[]) {
	functions fs=new functions(f1);
	
	fs+=f2;
	fs();
}

מה יודפס על המסך בעת הרצת הקוד הנ"ל?

  1. המספר 1, ומתחתיו המספר 2
  2. המספר 1 בלבד, ב-delegates רגילים לא ניתן לקרוא ליותר מפונקציה אחת
  3. המספר 2, ההצבה השניה דורסת את ההגדרה הראשונה בגלל שמדובר ב-delegates רגילים
  4. לא ניתן לקבוע את סדר הריצה של הפונקציות ולכן אי אפשר לדעת באיזה סדר יופיעו ההדפסות על המסך
50. כמה קלידים יש בפסנתר?

  1. 64 לבנים ו-32 שחורים
  2. 52 לבנים ו-36 שחורים
  3. 38 שחורים ו-44 לבנים
  4. 86 קלידים סה"כ
51. דני בונה מערכת פורומים לאתר האינטרנט שלו. הוא רוצה למנוע XSS, מה הוא יכול לעשות?

  1. לא להשתמש בCascading style sheets בכלל
  2. להחליף את התווים < ו > ב&gt ו-&lt במערכת שליחת ההודעות
  3. להגביל את זמן החיים של ה-cookies הנשלחים אל הלקוחות בכניסה למערכת
  4. למנוע הכנסת תווים מיוחדים לשאילתות SQL
52. איפה בדיסק נשמר המידע שבתיקיית PROC?

  1. בתוך /mnt/proc
  2. בסקטור השלישי של הדיסק הראשון
  3. תלוי בהגדרות ה mount לפי קובץ ה /etc/fstab
  4. המידע איננו שמור על הדיסק, אלא מיוצר בזמן ריצה על ידי הקרנל
53. אם נרצה לזייף הודעת e-mail לכתובת של חבר שכתובתו somebody@example.com, כיצד נדע מה כתובת שרת הדואר הנכנס?

  1. לפי הסטנדרט, הכתובת היא mail.example.com
  2. נסתכל בכותרות של הודעה נכנסת כלשהי מאותו חבר, שם רשום שם השרת שלו
  3. נחפש רשומת MX לדומיין
  4. אין דרך חד-משמעית לדעת את כתובת השרת
54. קוטרו של חרצן דובדבן הוא סנטימטר; עובי הציפה הוא סנטימטר; פי כמה, בערך, גדול נפח הציפה מנפח הגלעין?

  1. פי 0.1
  2. פי 1
  3. פי 5
  4. פי 25
55. ב-Java, אם מממשים מחדש את equals(), איזו עוד מתודה צריך לממש?

  1. hashCode()
  2. clone()
  3. toString()
  4. אף אחת
56. באיזה מערכת הפעלה 2GB העליונים של מרחב הכתובות משותפים לכל התהליכים?

  1. Win98
  2. Win2K
  3. WinXP
  4. WinNT
57. מה מאפשרת הפונקציה WaitForSingleObject?

  1. לחכות עד שתהליך כלשהו שרץ ברקע יסתיים
  2. לחכות עד שתסתיים שליחת מידע ברשת
  3. לחכות פרק זמן ידוע מראש
  4. כל התשובות נכונות
58. מה ההבדל בין xchg ax,bx לבין xchg bx,ax?

  1. מספר הבתים
  2. האוגר שמתאפס
  3. הסימן של ax
  4. אין הבדל
59. מה מהבאים מהווה סיבה לכך שמימושים רבים של quicksort נעזרים בrandom?

  1. ע"מ להקטין את הסיכון במקרה של קלט ממוין מראש
  2. ע"מ להקל על האלגוריתם במקרה של קלט גדול
  3. ע"מ שהפלט יהיה שונה גם עבור קלטים זהים
  4. משיקולי יעילות, רנדום מאפשר קבועים קטנים יותר
60. בתור לקוח של תוכנה, איזה שלב בדיקות סביר להניח שיהיה באחריותך?

  1. Unit Testing
  2. Code Review
  3. Regression testing
  4. Site Acceptance Tests
  5. Integration Tests
  6. Static code analysis
61. מה המשמעות המקובלת של "מרחק שש" ברשתות?

  1. טווח מירבי של "שן כחולה" הוא שישה מטרים
  2. זמן חיים מירבי של חבילת תקשורת הוא שש שניות
  3. כל שני אנשים מחוברים דרך לכל היותר שישה חברים
  4. לרשת טיפוסית יש שישה מרכיבי קשירות
62. ניתן לממש RTTI בC++ באמצעות:

  1. const_cast
  2. dynamic_cast
  3. reinterpret_cast
  4. static_cast
63. Data hazard קורה כאשר:

  1. יש נסיון לגשת לאזור זכרון שאיננו ממופה לCache
  2. יש נסיון לגשת לאזור זכרון וירטואלי שאיננו ממופה לRAM
  3. יש קפיצה לאזור בקוד שאיננו בCache
  4. יש הוראה התלויה בתוצאה של הוראה אחרת, שטרם הושלם ביצועה בPipeline
64. פונקציות ה- Interlocked של Windows מאפשרות לעדכן משתנים בצורה Thread-Safe. כיצד הן ממומשות?

  1. ע"י קריאה לפונקציה של ה- Kernel, הדואגת לסנכרון ה- Threads
  2. ע"י נעילת פסיקות ו- Context Switches, עד שתושלם הפעולה
  3. ע"י Mutex המגן על המידע
  4. באמצעות פקודות אסמבלי מיוחדות של המעבד המתבצעות בצורה אטומית
65. בהינתן טבלאות Person ו- Car, מה המשמעות של הרצת השאילתה הבאה בתוך transaction?

INSERT INTO Person (TeudatZehut, Name) VALUES (12345678, ‘Arik’);
INSERT INTO Car (OwnerTeudatZehut, CarNumber) VALUES (12345678, 2388841);
  1. שתי השאילתות יורצו בפעולה אטומית אחת, כך שאין סיכוי שמשתמש אחר יתערב בטבלאות תוך כדי
  2. אם השאילתה השנייה תיכשל, הראשונה תבוטל
  3. אין משמעות מאחר ואין מספר פעולות על אותה טבלה
  4. לא ניתן להריץ שאילתות על מספר טבלאות בתוך transaction אחד
66. איזה מבין הבאים איננו מאפשר לתקשר בין תהליכים הנמצאים על מחשבים שונים?

  1. Sockets
  2. Named Pipes
  3. DCOM
  4. הודעות WM_COPY
67. להלן קטע קוד:

int *x=new int[100];
int *p=x;
*p++=*p++=1;
for (int i=2; i<100; p++){
	*p=p[-1]+p[-2];
}

מה יכיל המערך x לאחר הריצה שלו?

  1. סדרה חשבונית עולה, אשר איבר הקידום שלה נמצא ב-x[2]
  2. כל האיברים יכילו את הערך 1
  3. שני האיברים הראשונים יכילו את הערך 1, כל היתר את הערך 0
  4. סדרת פיבונצ'י
68. Windows Vista הציגה את UAC. איזו מהאפשרויות הבאות מהווה תוצאה ישירה של UAC?

  1. קפיצת חלונות שמבקשים מהמשתמש לאשר ביצוע פעולות שדורשות הרשאות גבוהות מההרשאות הנוכחיות שלו
  2. Windows Messages יכולים להישלח בין desktopים שונים
  3. אלא אם למשתמש יש כרטיס גרפי טוב, חלק גדול מזמן הCPU מוקדש לחישוביים גרפיים
  4. חברים בקבוצת הAdministrators לא מורשים לטעון דרייברים חתומים
69. איזה כתובת יוצאת דופן?

  1. 100.0.0.1
  2. 194.2.5.1
  3. 201.0.1.211
  4. 230.0.1.1
70. איך ניתן לפתור את בעיית היהלום בC++?
בהינתן המחלקות istream ו-ostream היורשות מ-stream, ו-iostream יורשת מ-istream וגם מ-ostream:

  1. לעבור לג'אווה, אין פיתרון בC++
  2. להגדיר את הירושה של istream ו-ostream כוירטואלית
  3. להגדיר את הירושה של iostream כוירטואלית
  4. להגדיר את שלושת הירושות המצויינות ב-ב' ו-ג' כוירטואליות
71. AJAX יכול לעזור לנו ב:

  1. סינכרון חיבורי XML ב-Java
  2. הצגה גרפית של עץ ב-XML
  3. יצירת עמוד web בעל תוכן דינאמי המתעדכן מהשרת
  4. עיצוב עמוד web בעזרת גירסאות CSS חדשות ופורמט SVG
72. רשמת את המילה 0xBADF00D לכתובת 0xDEADBEEF
כשקראת מהכתובת 0xDEADBEEE, קיבלת את הערך 0xBADF00E
מה יכול להיות הגורם לכך?

  1. תמיד נשמר גיבוי למידע שאתה רושם בזכרון בכתובת קרובה
  2. Parity bit מקולקל
  3. הצלבה של קווים בData bus, וקיצור של קווים בAddress bus
  4. חיבור תמידי של הLSB בData bus ל-1
  5. אין לי מושג, אבל לך תקנה מחשב חדש
73. מפת קרנו מסייעת לך:

  1. למצוא מימוש יעיל של פונקציה בוליאנית
  2. לנווט בGoogle Earth
  3. לבחור מה סוג הFlip flop שבו צריך להשתמש
  4. לחשב פעולות אריתמטיות על מספרים בינאריים
74. מה עושה הקטע הבא:

for (i=0; i<10; i++);
    putchar('-');
  1. מדפיס עשרה מקפים
  2. מדפיס תשעה מקפים
  3. מדפיס מקף אחד
  4. מחשב את היקף המעגל
75. להלן קוד ++C:

class A {
public:
	A() {};
	A(const A& a) {cout<<"in copy cons"<<endl; }
	A(const A* a) {cout<<"in simple function"<<endl; }
};
void main() {
	A a;
	A b(&a);
}

מה יודפס לאחר הרצת הקוד הבא?

  1. in simple function
  2. in copy cons
  3. שגיאת קומפילציה, הקומפיילר לא יכול להבין לאיזו מבין הבנאים להתייחס
  4. אף אחת מהתשובות אינה נכונה
76. האם ה-containerים של STL מסוגלים להתמודד עם אובייקטים נטולי קונסטרקטור דיפולטי?

  1. כן, הזיכרון לא מוקצה מראש בהינתן אובייקט כזה
  2. לא, זה היה אפשרי אם הזיכרון לא היה מוקצה מראש, אך זה נוגד את אלגוריתמי הקצאת הזיכרון בהם משתמשים ה-containerים.
  3. כן, באמצעות placement new
  4. כן, באמצעות set_new_handler
77. איך שרת אינטרנט יכול לבנות סטטיסטיקות לגבי הדפדפנים של המשתמשים שלו?

  1. לפי הUser-Agent שלהם
  2. בעזרת שאילתה מיוחדת של פרוטוקול http
  3. הוא יכול להציג דפים עם קוד DHTML שיעבוד נכון רק בIE ולערוך סטטיסטיקה ע"פ מספר המיילים הזועמים שמגיעים למערכת
  4. המידע הזה נשלח כחלק מפרוטוקול PPPoE
78. אם חיפוש יעיל של מחרוזת בת 10 תווים בתוך קובץ של ג'יגה ביית לוקח שלושת רבעי השעה, כמה צריך לקחת חיפוש דומה של מחרוזת בת מאה תווים בתוך קובץ של 1 טרה ביית?

  1. שעה
  2. יום
  3. חודש
  4. שנה
79. (*) הקוד הבא עוזר לחשב קבוע מתמטי מסויים. איזהו?

srand(time(NULL));
a=250;
cnt=0;
for (int i=0 ; i<31337 ; i++){
	int n=(rand()%(a*2))-a;
	int m=(rand()%(a*2))-a;
	if (n*n+m*m<=a*a){
		cnt++;
	}
}
  1. PI
  2. e
  3. phi (חתך הזהב)
  4. i
80. קיבלת חלון שגיאה בWindows שאומר:

The system has detected an IP address conflict with another system on the network.
Network operations on this system may be disrupted as a result. 
More details are available in the system event log. 
Consult your network administrator immediately to resolve the conflict.

איך Windows יודע לזהות קונפליקט כזה?

  1. ניתוח הודעות ARP העוברות ברשת
  2. ניתוח הודעות DHCP העוברות ברשת
  3. הוא קיבל הודעת ICMP עם Type 15(Address conflict)
  4. הוא שלח הודעת Ping, אבל לא קיבל תשובה. מכאן הוא מסיק שהתשובה הגיעה למחשב אחר
81. מה המספר הבא בסדרה:
2,3,6,7,8,12,13,16

  1. 17
  2. 18
  3. 19
  4. 20
82. איזה מבין הבאים איננו אובייקט Kernel ב- Win32?

  1. Critical Section
  2. File
  3. Mutex
  4. Semaphore
  5. Thread
  6. Process
  7. Event
  8. Pipe
83. המשמעות לנ"ל היא ש:

  1. לא צריך לבצע ring transition בעת שימוש באובייקט
  2. לא ניתן לחלוק את האובייקט בין processים שונים
  3. לא ניתן להשתמש ב- WaitForMultipleObjects על האובייקט
  4. תשובות א-ג נכונות
  5. אף תשובה אינה נכונה
84. מה גדול יותר מאה עצרת או מאה בחזקת מאה?

  1. מאה עצרת
  2. מאה בחזקת מאה
  3. שווים
  4. תלוי בבסיס הספירה
86. בחיבור בינארי רגיל חיברתי שתי ספרות עשרוניות המקודדות בקוד BCD אך התוצאה יצאה שגויה. מה עליי לעשות על מנת לתקן אותה?

  1. לחסר 0101b
  2. להפוך לייצוג המשלים ל-2
  3. לחבר 0110b
  4. השגיאה שונה בכל חיבור של שתי ספרות שונות
87. נתונה הפונקציה f:

int f(int x) return x^(x>>1);

איזו g מקיימת את התכונה: g(f(x))==x לכל x?

  1. int g(int x){
    	for (int i=16 ; i ; x^=x+i , i>>=1);
    	return x;
    }

  2. int g(int x){
    	for (int i=16 ; i ; x^=x>>i , i>>=1);
    	return x;
    }

     

  3. int g(int x) return x^(x<<1);
  4. int g(int x){
    	for (int i=0 ; i<=16 ; x^=x>>i , i<<=1);
    	return;
    }
88. מה שם הקידוד שבו משתמשים על מנת לספור שורות ועמודות במפת קרנו?

  1. Hamming
  2. Gray
  3. Manchester
  4. NRZ
89. הגדרת משתנה גלובלי לא מאותחל. באיזה section של ה- EXE/DLL משתנה זה ישב?

  1. bss
  2. code
  3. text
  4. data
90. (*) מה השטח המירבי של ספה שיכול לעבור בפינת זוית ישרה של שני מסדרונות ברוחב מטר?

  1. לכל היותר 1.5 מ"ר
  2. בדיוק 1 מ"ר
  3. לכל הפחות 2 מ"ר
  4. לכל היותר 2.1 מ"ר
91. (**) נגדיר שפה חדשה – שפת החומוס-צ'יפס-סלט:
לרשותך מצביע בודד, נקרא לו p, המצביע בכל פעם על בית בודד, כאשר פקודות השפה מבצעות פעולות שונות על המצביע.
הנח כי בתחילת התכנית כל הזכרון מאופס ל-0.
להלן פירוט הפעולות השונות בשפה:
סלט – הגדלת המצביע p ב1.
כרוב – הקטנת המצביע p ב1.
חומוס – הגדלת הערך שנמצא במיקום בזכרון שאליו מצביע p.
צ'יפס – הקטנת הערך שנמצא במיקום בזכרון שאליו מצביע p.
חריף – קפוץ קדימה למילת ה"טחינה" המקבילה אם הערך שאליו מצביע p הוא 0.
טחינה -קפוץ אחורה למילת ה"חריף" המקבילה אם הערך שאליו מצביע p הוא לא 0.
פיתה – הדפס את תוכן התא אליו מצביע p (מתייחס לp כאל char בAscii).
פלאפל – קלוט מהמשתמש תו, ושים אותו במקום שאליו מצביע p. אם הגעת לסוף הקלט, שים 0.

המקבילה בשפת C לפקודות הללו מתואר כאן:

סלט – p++
כרוב – p–
חומוס – (*p)++
צ'יפס – (*p)–
חריף – while(*ptr){
טחינה – {
פיתה – putchar(*p)
פלאפל – *p = getchar()
שים לב כי מטרת פקודות הטחינה-חריף היא ליצור לולאות, בדומה ללולאות הWhile בשפת C.
כמו כן, לכל פקודת חריף חייבת להיות פקודת טחינה מתאימה.
הפקודות בשפה מבוצעות שורה שורה, למעט פקודות החריף-טחינה, אשר משנות את הFlow של התוכנית.
לפניך קטע קוד בשפת חומוס-צ'יפס-סלט. מעברי השורות והרווחים הם למטרות קריאות בלבד, והמהדר מתעלם מהם.
מה ידפיס קטע הקוד?
חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס
חריף
סלט חומוס חומוס חומוס חומוס חומוס חומוס
סלט חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס
סלט חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס חומוס
כרוב כרוב כרוב צ'יפס
טחינה
סלט חומוס פיתה
סלט סלט חומוס פיתה
כרוב חומוס פיתה חומוס פיתה
כרוב חומוס חומוס חומוס חומוס פיתה
סלט סלט חומוס חומוס חומוס חומוס חומוס חומוס פיתה
צ'יפס צ'יפס צ'יפס פיתה
חומוס חומוס חומוס פיתה

92. האם ניתן לממש בשפת חומוס-צ'יפס-סלט קטע קוד הקולט מספרים וממיין אותם?

    1. לא, אין פקודת השוואה בשפה
    2. לא, מיון דורש יכולת העתקה / החלפה בין בתים
  1. כן, אבל אך ורק אם נוסיף פקודה נוספת – חמוצים, אשר מבצעת swap בין ערך תא בזכרון לערך שנמצא ישר אחריו
  2. כן, כי חומוס-צ'יפס-סלט היא Turing complete

חגיגות עשרים שנה

רשומה רגילה

שלום לכולם,

קודגורו הבא יהיה מספר 20 – ז"א שעוד מעט אנחנו חוגגים עשרים שנה לתחרויות קודגורו.

מי שרוצה להשתתף בחגיגות, מוזמן לענות כאן, או לכתוב לנו. אנחנו מחפשים:

זוכי עבר שרוצים לספר היכן הם כיום

מורים, מדריכים, הורים, מעסיקים וכל מי שיש לו סיפור מעניין לספר

עודד

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

רשומה רגילה

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


1)איזו חברה ייצרה את המחשב המהיר ביותר בעולם?
 cray
 יבמ
 מיקרוסופט
 גוגל

2)כמה מתמודדים השתתפו בתחרות IEEEXtreme 5.0 וכמה מהם היו מישראל?
 כ-4,500 משתתפים, אפס מישראל
 כ-1500 משתתפים, יותר ממאה מישראל
 כ-100 משתתפים, כולם מישראל
 כ-10,000 משתתפים, פחות ממאה מישראל

3)מה מהבאים איננה, במקור, שפת תכנות מונחת עצמים?
 פייתון
 ג'אווה
 קובול
 ++C

4)באג Y2K הוא?
 באג שתקף את כל המערכות שנוצרו לאחר שנת 2000.
 באג שגרם למחשבים לחשוב שחזרנו אחורה בזמן.
 באג שגרם למערכות לדלג על שנת 2000.
 באג שתוקן עד שנת 2000.

5)*האם המספר 98765432107370123456789 ראשוני?
 לא, כי לא יכול להיות שפלינדרום יהיה ראשוני
 לא; יש לו גורם שהוא מספר עשר ספרתי
 כן, ואם נחליף את הספרה האמצעית בכל ספרה אחרת הוא יהיה פריק
 כן, ואפשר להחליף את הספרה האמצעית ולקבל מספר ראשוני אחר

6)*מה אפשר לומר על המספר 026132600265 ?
 כמספר עשרוני, הוא מתחלק בשנת הולדתו של מוזיקאי ג'אז בעל שם זהה לאסטרונאוט שנפטר השנה
 כמספר אוקטלי, הוא גרם למיקרוסופט להתנצל
 כמספר הקסדצימלי, כל גורמיו הראשוניים הם קטנים מ-0x200
 כל התשובות נכונות

7)*כמה קודקודים יש לקובייה ארבע מימדית?
 שישה
 שמונה
 שנים עשר
 שש עשרה

8)*מה הסיכוי שבהטלת מטבע הוגן מאה פעמים יצא בדיוק 50 עץ ו-50 פאלי?
 פחות מפרומיל
 בערך שמונה אחוז
 בדיוק אחוז
 לפחות חמישים אחוז

9)איזה מהתוכנות הבאות נועדה כדי להריץ קוד ב-JavaScript?
 Chrome
 HTML
 MySQL
 Python

10)באיזה שפת צד-שרת כתובה Wikipedia?
 ASP.NET
 AJAX
 Ruby
 PHP

11)כיצד youtube מציג את המידה (סרטונים) למשתמש?
 בעזרת Windows Media Player ודומיו.
 בעזרת נגן Flash יעודי.
 בעזרת CSS/JavaScript.
 בעזרת שילוב HTML5 ו- Silverlight.

12)האם הקטע הבא מעמוד HTML תואם לתקן HTML 4,מה עלי לעשות ע"מ להתאימו לתקן XHTML?
<font size=6><b>CodeGuru!</b></font>
 <span style='font-size:medium; font-weight:bold;'>CodeGuru!</span>
 <font size=6 style='text-color: red'>CodeGuru!</font>
 <b>CodeGuru!></b>
 <span style='font-size:xx-small;'>CodeGuru!</span>

13)למה נשתמש ב AJAX?
 לניקוי הלכלוך שהצטבר על המסך שלנו.
 לשם תקשורת בין מספר מופעים של הדפדפן על אותו המחשב.
 לשם תקשורת בין מספר מופעים של הדפדפן על מחשבים שונים.
 לעדכון המידע המצוי בדף אינטרנט ללא רענון יזום של הדף ע"י המשתמש.

14)איזה סוג משתנה (variable types)אינו קיים ב-JavaScript?
 Boolean
 Map
 Object
 String
 Number

15)מאיזה סיבה לא נרצה להשתמש ב eval ב-JavaScript?
 אין סיבה.
 המימוש שלה בגרסאות מוקדמות של JavaScript בעייתי.
 אינה נתמכת על ידי רוב הדפדפנים העדכניים.
 עלולה להוות בעיית אבטחה.

16)ב-JavaScript, מה ההבדל בין & ל- && בתוך משפט if?
 טעות בקוד, & יגרום לשגיאה בריצה.
 הראשון מבוצע ברמת ה-bit, השני ברמה הלוגית.
 טעות בקוד,אך המפענח של JavaScript ישלים את הפקודה ל-&&.
 הראשון במוצע ברמה הלוגית, השני ברמת ה-bit.

17)*JavaScript מאפשרת לבצע Operator Overload בעזרת הפקודה
 האפשרות קיימת, נבצע בעזרת operator_overload
 האפשרות אינה קיימת.
 האפשרות קיימת, אך לא צויינה בשאר התשובות.
 האפשרות קיימת, יש לחליף את שם הפונקצייה באופרטור הרצוי.

18)מדוע הקוד הבא(JavaScript) יכשל במהלך הריצה?
var Names = new Array("Oded","Zvi","Uri","Michael"); var Name = new String(""); foreach (Names as Name) document.write('Hello ' + Name);
 לא ניתן להשתמש בלולאת foreach.
 מכיוון ש Name הוגדר ללא ערך.
 הגדרת מחרוזות חייבת להעזרת בעזרת גרש בודד.
 האובייקט Array אינו מוגדר.
 המתודה write אינה תומכת במערכים.

19)ב-JavaScript, מה הפלט עבור קטע הקוד הבא?
document.write("19" + (41 + (14 * 2)) + "0" + "7" + (80 / 4));
 המספר 19690720
 המספר 1941280720
 לא ניתן לבצע חלוקה בתוך String.
 לא ניתן לבצע פעולות אריתמטיות בתוך String.

20)ההשוואה בין final ל const היא כמו boolean ל?
 case
 bool
 PHP
 C#

21)מה מחשב הביטוי הבא:
x+y+|x-y|
 מינימום
 מקסימום
 פעמיים מקסימום
 פעמיים מינימום

22)מהם assemblies ב .net?
 ספריות קוד לא מקומפלות אשר יבנו לתוך התוכנה שתכלול אותם.
 ספריות קוד מקומפלות אשר יבנו לתוך התוכנה שתכלול אותם.
 ספריות קוד אותם מכינה מיקרוסופט בלבד עבור המפתחים.
 ספריות קוד מכונה אשר ניתן לבנות לתוך תוכנות אחרות.

23)איזה מהבאים אינו משמש לנעילת אזורים לריצה מקבילית?
 Semaphore
 Mutex
 DebugBreakPoint
 Spinlock

24)מה מהבאים הינו תפקידו של ה GC?
 פינוי קטעי קוד שאינם רלוונטים בזמן ריצה.
 פינוי מקום מה-Stack שה-Reference Counter הוא 0.
 פינוי מקום מה-Heap שה-Reference Counter הוא 0.
 פינוי קטעי Data שאינם רלוונטים בזמן ריצה.

25)איזה מהבאים יפגע מבחינת ביצועים ב-JIT?
 ביצוע פעולות מתמטיות.
 ביצוע פעולות הגדולות מגודל מילת המעבד.
 טעינת התוכנה.
 סגירת התוכנה.

26)לאיזה טיפוס ב .net ממופה מילת הקוד int ב C#?
 לטיפוס System.Int32
 לטיפוס int
 לטיפוס System.Int
 לטיפוס Integer

27)*כיצד נאתחל שדות שהם transient לאחר יצירה מ-serialization ב-Java?
 יש לממש את המתודה הפרטית writeObject
 יש לממש את המתודה הפרטית readObject
 יש לממש את המתודה המוגנת finalize
 יש לממש את המתודה הפרטית readResolve

28)ב-Java, מהי הדרך הנכונה להריץ Thread?
 ע"י הפקודה thread.execute()
 ע"י הפקודה thread.run()
 ע"י הפקודה thread.begin()
 ע"י הפקודה thread.start()

29)ב-Java, האם יתכן שבפונקציית main המערך String[] args יהיה ריק?
 לא, מכיוון שתמיד האיבר הראשון הוא הפקודת java
 כן, במידה ולא ניתנו פרמטרים
 לא, מכיוון שתמיד האיבר הראשון הוא שם הClass
 כן, בהנחה ומריצים ע"י double-click ולא משורת פקודה

30)נתון קוד הבא, ב-Java,האם התנאי אמור להתקיים?
int n = 12; Integer n2 = new Integer(n); if (n == n2) { System.out.println("success"); }
 לא, מכיוון שהקוד לא תקין, לא ניתן להשוות בין טיפוס בסיסי לאובייקט
 לא, מכיוון שה-JVM ימיר את ה-int לאובייקט ויעשה השוואה ע"פ בין אובייקטים ע"פ ה-referenceים שלהם ולכן התנאי לא יתקיים
 כן, מכיוון שה-JVM ימיר את האובייקט לטיפוס int, יבצע השוואה רגילה ולכן התנאי יתקיים
 כן, מכיוון שה-JVM ימיר את ה-int לאובייקט ויבצע השוואה ע"פ hashCode ולכן התנאי יתקיים

31)נתון קוד הבא, ב-Java,מה הבעיה בקוד הנ"ל?
int n = 10; Integer n2 = n;
 השורה השניה תיכשל מכיוון ש-n הוא טיפוס בסיסי (primitive) ו-n2 הוא אובייקט. לא ניתן לבצע השמה של טיפוס בסיסי לתוך אובייקט ללא המרת ביניים
 החל מגרסה 1.5 של java ישנה תמיכה ב-autoboxing ולכן הקוד הנ"ל תקין לחלוטין
 החל מגרסה 1.4.2 של java ישנה תמיכה בהשמה כזו ולכן אין כל בעיה
 יש לתקן את השורה השנייה על-ידי קריאה ל-Integer.parseInt

32)מי מהבאים הוא Duke?
 השדון של מערכת BSD
 היצור של שפת Java
 סמל הפינגווין של מערכת לינוקס
 הסמל של טכנולוגית .Net

33)מהי הדרך המומלצת לפתוח קובץ טקסט ב-Python שעובר בין לינוקס ו-Windows?
 file('x.txt', 'rb'), יש לפתוח את הקובץ במוד בינארי כדי לשמר את כל התוים כפי שהם בתוכו
 צריך לפתוח את הקובץ במוד בינארי, ולהמיר אותו למחרוזת ולהפעיל טרנספורמציה שתמיר את סיומות השורה לפי מערכת ההפעלה עליה אנו עובדים
 file('x.txt', 'r'), כך נשמר את התו המסיים של השורה - \n או \r\n
 עוד לא נמצאה דרך פשוטה לבצע את המטלה הזו, עקב תמיכה לקויה של פייתון בשפות Unicode שאינן אנגלית או לטיניות

34)נתון הקוד הבא ב-Python, מה הוא ידפיס?:
print r'\\hello world'
 hello world\\
 hello world\
 r'\\hello world'
 הפקודה לא חוקית, לכן לא יודפס כלום.

35)סדר את תקני התקשורת הבאים מהמהיר לאיטי
 RS232, fire-wire, USB-1
 USB-1, fire-wire, RS232
 fire-wire, USB-1, RS232
 RS232, USB-1,fire-wire

36)בתקשורת מחשבים, מה פרוש NACK?
 ארגון מרוצים בצפון אמריקה
 אישור על כשלון\אי תקינות
 תוכנת אודיו ממוחשבת
 כל התשובות שגויות.

37)איזה מכתובות ה-IP הבאות חוקית:
 אף אחת מהם.
 212.100.0.1.1
 212.256.0.1
 212.255.0.1

38)למה משמש הקובץ /etc/fstab בלינוקס?
 קובץ המתאר לאילו קבצים יכול המשתמש לכתוב.
 קובץ המתאר את סוגי הקבצים בהם המערכת תומכת.
 קובץ המתאר את סוגי הכוננים המותקנים במחשב.
 קובץ המתאר את סוגי מערכות הקבצים במחשב.

39)אילו מהקבצים\סוגי קבצים הבאים אינו שייך ל /boot (כברירת-מחדל, כמובן)?
 vmlinuz
 System.map
 initrd
 אף אחד מהרשומים מעלה.

40)*למה משמש chroot?
 לשנות את שמו של המשתמש root
 לשנות את תיקיית השורש לאחרת.
 לשנות את המיקום הנוכחי לתקייה /root
 לשנות את מיקום תיקיית ה-/root.

41)מהו livecd?
 cd בעל אופי ורצונות משלו.
 cd המקבל עדכונים מהרשת מידי פעם.
 cd שנועד לתקן מערכות פגומות.
 cd המסוגל לבצע boot למערכת.

42)מי מהבאות אינה תוכנת לניהול חבילות בלינוקס?
 apt-get
 lzma
 rpm
 yum

43)כשאומרים vanilla kernel, הכוונה ל?
 הקרנל הטוב ביותר מכל שאר הקרנלים.
 הקרנל כפי שנחתם על ידי לינוקס כולל patchs נוספים.
 אוסף של קרנלים מובחרים.
 הקרנל כפי שנחתם על ידי לינוס ללא patchs נוספים.

44)מהו POSIX?
 תקן עבור מערכות UNIX.
 תקן תקשורת בין מחשבים על גבי TCP/IP.
 תקן לממשק משתמש גרפי.
 תקן נגישות למפתחים בעלי מוגבלויות

45)מה הוא היחס בין Thread ל- Process?
 הראשון מכיל את השני.
 אין בינהם יחס כלל.
 שניהם שקולים לגמרי.
 השני מכיל את הראשון.

46)מה ההבדל בין Background Thread לבין Thread רגיל?
 כאשר בתהליך שרץ נשארו רק background threads הוא נסגר ומסיים את ריצתו
 ההבדל הוא שהעדיפות שניתנת ל-thread רגיל גבוהה משמעותית
 אין הבדל מעשי, קיים הבדל סמנטי שנעוץ בתפקיד שנותנים לכל thread
 כאשר נסתכל על Process שרץ לא נראה את ה-background threads משום שמערכת ההפעלה מסתירה אותם מאחורי הקלעים

47)*נתון הקוד הבא (ב-C), מהו הקלט שהמשתמש יצטרך לספק ע"מ שתודפס ההודעה?
int myNum; printf("enter a number: "); scanf("%x", &myNum); if (3 == myNum % 57) printf("CodeGuru!\n");
 המספר 59
 המספר 57
 המספר 60
 המספר 3c

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

רשומה רגילה
(1) איזה צוות זכה במקום ראשון בתחרות קודגורו אקסטרים הראשונה?
 א. שלישיה
 ב. 42
 ג. זאוס
 ד. ממליגה

(2)* מה גדול יותר: מאה בחזקת גוגול או גוגול בחזקת מאה?
 א.תלוי בבסיס הספירה
 ב. השני טיפה יותר גדול
 ג. שניהם זהים
 ד. הראשון הרבה יותר גדול

(3) נתון כי X הוא מס' אי זוגי. הביטוי - 4/(X² -1) יהיה תמיד:
 א. כל התשובות נכונות
 ב. זוגי
 ג. אי-זוגי
 ד. שלילי

(4)* מאילו שערים ניתן לייצר את כל הפונקציות הבוליאניות?
 א. OR
 ב. NAND
 ג. AND ו- OR
 ד. XOR ו- NOT

(5) בכמה נקודות שונות על פני כדור הארץ ההוראה הבאה אינה חד משמעית: "לכו X" כש-X הוא כל אחת מהאפשרויות: צפונה, דרומה, מזרחה, מערבה.
 א. שתי נקודות
 ב. נקודה אחת
 ג. הרבה נקודות
 ד. אף נקודה

(6) אומרים שיש קשר בין הלחץ האטמוספרי לבין טמפרטורות הרתיחה של מים. לפי זה האם לחוף ים המלח טמפרטורת הרתיחה של מים
 א. נמוכה מ-100°
 ב. נשארת 100°
 ג. גבוהה מ-100°
 ד. משתנה מנקודה אחת לשנייה לאורך החוף

(7) זמזום הדבורים הוא גלי קול הנוצרים כתוצאה מתנועת הכנפיים שלהן. זן של דבורים בעלות אותם מימדים אך שוקלות מעט יותר יזמזם בטון:
 א. גבוה יותר
 ב. אותו טון
 ג. נמוך יותר
 ד. הזמזום לא תלוי בתנועת הכנפיים.

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

(9) ** מה עושה קטע הקוד הבא: (מומלץ להעתיק ל notepad)
for(m=k=0;k&lt;n;m+=!(a[k++]-j)&lt;&lt;1)if(!m--)j=a[k];
 א. מוצא איבר ראשוני
 ב. מוצא איבר נפוץ יותר מחצי
 ג. מוצא איבר שגדול מכל קודמיו
 ד. כל התשובות נכונות - תלוי בערכו הראשוני של j

(10) מה היה שם הקוד של מבצע תקיפת הכור העיראקי?
 א. תמוז
 ב. אופרה
 ג. גבעת התחמושת
 ד. כל התשובות נכונות

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

(12)* מי מהמספרים הבאים חייב להיות פלינדרום בכל בסיס ספירה?
הערה: כל המספרים הם בני אותו בסיס.
 א. 11 * 11
 ב. 1000000000000000-1
 ג. 1010101010101010101010101
 ד. כל התשובות נכונות

(13) למי יש שטח גדול יותר למשולש שווה צלעות או לריבוע בעל אותו היקף?
 א. לריבוע
 ב. למשולש
 ג. אותו דבר
 ד. אי אפשר לדעת

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

(15) אם אני נמצא בנמל תעופה ומנסה ל hotspot ועולה לי תפריט התחברות באמצעות הדפדפן, באיזה מצב אני נמצא מבחינת ה hotspot?
 א. not associated ,authenticated - ה hotspot זיהה אותי אבל עדיין לא רואה אותי בתור מישהו שהוא associated עד שאתחבר
 ב. not associated, not authenticated - הנתב לא מסכים לזהות אותי בתור מכשיר ברשת עד שאספק שם משתמש וסיסמא מתאימים
 ג. associated , authenticated - למעשה אני כבר חבר ברשת המקומית אבל ה hotspot חוסם לי את התקשורת החוצה
 ד. associated , authenticated – אך אינני חבר ברשת המקומית (מדובר בהרחבת התקן, שנקראת 802.11 Enhanced)

(16) נתון הקוד הבא, מה עלי לשנות בכדי לתקן את בעיית האבטחה הברורה בו? (מומלץ להעתיק ל notepead)
{ char Buffer[16]; printf("Type in your name: "); gets(Buffer); printf("\n Your name is [%s]!\n",Buffer); {
 א. נחליף את ההקצאה מה-Stack ל-Heap.
 ב. נחליף את הפונקציה gets ל- scanf.
 ג. נשתמש בגודל הקצאה גולה מ-16.
 ד. נחליף את את הפונקציות ל-fprintf ו- fgets.

(17) כתבתי תוכנית המשתמש ב-atexit(), מדוע הפונקציה שלי לא נקראה?
 א. מכיוון שהשתמשת ב _exit()
 ב. מכיוון שהפונקצייה הראשית יצאה בעזרת return.
 ג. מכיוון שלא השתמשת ב windows.h
 ד. מכיוון שהשתמשת ב exit()

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

(19) מה תופס יותר מקום אכסון: סרט וידאו, או קובץ טקסט שמכיל את התמלול שלו?
 א. התמלול
 ב. הסרט
 ג. אותו דבר
 ד. תלוי עם יש כיתוביות

(20) ב-Android, מה תפקידו של ה-Dalvik?
 א. יצירת שכבה וירטואלית בין האפליקציה למכשיר.
 ב. יצירת מספר מופעים של אותו ה Kernel.
 ג. יצירת שכבה המאפשר לאפליקציות מסוג JNI לרוץ.
 ד. יצירת משכבה המאפשרת למופעים רבים של Android לרוץ על אותו המכשיר.

(21) ב-Android, מה משמעות rooted device?
 א. מכשיר אבטיפוס לסדרת מכשירים חדשה.
 ב. מכשיר אשר התוכנה בו מאשר יכולות אדמין למשתמש.
 ג. מכשיר המשמש להדגמת יכולות בארועים מיוחדים.
 ד. מכשיר אשר תוכנה בו מכילה וירוס.

(22) ב-Android, מהי שפת הפיתוח העיקרית לפיתוח אפליקציות?
 א. J#
 ב. Objective-C
 ג. Eclipse
 ד. Java

(23) מה ההבדל בין switchל hub?
 א. אלו אותם מוצרים, השמות ניתנו על ידי יצרנים שונים.
 ב. בעוד ש Switch שולח חבילה ליעד בודד, Hub שולח לכל המחשבים המחוברים מבלי קשר ליעד הנכון.
 ג. מדובר בסוגים שונים של אותה טכנולוגיה, כאשר ההבדל העיקר היא מהירות התקשורת ביניהם.
 ד. Hub משמש לסביבות בהם עובר מידע רב (כגון חוות שרתים) בעוד switch משמש לסביבת SOHO.

(24) "אריה במדבר" זה :
 א. באג נפוץ
 ב. מחשב על רב עוצמה
 ג. משחק סימולציה
 ד. שיטת חיפוש בינארי

(25) כמה בתים יש בביט?
 א. 11
 ב. אין בביט אף בית
 ג. 8
 ד. 7

(26) סיב אופטי עובד באמצעות :
 א. אור
 ב. גלי רדיו
 ג. מוליכות חשמלית
 ד. זרימת מים

(27)* איך נגדיר בשפת C מצביע שלא ניתן לשנות את התוכן שהוא מצביע עליו?
 א Char * const ptr;
 ב. char const * ptr;
 ג. static char * ptr;
 ד. const char const *ptr;

(28) מה האיבר הבא בסדרה?
0x43,0x6f,0x64,0x65,0x47,0x75,0x72
 א. 0x43
 ב. 0x75
 ג. 71
 ד. 114

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

(30) מי מהבאים זכה בפרס טיורינג?
 א. אמיר פנואלי
 ב. כל התשובות נכונות
 ג. מיכאל רבין
 ד. עדי שמיר

(31) מה סדר הגודל של מספר ההשוואות הדרושות למצא למצוא את המספר המירבי מתוך N איברים?
 א. log(n)
 ב. n log(n)
 ג. n
 ד. n^2

(32) מה שם המחשב הראשון שהגיע לארץ?
 א. קולוסוס
 ב. אניאק
 ג. וויצק
 ד. יבמ

(33) נתון קוד ה-Java הבא. מה הבעיה בקוד הנ"ל?
int n = 5; Integer n2 = n;
 א. החל מ-java 1.5 ישנה תמיכה ב-autoboxing ולכן הקוד הנ"ל תקין לחלוטין
 ב. השורה השניה תיכשל מפני ש-n הוא טיפוס בסיסי (primitive) ו-n2 הוא אובייקט. לא ניתן לבצע השמה של טיפוס בסיסי לתוך אובייקט ללא המרת ביניים
 ג. החל מ-java בגרסה 1.4.2 ישנה תמיכה בהשמה כזו ולכן אין כל בעיה
 ד. יש לתקן את השורה השנייה ע"י קריאה ל-Integer.parseInt

(34) ברשותי מחשב כף-יד מצוייד באנטנת GPS ותוכנת ניווט מתאימה. יצאתי מהמשרד, אך חולפות 2 דקות עד לקבלת מיקום מדוייק, מדוע?
 א. רכיב ה-GPS נדרש להתאמת מול כל 24 לוויני ה-GPS השונים ע"מ לקבל מיקום ראשוני מדוייק
 ב. כדי לקבל מיקום מדוייק נדרשים לכל הפחות 3 לווינים בקשר עין. בסביבה עירונית עם מבנים גבוהים כאשר חלק מהשמיים מוסתר לוקח זמן להתחקות אחר 3 לווינים מתאימים
 ג. עוצמת האות שמגיע מהלווין חלשה, לכן לוקח זמן להגביר אותה ולחשב מיקום
 ד. ייתכן שהמכשיר חדש, לכן לוקח לו זמן ללמוד את האיזור הגיאוגרפי שבו אני נמצא

(35) האם יתכן שמערך ה- String[] args בפונקציית main בJava יהיה ריק?
 א. לא, תמיד האיבר הראשון הוא הפקודת java
 ב. לא, תמיד האיבר הראשון הוא שם הClass
 ג. כן, אם לא ניתנו פרמטרים
 ד. כן, אם מריצים ע"י double-click ולא משורת פקודה

(36) נתון הקוד הבא בשפת C, מה התוצאה של הקוד הבא כאשר int n = 4: (מומלץ להעתיק ל notepad):
switch(n) { case '4': cout << "CoDeGuRu \n"; break; case 4: cout << "CODEGURU \n"; break; default: cout << " codeguru \n"; break; }
 א. CoDeGuRu
 ב. Codeguru
 ג. CODEGURU
 ד. cOdEgUrU

(37) מהי הרשאת ברירת המחדל לגישה לmember בstruct?
הערה: מדובר בשפת C
 א. Public
 ב. Protected
 ג. Private
 ד. ב-structים לא מוגדרות הרשאות, זו תכונה של Classים

(38) במערכת הפעלה Linux, כיצד ניצור Pipe בשם /tmp/route1?
 א. mknod /tmp/route1 p
 ב. ls /tmp/route1
 ג. mkpipe /tmp/route1
 ד. mount /dev/pipes/pipe0 /tmp/route1

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

(40) מה ההבדל בין Set לList ב-Java?
 א. ל-Set אין סדר ול-List יש
 ב. List יכול להכיל גם פרימיטיבים, בעוד ש-Set רק אובייקטים
 ג. ב-List יכולה להיות חזרה על אותו האובייקט בניגוד ל-Set
 ד. תשובות א' ו-ג' נכונות

(41) כמה קודקודים יש לקובייה ארבע מימדית?
 א. שישה
 ב. שש עשרה
 ג. שנים עשר
 ד. שמונה

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

(43) שני קווים ישרים יכולים להיחתך ב-
 א. אפס נקודות
 ב. שתי נקודות
 ג. שלוש או חמש נקודות
 ד. כל התשובות נכונות

(44) מי היא אחת הנשים הבודדות שזכו בפרס טיורינג:
 א. תמר גולדבך
 ב. שולמית לפיד
 ג. שפי גולדווסר
 ד. עדה לאבלייס

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

(46) במכשירי Glalaxy - למה משמש השילוב Power+VolUP+Home?
 א. השילוב הנ"ל גורם למכשיר להכנס למצב Odin Mode
 ב. השילוב הנ"ל גורם לעלית קרנל חליפי (Recovery).
 ג. השילוב הנ"ל גורם למכשיר להכנס למצב Odin Mode, גם בעלייה הבאה של המכשיר.
 ד. השילוב הנ"ל גורם לעלית קרנל חליפי (Recovery), גם בעלייה הבאה של המכשיר.

(47) במכשירי Glalaxy - למה משמש השילוב Power+VolDown+Home?
 א. השילוב הנ"ל גורם למכשיר להכנס למצב Odin Mode
 
 ב. השילוב הנ"ל גורם לעלית קרנל חליפי (Recovery).
 ג. השילוב הנ"ל גורם למכשיר להכנס למצב Odin Mode, גם בעלייה הבאה של המכשיר.
 ד. השילוב הנ"ל גורם לעלית קרנל חליפי (Recovery), גם בעלייה הבאה של המכשיר.

(48) איזה מהיכולות הבאות לא מאפשר ADB בצורה טבעית?
 א. חיבור למכשיר נעול ללא הקשת סיסמה.
 ב. העברת קבצים לתוך מכשיר מוצפן.
 ג. צריבה מחדש של ה bootloader
 ד. דחיפה (push) וקבלה (pop) של קבצי מערכת.

(49)** כמה מילים באורך 3 אותיות עבריות בלבד וללא האות ג', מופיעות בשאלון זה? למשל: "שקל", "בור", "מוט" כן עונות להגדרה, אבל "גדר", "גבר" ו"גדול" לא.


(50)** איזו אות מופיעה חמישית הכי הרבה בטקסט הבא:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla ipsum lorem, vulputate at scelerisque quis, condimentum non tellus. Pellentesque auctor turpis ut ligula imperdiet pellentesque. Aliquam eros nisi, ultrices at lobortis in, mollis vitae sem. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer luctus lobortis interdum. Proin dapibus velit quis urna ornare at molestie est tristique. In at magna at justo placerat tristique ut quis dui. In rutrum, ipsum eu feugiat imperdiet, lacus lectus sollicitudin mi, mollis consectetur nibh dui et eros. Praesent viverra tristique purus et viverra. Donec ut tincidunt metus. Vestibulum vel sem non diam ultricies rutrum ac lacinia felis. Nunc posuere diam a mi bibendum egestas sollicitudin purus facilisis. Sed non auctor mi. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In id imperdiet tellus. Donec enim ligula, venenatis vel tempor at, tincidunt quis lectus. Proin id nisl a lectus tempus malesuada. Duis sed leo justo, ut sodales risus. Cras a suscipit sem. Suspendisse pellentesque viverra massa, a ullamcorper diam aliquam in. Morbi ut risus vel dui dignissim congue quis at dolor. Nullam orci leo, aliquam bibendum tempor vitae, egestas consectetur dui. Morbi a est tempus enim feugiat faucibus vitae eget mi. Curabitur nulla magna, dignissim gravida venenatis quis, sollicitudin ac lectus. Praesent nibh nibh, adipiscing ac varius in, hendrerit eu ipsum. Nunc at lectus est, volutpat luctus ligula. Morbi mattis erat ac purus pretium varius. Morbi consequat mi sed magna pellentesque et ultrices libero bibendum. Mauris tempus, nibh sollicitudin tincidunt malesuada, lorem eros posuere augue, eget sodales mi nunc et eros. Sed rhoncus, urna quis cursus blandit, turpis eros mattis est, at tempor dui dui ac tellus. Nam aliquam lacus sed tellus scelerisque non volutpat augue tincidunt. Mauris eget lorem non nunc congue placerat non sed neque. Nam egestas condimentum interdum. Donec ut bibendum lorem. Suspendisse vel tortor justo, eu cursus ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Maecenas hendrerit mi ut urna viverra lobortis.


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

רשומה רגילה

אלגוריתמיקה ומחשבה

1) כמה קודקודים יש לקוביה ארבע מימדית?
  1. 6
  2. 16
  3. 8
  4. 12
2) מהו הסימן בעל ערך ASCII גבוה ביותר מבין ארבעת הבאים:
  1. a קטנה
  2. A גדולה
  3. Z גדולה
  4. רווח
3) בטלוויזיה, מסך מחשב, מסך צבעוני של טלפון ועוד יש שלושה מקורות אור בצבעים אדום, ירוק, כחול בכל נקודה (פיקסל). איך אם כך יכולים מקורות אלה ליצור את כל שאר הצבעים?
  1. למעשה יש בכל פיקסל יותר מקורות אור כך שאפשר ליצור בכל נקודה את כל הצבעים.
  2. בכל פיקסל יש 3 מקורות צבע, אך אלו משתנים מפיקסל אחד לאלה שלידו. בפיקסל השכן יש 3 מקורות של 3 צבעים אחרים.
  3. 3 מקורות האור אינם מאירים בצבע קבוע, אלא צבעם ועוצמתם משתנים בהתאם לצבע הנדרש ע"י התוכנה.
  4. גם בעין יש רק 3 סוגי קולטני צבע. לכן כל שאר הצבעים הם תוצאה של קליטה בו-זמנית של עוצמות שונות בשלושתם.
4) לפני דורות רבים חיה אשה שילדה בת, שילדה בת, שילדה בת…שילדה בת, במשך 50 דורות. כלומר שרשרת של בנות שלא פסקה במשך 50 דורות (ייתכן שכל אחת ילדה בנוסף גם בנים ובנות נוספים). האם התרחשות זו:
  1. אפשרית בסבירות גבוהה, אך לא ודאית
  2. אפשרית, אך בסבירות נמוכה מאד.
  3. ודאית
  4. בלתי אפשרית
5) חזאים מסבירים שבחורף אנחנו זוכים לגשם כאשר יש "שקע קפריסין". מה הסיבה לכך?
  1. "שקע קפריסין" הוא שם שנתנו חוקרים לשקעים ברומטריים (אזורים בהם הלחץ האטמוספרי נמוך מהרגיל) בכל העולם שמורידים גשמים (נתגלה לראשונה בקפריסין)
  2. שקע ברומטרי בקפריסין גורם לרמה ברומטרית גבוהה (לחץ אטמוספרי גבוה מהרגיל) בישראל שיוצרת קור וגשם בגלל גובה הרמה.
  3. שקע שמרכזו בקפריסין מביא חזיתות קרות מכיוון מערב (הים התיכון) בגלל שכיוון הסיבוב של מערכות אטמוספריות בחצי הכדור הצפוני. הוא נגד השעון.
  4. שקע שמרכזו בקפריסין מביא לארץ רוחות צפוניות בגלל שסיבוב מערכות מזג אוויר בחצי הכדור הצפוני הוא עם כיוון השעון.
6) מה מהבאים ניתן לעשות כעת, אך לא ניתן היה לעשות לפני שנה?
  1. לקנות מחשב קוונטי לבית, בפחות מ-10000 דולר.
  2. להחליף את הדומיין של אתר התחרות ל- code.guru
  3. לכתוב קבועים מספריים בג'אווה עם קווים תחתונים (למשל 000_000_1 בתור מליון), כדי לשפר את קריאותם.
  4. להטיס חללית מכדור הארץ לירח בפחות מעשרים דקות
*7) כמה אפשרויות יש לבחירת סיסמא בת 10 תווים המורכבת מאותיות קטנות וגדולות באנגליות וממספרים בלבד? (הערה: בשפה האנגלית 26 אותיות)
  1. 10×26
  2. 26 ^ 26
  3. 10* 26 + 2^26
  4. 10^62
8) אלגוריתם BFS טוב כאשר נרצה:
  1. למצוא אחת מהדרכים הקצרות ביותר בגרף ממושקל.
  2. למצוא אחת מהדרכים הקצרות ביותר בגרף לא ממושקל.
  3. למצוא את הדרך הקצרה ביותר בכל מצב.
  4. למצוא דרך אלטרנטיבית לדרך נתונה.
9) מניחים טבעת המקיפה את פני כדור הארץ (הטבעת צמודה לפני כדור הארץ), מה תהיה התוספת לאורכה אשר נדרשת בכדי לאפשר לבעל חיים באורך 0.3 מטר לעמור מתחתיה ללא הפרעה ובמקביל לשמור על צורתה?
  1. בערך 30 ס"מ
  2. בערך 900 מטר
  3. בערך 12 ק"מ
  4. בערך 2 מטר
10) מדוע נראה כי הירח והשמש גדולים יותר בשעות הזריחה או השקיעה?
  1. זה סתם נדמה לנו. הם לא באמת נראים גדולים יותר – הכל פסיכולוגיה!
  2. שכבת האטמוספרה העבה יותר קרוב לאופק משמשת כעדשה המגדילה את מראה השמש והירח
  3. בגלל הכבידה השמש והירח גדלים כאשר הם מתקרבים לאדמה
  4. העין שלנו רואה גופים בעלי גוון אדמדם כגדולים יותר
*11) במערכת שמש כלשהי ישנם שלושה כוכבי לכת אשר מסתובבים סביב השמש. לשלושת הכוכבים מחזורי סיבוב של שנה, חמש שנים, ו- פאי שנים בהתאמה. בראש השנה של שנת 0 כל שלושת הכוכבים נמצאו על קו אחד עם השמש. באיזה שנה יפגשו שוב על קו אחד עם השמש?
  1. בשנת התשס"ה
  2. בין שנת 314 לשנת 5000
  3. לעולם לא
  4. בין שנת 0 לשנת 314
12) מה מהבאים יוצא דופן?
  1. מספר הדרכים לענות על השאלון עד כה (כולל השאלה הזו)
  2. מספר המילים בבסיס 4 בעלות 12 ספרות
  3. מספר המשבצות ב- 218 לוחות שחמט.
  4. מספר הדרכים לחלק 12 כדורים זהים לארבע קבוצות (ייתכנו קבוצות ריקות)

מערכות הפעלה ו- Low Level

13) עץ האפמן הוא
  1. שיטת דחיסה ידועה של תמונות.
  2. מבנה נתונים שימושי לבניית קודים.
  3. ציור של אמן מפורסם.
  4. מבנה נתונים המכיל מידע מוצפן.
14) למה יש קבצים שלא יכולים לזוז ב"איחוי דיסק"?
  1. מערכת ההפעלה מניחה שקבצים מסויימים לא זזים על הדיסק במהלך ריצתה
  2. מציאת סדר ההזזות הנכון הוא בעיה קשה חישובית, ותוכנת האיחוי מנסה לא לבזבז זמן
  3. יש יותר מדי קבצים והעתקתם תקח זמן רב מדי
  4. תוכנת האיחוי אמורה להיתקל תוך כדי פעולתה באזורים פגומים (bad sectors) ולחלץ מהם את המידע
15) מי מהבאים חיוני להפעלת מערכת dos?
  1. COMMAND.COM
  2. AUTOEXEC.BAT
  3. CONFIG.SYS
  4. NTLDR.EXE
16) הפעולה "rooting” במכשיר Android היא :
  1. פעולה המסלקת root-kits מהמערכת.
  2. פעולה שבסופה מתאפשר לבעל המכשיר לשנות את מערכת ההפעלה עליו.
  3. פעולה שמאפשרת למשתמש להריץ תוכנות שלא מתוך Google Play Store.
  4. פעולה שדומה ל-factory reset, מלבד זה שהיא שומרת הגדרות משתמש.
17) איזה מהבאות משתמשת ב rpm כמערכת ניהול חבילות?
  1. RHCL
  2. Slackware
  3. Debian
  4. Gentoo
18) איזה דברים נמצאים לרוב במיקום /mnt במערכות לינוקס?
  1. קבצי מתאר (File Descriptor)
  2. יומני מערכת (System Log)
  3. עיגון התקני איחסון
  4. עיגון ramblock
19) במחשב linux מצוי הקובץ contestants.txt המכיל רשימה של כל מתמודדי קודגורו השנה, כך שבכל שורה מופיע שם מתמודד והניקוד שלו. (להבהרה ראה "פורמט" מטה) צוות התחרות מעוניין לחלץ מן הרשימה את עשרת הזוכים בעלי הניקוד הגבוהה ביותר, לתוך קובץ winners.txt אילו מן הפקודות הבאות יבצעו זאת? (ה-shell הינו bash. הניחו כי התיקייה הנוכחית היא זו המכילה את הקובץ.)
  1. echo contestants.txt | sort -r -n | head -n-10 > winners.txt
  2. cat contestants.txt | sort -rnk2 | head -n+10 > winners.txt
  3. grep 2,10 < contestants.txt > winners.txt
  4. cut -d” “ -f2 contestants.txt | tail -(-10) | sort -srn > winners.txt

הפורמט הינו:
Name1 score
Name2 score
20) המושג wear-leveling בהקשר של רכיבי זכרון flash:
  1. מונע הפרעות חשמליות המזיקות לרכיבים.
  2. סולם המאפיין מהירות גישה לרכיבים
  3. מנגנון שמאפשר גילוי של תקלות ברכיבים
  4. מנגנון שמשפר את אורך החיים של הרכיבים
21) Refernce Counter הוא מנגנון:
  1. המונה את כמות המצביעים לאזור זיכרון שהוקצה.
  2. מונה המכיל את מספר הקריאות שבוצעו לפונקציה.
  3. המכיל את רשימת המצביעים לאזור זיכרון שהוקצה.
  4. הדואג לפנות זכרון לאחר שפרק הזמן המוגדר לו עבר.
22) מה משמעות ה-Rank של תהליך ב-MPI?
  1. מספר התהליכים (Process) הכולל שרצים כרגע
  2. מספר התהליכים (Process) הכולל שהיה בהתחלה
  3. מזהה תהליך (Process) גלובלי בריצת ה-MPI
  4. עדיפות (Priority) התהליך (Process) בהשוואה לתהליכים הרצים ברקע
23) מהו קיוביט?
  1. משחק מחשב מפורסם משנות ה-80
  2. אמה, 1/30 מגובה תיבת נח
  3. ביט הסתברותי – לפעמים 0 ולפעמים 1, ערכו משתנה בהתאם לחוקי תורת הקוונטים
  4. תשובות 2 ו-3 נכונות.
24) בעת מתן מתח למעבד עדכני ממשפחת x86 (למשל מחשב ביתי), מאיזו כתובת המעבד בורר את הפקודה הראשונה להרצה?
  1. 0xfffffff0
  2. 0x00
  3. 0x7c00
  4. 0xffffffff
*25) פתחתי את \\.\physicaldrive0 וקראתי את 512 הבתים הראשונים, בהסתברות גבוהה, מה אני אמור למצוא שם?
  1. 0x19a בתים של קוד, 0x64 בתים ממבנה מסויים, ולבסוף קבוע באורך מילה.
  2. 0x19a בתים של קוד, 0x64 בתים ממבנה מסויים, ולבסוף CRC של המידע.
  3. 0x1be בתים של קוד, 0x40 בתים ממבנה מסויים, ולבסוף קבוע באורך מילה.
  4. 0x1be בתים של קוד, 0x40 בתים ממבנה מסויים, ולבסוף CRC של המידע.
26) באג שעלול להתרחש כאשר תוכנה מבצעת עבודה בעזרת MMX:
  1. משחקי מחשב איטיים, ביחוד כאשר המעבד של חברת אינטל וכרטיס המסך של חברה אחרת.
  2. מסך כחול כאשר מערכת ההפעלה המותקנת עובדת במצב 32bit והפעולות שהיא מבצעת הם 64bit.
  3. צריכת החשמל עלולה להגיעה לעד 300% ממצב עבודה רגיל.
  4. דריסת נתונים הנשמרים באוגרים המשותפים עם יחידת עיבוד הנקודה הצפה.

שפות תכנות

*27) נביט בפעולה הבאה, באיזו אפשרות מופיעים אך ורק מספרים שאם יינתנו כקלט לפעולה היא תדפיס "Yes!"?
  1. 49, 100, 25
  2. 50, 100, 150
  3. 4 , 16, 32
  4. 10, 100, 1000

קטע קוד:
void codeguru_numbers(int n
{
int accumulator = 0;
for(int i=2; i<n; i++)
{
accumulator += (n%i==0) ;
}
(accumulator%2) ? printf("Yes!") : printf("No!");
}
28) בהמשך לשאלה הקודמת, נביט בפעולה נוספת,אילו מבין המספרים הבאים, אם יינתן כקלט לשתי הפעולות (זאת לעיל וזאת מן השאלה הקודמת), יגרום לשתיהן להדפיס "Yes!" ?
  1. 10
  2. 15
  3. 36
  4. 25

קטע קוד:
void codeguru_numbers2(int n)
{
for(int i=1; n>0; i++)
n -= i;

(n==0) ? printf("Yes!") : printf("No!") ;
}

29) אני מפתח תוכנה בסביבת חלונות על מחשב PC רגיל – האם אני יכול להדר (compile) תוכנה עבור מעבד ARM?
  1. כן – אבל רק אם יש כרטיס PCI/USB מיוחד במחשב עם מעבד ARM.
  2. בפועל לא – יש שוני מאוד גדול בין המעבדים שמונע הידור יעיל ל-ARM על PC.
  3. כן – תהליך ידוע בשם הידור-אופקי.
  4. לא – הדבר אפשרי תיאורטית אבל נאסר על-ידי תנאי הרישוי של חברת Acorn.
30) איך כותבים הערה בשפת C (הערה: C99 ומעלה)?
  1. /* comment */
  2. comment //
  3. cc comment
  4. התשובות א' וב' נכונות
31) מה זה extreme programming?
  1. תחרות מחשבים
  2. שיטת פיתוח תוכנה
  3. ספורט אתגרי
  4. כל התשובות נכונות
32) נניח שערכו של המשתנה i הוא 5, מה יודפס ומה יהיה ערכו של i לאחר ביצוע הפקודה הבאה בשפת C:
printf("%d", i++);
  1. יודפס 5, ערכו של i לאחר הפקודה יהיה 5
  2. יודפס 5, ערכו של i לאחר הפקודה יהיה 6
  3. יודפס 6, ערכו של i לאחר הפקודה יהיה 5
  4. יודפס 6, ערכו של i לאחר הפקודה יהיה 7
*33) מה זה:
eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c–){d[c.toString(a)]=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c–){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('g d(4){6(f(4)||!h(4)||4%1||4<2)5 8;6(4%2==0)5(4==2);7 9=c.b(4);a(7 i=3;i<=9;i+=2){6(4%i==0)5 8}5 e}',19,19,'||||n|return|if|var|false|m|for|sqrt|Math|WhatAmIDoing|true|isNaN|function|isFinite|'.split('|'),0,{}))
  1. פעולה המוצאת את סכום השורשים של עשרת מספרי פיבונאצ'י הראשונים
  2. פעולה למיון מערך בסדר עולה
  3. אלגוריתם הצפנה כלשהו
  4. פעולה הבודקת אם מספר הוא ראשוני
34) בשפת C, למה הכוונה ב preprocessor side-effects?
  1. מדובר במספר באגים מתועדים במנוע אשר גורמים לתקלות לא רצויות, אלו יתקנו בגרסאות עתידיות.
  2. מדובר ביכולות נוספות שהוספו למנוע ה preprocessor במהך השנים ואינם מוגדרות על ידי ansi c.
  3. מדובר בתופעות אשר אינם בהכרח רצויות עקב שימוש בפעולות preprocessor אך נגרמות כפועל-יוצא.
  4. מדובר במספר פקודות הנשתלות על ידי ה preprocessor במהלך תהליך ההידור באופן עצמאי ועלולות לשבש את תהליך ריצת הקוד.
35) צרפתי לפרוייקט שלי קובץ Library המתאר מספר פונקציות שמיוצאות על ידי DLL, במידה לטעון קובץ זה בצורה דינאמית, אשתמש בפוקציה:
  1. LoadLibrary או LoadLibraryEx
  2. LoadResource או LoadResourceEx
  3. LoadModule
  4. CreateProccess
36) מה יהיה הפלט של קוד C הבא:
  1. 3
  2. תהיה שגיאת קומפילציה
  3. ייתכן 3 או 4, תלוי קומפיילר
  4. תהיה שגיאת זמן ריצה

קטע קוד:
int code=5,*guru=&code,**no_15=&guru;
if(no_15== (&&code) )
printf("%d", ((*guru==5) ? 3 : 4) );
37) נביט בפעולה הבאה הכתובה ב-C,מה מהבאים ניתן לומר עליה:
  1. על כל מחשב ביתי ממוצע, עבור קלט guru=200, היא תסתיים תוך פחות משניה.
  2. עבור קלט N היא מחזירה 2N.
  3. עבור קלט N היא מחזירה 2*N.
  4. על כל מחשב ביתי ממוצע, עבור קלט guru=100, הפעולה לא תסתיים גם עד תחרות קודגורו הבאה.

קטע קוד:
int code(int guru)
{
if(guru==1)
return 1;
return 1 + code(code(guru-1));
}
38) נביט בפעולה הבאה, המאוד דומה לפעולה מהשאלה הקודמת, מה מהבאים נכון לומר:
  1. תשובות ב ו-ד נכונות
  2. בהינתן אותו קלט לשתי הפעולות (מספר טבעי כלשהוא), הן תצרכנה אותה כמות זכרון (עד כדי בתים בודדים)
  3. בהינתן אותו קלט לשתי הפעולות (מספר טבעי כלשהוא), לפעולה הראשונה ייקח בערך פי שתיים זמן להסתיים.
  4. הפעולה השניה מיותרת לגמרי (כלומר אינה מבצעת דבר המצריך חישוב) בעוד שהראשונה לא.

קטע קוד:
int code2(int guru2)
{
if(guru2==1)
return 1;
return code2(code2(guru2-1));
}
39) מה ידפיס קוד ה-php הבא?
$number = “01000”; echo $number+001000+01000+1000;
  1. 3024
  2. 2842
  3. 3512
  4. 3049

תקשורת ואבטחת מידע

40) DD_WRT היא
  1. קשוחה אלטרנטיבית למחשבי PC
  2. קושחה אלטרנטיבית לנתבים
  3. קשוחה אלטרנטיבית למחשבי Tablet
  4. קושחה אלטרנטיבית למדפסות.
41) אתם רוצים לאבטח רשת אלחוטית. איזו תצורה מהבאות מומלצת בחום:
  1. עם WEP, עם WPS
  2. עם WEP, בלי WPS
  3. עם WPA, עם WPS
  4. עם WPA, בלי WPS
42) אני מצליח להתחבר לשרת FTP ולהעביר מידע בתצורה סבילה (passive) אבל לא פעילה (active). ידוע שללקוח יש קיר אש פשוט (איננו מבצע packet inspection). איזה סוג תעבורה בטוח נחסם על-ידי קיר האש (firewall)?
  1. יוצאת לשרת לפורט 21
  2. נכנסת ללקוח לפורט 20
  3. נכנסת ללקוח לכל הפורטים
  4. יוצאת מהלקוח מפורט 20
43) ממחשב ביתי בישראל, שלחתי הודעת ICMP לשרת www.google.com ובה שדה TTL (ראשי תיבות של Time To Live) עם הערך 12. מה צפוי?
  1. שדה זה אומר שההודעה תעבור בין 12 נתבים לכל היותר.
  2. שדה זה אומר שההודעה תעבור בין 13 נתבים לכל היותר.
  3. שדה זה אומר שההודעה תעבור בין 11 נתבים לכל היותר.
  4. שדה זה אומר שעל ההודעה לצאת מהמחשב השולח תוך 12 מיקרו-שניות, ואם לא – עליו לזרוק אותה כדי לפנות מקום להודעות אחרות.
44) חבר סיפר לי היום כי פרוטוקול http הינו "חסר מצב" ("Stateless"), למה הוא התכוון?
  1. הכוונה לכך היא שעל הפרוטוקול עצמו חייבים להרכיב מנוע נוסף.
  2. הכוונה היא אבטחתית – המידע אודות הבקשה מושמד מחשש לגניבה.
  3. הכוונה היא שברמת ה-HTTP אין קישור בין פניות עוקבות של אותו לקוח לאותו שרת.
  4. הכוונה היא ששרת HTTP יודע להגדיר את עצמו לבד.
45) המושג "Twist Rate“ בכבלי תקשורת מציין:
  1. מדד הצביע על סף מקסימלי של הפרעות אלקטרו-מגנטיות שהכבל יכול לספוג.
  2. מדד המצביע בין היתר על עמידות הכבל בפני הפרעות אות.
  3. מדד המציין את אלסטיות הכבל כפונקציה של העתק (Distance).
  4. מדד המציין כמות שינוי לו"ז פתאומיים של חבילות תקשורת כיחידת זמן.
46) בחודשי החורף, כמידי בוקר, נכנסתי לחשבון הבנק שלי באמצעות דפדפן – קיבלתי הודעה המבשרת לי כי פג תוקף האישור הדיגיטלי עבור אתר זה , מה הסבירות הגבוהה ביותר לבעייה?
  1. מישהו באתר הבנק התרשל ושכח לחדש האישור.
  2. ניסיון פריצה לצורך גניבת הפרטים שלי.
  3. קיימת בעייה (באג) בדפדפן – החלפתו או עדכונו יתקנו זאת.
  4. הגדרות השעה המקומית במחשבי השתבשו.
47) פסאדו קוד הבא, מה התיאור נכון ביותר שלה:
TCPPacket.Flags(SET_ALL);
  1. חבילה אסורה (Banned Packet) – חבילה זו מוגדרת כלא חוקית במסמכי התקן.
  2. חבילת DoS (מניעת שירות) – שליחת חבילה כזו לשרת עלולה תגרום לנפילתו.
  3. חבילת חג מולד (xmas packet) – משמשת לצורכי בדיקות.
  4. לא קיימת חבילה כזו.
48) במחשבים, המושג PXE מתאר:
  1. דרך עליה (boot) של מערכת הפעלה מהרשת.
  2. תקן המחליף את Ethernet במחשבי IPv6.
  3. הגדרה המאפשרת אבחון תקלות שונות ברשת מחשבים מקומית.
  4. התקפת סייבר המחדירה סוס טרויאני באמצעות כרטיס הרשת.

שאלות פתוחות

*49) נתון הקוד הבא, בסוף הרצת הקוד המספר ההפוך מודפס, השלימו את גוף הקוד:

קטע קוד:
int num = 942508; 
int result = 0;
..
..
..
System.out.println(result);      //805249 is printed
**50) הסתכלו בגרף הבאתם נמצאים בנקודה a וברצונכם להגיע לנקודה d שם מחכים לכם חיי הנצח. בכל צעד שלכם אתם נעים באקראי מהנקודה בה אתם נמצאים לאחת מהנקודות הסמוכות לה המחוברות אליה בקו (עד שתגיעו לנקודה d). שימו לב שיכול להיות שתחזרו לאותה נקודה כמה פעמים. כמה צעדים בממוצע תעשו עד שתגיעו לנקודה d לראשונה?

גרף:

Captionless Image
**51) חזור על השאלה הקודמת, רק שהפעם אתם מתחילים באופן אקראי מאחת מחמשת הנקודות, לאו דווקא מנקודה a. מהו מספר הצעדים הממוצע הפעם עד שתגיעו לנקודה d? (להבהרה, יש סיכוי של חמישית שתתחילו מנקודה d ואז מספר הצעדים עד הנקודה d לאותו מקרה יהיה 0).

שאלון קודגורו 15 – שלב א'

רשומה רגילה

אלגוריתמיקה ומחשבה

Captionless Image

מערכות הפעלה ו- Low Level

REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\windows\CurrentVersion\policies\Explorer]
"NoClose"="1"

שפות תכנות

var codeguru = {
    crufho: 9, vctho: this,   
    keusduru: function() {
        return this;
    },
    some_function: (function() {
        return this;
    }())
};
 
var crufho = 999; var reference = codeguru.keusduru;

this.crufho += 1;
codeguru.vctho.crufho += 1;
codeguru.keusduru.crufho -= 1;
reference.crufho -= 1;
codeguru.some_function.crufho += 1;

if(!(impossible == false))
{
if(!impossible)
{
//Logic doesn't apply in CodeGuru! – The program somehow reached here
}
}

תקשורת ואבטחת מידע

שאלות פתוחות