Skip to content

Commit efce28c

Browse files
committed
Week 8 fixes + Dafi's proofreading
1 parent 1dd18d2 commit efce28c

File tree

2 files changed

+45
-34
lines changed

2 files changed

+45
-34
lines changed

week8/4_Exceptions_Part_2.ipynb

+24-13
Original file line numberDiff line numberDiff line change
@@ -576,7 +576,7 @@
576576
"source": [
577577
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
578578
" התרעה על חריגה, כפי שלמדנו, היא דרך לדווח למתכנת שמשהו בעייתי התרחש בזמן ריצת התוכנית.<br>\n",
579-
" נוכל ליצור התרעות כאלו בעצמנו כדי להודיע למתכנתים שמשתמשים בקוד שכתבנו, על בעיות אפשריות.\n",
579+
" נוכל ליצור התרעות כאלו בעצמנו, כדי להודיע על בעיות אפשריות למתכנתים שמשתמשים בקוד שלנו.\n",
580580
"</p>"
581581
]
582582
},
@@ -1251,29 +1251,40 @@
12511251
},
12521252
{
12531253
"cell_type": "code",
1254-
"execution_count": null,
1255-
"metadata": {},
1256-
"outputs": [],
1254+
"execution_count": 343,
1255+
"metadata": {},
1256+
"outputs": [
1257+
{
1258+
"data": {
1259+
"text/plain": [
1260+
"True"
1261+
]
1262+
},
1263+
"execution_count": 343,
1264+
"metadata": {},
1265+
"output_type": "execute_result"
1266+
}
1267+
],
12571268
"source": [
12581269
"import os\n",
12591270
"import pathlib\n",
12601271
"\n",
12611272
"\n",
1262-
"def is_path_writeble(filepath):\n",
1263-
" \"\"\"Return if the path is writeable.\"\"\"\n",
1273+
"def is_path_writable(filepath):\n",
1274+
" \"\"\"Return if the path is writable.\"\"\"\n",
12641275
" path = pathlib.Path(filepath)\n",
12651276
" directory = path.parent\n",
12661277
"\n",
1267-
" is_dir_writeable = directory.is_dir() and os.access(directory, os.W_OK)\n",
1278+
" is_dir_writable = directory.is_dir() and os.access(directory, os.W_OK)\n",
12681279
" is_exists = path.exists()\n",
1269-
" is_file_writeable = path.is_file() and os.access(path, os.W_OK)\n",
1280+
" is_file_writable = path.is_file() and os.access(path, os.W_OK)\n",
12701281
" \n",
1271-
" return is_dir_writeable and ((not is_exists) or is_file_writeable)\n",
1282+
" return is_dir_writable and ((not is_exists) or is_file_writable)\n",
12721283
"\n",
12731284
"\n",
12741285
"def write_textfile(filepath, text):\n",
12751286
" \"\"\"Safely write `text` to `filepath`.\"\"\"\n",
1276-
" if is_path_writeble(filepath):\n",
1287+
" if is_path_writable(filepath):\n",
12771288
" with open(filepath, 'w', encoding='utf-8') as f:\n",
12781289
" f.write(text)\n",
12791290
" return True\n",
@@ -1383,7 +1394,7 @@
13831394
"source": [
13841395
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
13851396
" אם תגיעו למצב שבו אתם משתיקים חריגות, עצרו ושאלו את עצמכם אם זה הפתרון הטוב ביותר.<br>\n",
1386-
" לרוב, עדיף יהיה לטפל בהתרעה על החריגה ולדאוג להביא את התוכנה למצב תקין,<br>\n",
1397+
" לרוב, עדיף יהיה לטפל בהתרעה על החריגה ולהביא את התוכנה למצב תקין,<br>\n",
13871398
" או לפחות לשמור את פרטי ההתרעה לקובץ המתעד את ההתרעות על החריגות שהתרחשו בזמן ריצת התוכנה. \n",
13881399
"</p>"
13891400
]
@@ -1604,7 +1615,7 @@
16041615
"<ol style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
16051616
" <li><var>load_file</var> – טוענת קובץ טבלאי שהשורה הראשונה שבו היא כותרת, והעמודות שבו מופרדת זו מזו בתו |.<br>\n",
16061617
" הפונקציה תחזיר רשימה של מילונים. כל מילון ברשימה ייצג שורה בקובץ. המפתחות של כל מילון יהיו שמות השדות מהכותרת.</li>\n",
1607-
" <li><var>get_user</var> – שמקבלת את שם המשתמש, ומחזירה את מספר המשתמש שלו.</li>\n",
1618+
" <li><var>get_user_id</var> – שמקבלת את שם המשתמש, ומחזירה את מספר המשתמש שלו.</li>\n",
16081619
" <li><var>get_password</var> – שמקבלת שני מספרים סידוריים של משתמשים ומחזירה את סיסמת ההתקשרות בינם.</li>\n",
16091620
" <li><var>decrypt_file</var> – שמקבלת מפתח ונתיב לקובץ, ומפענחת אותו באמצעות הפונקציה <var>decrypt</var>.</li>\n",
16101621
"</ol>"
@@ -1639,7 +1650,7 @@
16391650
" S = list(range(256))\n",
16401651
" j = 0\n",
16411652
"\n",
1642-
" for i in list(range(256)):\n",
1653+
" for i in range(256):\n",
16431654
" j = (j + S[i] + ord(key[i % len(key)])) % 256\n",
16441655
" S[i], S[j] = S[j], S[i]\n",
16451656
"\n",

week8/5_Summary.ipynb

+21-21
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
"source": [
2828
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
2929
" בהנדסת חשמל, \"שער לוגי\" הוא רכיב בסיסי ולו כניסה אחת או יותר, ויציאה אחת בלבד.<br>\n",
30-
" הכניסות בשער הלוגי משמשות בתור הקלט שלו, והיציאה בתור הפלט שלו.<br>\n",
31-
" כל כניסה יכול לקבל את הערך \"אמת\" או \"שקר\".<br>\n",
30+
" הכניסות בשער הלוגי משמשות בתור הקלט שלו, והיציאה בתור הפלט.<br>\n",
31+
" כל כניסה יכולה לקבל את הערך \"אמת\" או \"שקר\".<br>\n",
3232
" השער הלוגי יבצע פעולה לוגית בהתאם לכניסות שלו, ויחזיר ערך חדש – שגם הוא אמת או שקר.\n",
3333
"</p>"
3434
]
@@ -39,9 +39,9 @@
3939
"source": [
4040
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
4141
" שער לוגי שוודאי יצא לכם לשמוע עליו הוא <dfn>AND</dfn>.<br>\n",
42-
" לשער הלוגי AND שתי כניסות. פלט השער יהיה <var>True</var> רק אם הקלט בשתי הכניסות הוא <var>True</var>.<br> \n",
42+
" לשער הלוגי AND שתי כניסות. פלט השער יהיה <var>True</var> רק אם הקלט בשתי הכניסות הוא <var>True</var>, אחרת – יהיה הפלט <var>False</var>.<br> \n",
4343
" שער לוגי אחר שוודאי יצא לכם לשמוע עליו הוא <dfn>NOT</dfn>.<br>\n",
44-
" לשער הלוגי NOT כניסה אחת. פלט השער יהיה <var>True</var> אם הקלט בכניסה הוא <var>False</var>, או <var>False</var> אם הקלט בכניסה הוא <var>True</var>. \n",
44+
" לשער הלוגי NOT כניסה אחת. פלט השער יהיה <var>True</var> אם הקלט הוא <var>False</var>, או <var>False</var> אם הקלט הוא <var>True</var>. \n",
4545
"</p>"
4646
]
4747
},
@@ -59,8 +59,8 @@
5959
"metadata": {},
6060
"source": [
6161
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
62-
" חיבור של מספר שערים לוגיים אחד לשני יצור רכיב לוגי.<br>\n",
63-
" בדוגמה הבאה, לדוגמה, הקלטים (מלמעלה למטה) <var>True</var>, <var>False</var>, <var>False</var>, <var>True</var> יניבו <var>True</var>.\n",
62+
" חיבור של כמה שערים לוגיים אחד לשני ייצור רכיב לוגי.<br>\n",
63+
" בדוגמה הבאה, הקלטים (מלמעלה למטה) <var>True</var>, <var>False</var>, <var>False</var>, <var>True</var> יניבו <var>True</var>.\n",
6464
"</p>"
6565
]
6666
},
@@ -119,7 +119,7 @@
119119
"metadata": {},
120120
"source": [
121121
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
122-
" בונוס: ודאו גם שהקוד הבא עובד ומחזיר <var>False</var>:\n",
122+
" בונוס: ודאו גם שהקוד הבא עובד ומדפיס <var>True</var>:\n",
123123
"</p>"
124124
]
125125
},
@@ -171,16 +171,16 @@
171171
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
172172
" כתבו מחלקה המייצגת קובייה.<br>\n",
173173
" לכל קובייה יש צבע, מספר פאות וערכים שמופיעים על הפאות.<br>\n",
174-
" הטלה של קובייה תבחר באופן אקראי ערך מאחת מפאות הקובייה ותחזיר אותה.\n",
174+
" הטלה של קובייה תבחר באופן אקראי ערך מאחת מפאות הקובייה ותחזיר אותו.\n",
175175
"</p>\n",
176176
"\n",
177177
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
178178
" על כל פאה של \"קובייה מספרית\" מופיע מספר שערכו בין 1 למספר הפאות בקובייה. כל מספר יופיע פעם אחת בלבד על הקובייה.<br>\n",
179-
" ב\"קובייה לא מאוזנת\", ישנו גם ערך שנקרא \"סיכוי הטלה\", שמפרט עבור כל פאה מה הסיכוי שתצא בהטלה.\n",
179+
" ב\"קובייה לא מאוזנת\" ישנו גם ערך שנקרא \"סיכוי הטלה\", שמפרט עבור כל פאה מה הסיכוי שתצא בהטלה.\n",
180180
"</p>\n",
181181
"\n",
182182
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
183-
" צבע הקובייה חייב להיות מורכב מאותיות בלבד, משקלה של הקובייה חייב להיות חיובי וכמות הפאות חייבת להיות תואמת למספר הערכים המופיעים על הפאות.<br>\n",
183+
" שם הצבע של הקובייה חייב להיות מורכב מאותיות בלבד, סיכויי ההטלה חייבים להיות חיוביים ומספר הפאות חייב להיות תואם למספר הערכים המופיעים על הפאות.<br>\n",
184184
"</p>\n"
185185
]
186186
},
@@ -189,10 +189,10 @@
189189
"metadata": {},
190190
"source": [
191191
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
192-
" במשחק \"Yamtzee\" יש שק גדול שמכיל המון \"קוביות אורך\", ושק גדול נוסף של קוביות לא מאוזנות בצבעים שונים שנקראות \"קוביית אות\".<br>\n",
192+
" במשחק \"Yamtzee\" יש שק גדול שמכיל המון \"קוביות אורך\", ושק גדול נוסף של קוביות לא מאוזנות בצבעים שונים שנקראות \"קוביות אות\".<br>\n",
193193
" 10% מהקוביות בכל שק הן אדומות, 25% הן ירוקות ו־65% הן כחולות.<br>\n",
194194
" קוביית אורך היא קובייה מספרית עם 10 פאות. אם הקובייה מורה 1, זורקים אותה שוב עד שיוצא מספר אחר.<br>\n",
195-
" קוביית אות היא קובייה לא מאוזנת עם 26 פאות, כאשר בכל פאה אות מהא\"ב הלטיני. סיכוי ההטלה עבור כל אחד מהערכים הוא לפי <a href=\"https://en.wikipedia.org/wiki/Letter_frequency\">התדירות של האות</a>.<br>\n",
195+
" קוביית אות היא קובייה לא מאוזנת עם 26 פאות, כאשר בכל פאה אות מהא\"ב האנגלי. סיכוי ההטלה עבור כל אחד מהערכים הוא לפי <a href=\"https://en.wikipedia.org/wiki/Letter_frequency\">התדירות של האות</a>.<br>\n",
196196
"</p>"
197197
]
198198
},
@@ -201,11 +201,11 @@
201201
"metadata": {},
202202
"source": [
203203
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
204-
" בתחילת המשחק, המשתמש בוחר כמה משתתפים ייקחו חלק במשחק, ומה הניקוד שאליו צריך להגיע כדי שהמשחק יסתיים.<br>\n",
204+
" בתחילת המשחק, המשתמש בוחר את מספר המשתתפים במשחק, ומה הניקוד שאליו צריך להגיע כדי שהמשחק יסתיים.<br>\n",
205205
"</p>\n",
206206
"\n",
207207
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
208-
" כל שחקן בתורו מטיל את קוביית האורך, ומטיל כמות קוביות אות הזהה למספר שיצא בקוביית האורך.<br>\n",
208+
" כל שחקן בתורו מטיל את קוביית האורך, ומטיל מספר קוביות אות הזהה למספר שהתקבל בקוביית האורך.<br>\n",
209209
" לדוגמה, אם קוביית האורך שהטלתי מורה 3, עליי להטיל 3 קוביות אות.\n",
210210
"</p>"
211211
]
@@ -215,9 +215,9 @@
215215
"metadata": {},
216216
"source": [
217217
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
218-
" המשתתף צריך להשתמש בקוביות האות שיצאו לו כדי ליצור מילה תקנית בשפה האנגלית שאורכה 2 אותיות לפחות.<br>\n",
218+
" המשתתף צריך להשתמש בקוביות האות שיצאו לו כדי ליצור מילה תקנית בשפה האנגלית, שאורכה 2 אותיות לפחות.<br>\n",
219219
" הוא יכול לסדר את הקוביות מחדש ולבחור שלא להשתמש בחלק מהן, אבל הוא לא יכול להשתמש באותה קוביית אות פעמיים.<br>\n",
220-
" למרות זאת, יכול לקרות מצב שיותר מקוביית אות אחת תציג את אותה אות.\n",
220+
" למרות זאת, יכול לקרות מצב שיותר מקוביית אות אחת תציג את אותה האות.\n",
221221
"</p>"
222222
]
223223
},
@@ -226,9 +226,9 @@
226226
"metadata": {},
227227
"source": [
228228
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
229-
" אם המשתמש הצליח, עבור כל אות שבה השתמש הוא זוכה ב־$\\lfloor{\\frac{12}{\\lceil{f}\\rceil^{\\frac{3}{4}}}}\\rfloor$ נקודות, כאשר f זו תדירות האות בא\"ב האנגלי מעוגלת כלפי מעלה.<br>\n",
230-
" במילים: 12 חלקי הביטוי הבא: הסיכוי שהאות תצא מעוגל כלפי מעלה, בחזקת 1.5 ואז להוציא מזה שורש. כל זה – מעוגל כלפי מטה.<br>\n",
231-
" לדוגמה, עבור המילה \"zone\" השחקן ינוקד 17 לפי החישוב הבא:\n",
229+
" אם המשתמש הצליח להרכיב מילה, עבור כל אות שבה השתמש הוא זוכה ב־$\\lfloor{\\frac{12}{\\lceil{f}\\rceil^{\\frac{3}{4}}}}\\rfloor$ נקודות, כאשר f זו תדירות האות בא\"ב האנגלי, מעוגלת כלפי מעלה.<br>\n",
230+
" במילים: 12 חלקי הביטוי הבא הסיכוי שהאות תצא מעוגל כלפי מעלה, בחזקת 1.5 ואז להוציא מזה שורש. כל זה – מעוגל כלפי מטה.<br>\n",
231+
" לדוגמה, עבור המילה \"zone\" יזכה השחקן ב־17 נקודות לפי החישוב הזה:\n",
232232
"</p>"
233233
]
234234
},
@@ -249,7 +249,7 @@
249249
"metadata": {},
250250
"source": [
251251
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
252-
" קוביית אורך אדומה נותנת למשתתף שהטיל אותה עוד קוביית אות במתנה.<br>\n",
252+
" קוביית אורך אדומה מעניקה למשתתף שהטיל אותה עוד קוביית אות במתנה.<br>\n",
253253
" קוביית אות אדומה מאפשרת למשתתף להשתמש באות שמופיעה על הקובייה כמה פעמים שירצה.<br>\n",
254254
" קוביות ירוקות נותנות למשתתף את האפשרות לבחור אם להטילן מחדש.<br>\n",
255255
"</p>"
@@ -261,7 +261,7 @@
261261
"source": [
262262
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
263263
" ממשו את Yamtzee.<br>\n",
264-
" השתמשו ב־<a href=\"https://raw.githubusercontent.com/dwyl/english-words/master/words.txt\">words.txt</a> כדי לוודא אם המילים שהכניס המשתמש תקינות.\n",
264+
" השתמשו ב־<a href=\"https://raw.githubusercontent.com/dwyl/english-words/master/words.txt\">words.txt</a> כדי לוודא שהמילים שהכניס המשתמש תקינות.\n",
265265
"</p>"
266266
]
267267
}

0 commit comments

Comments
 (0)