Skip to content

Commit d30cfe1

Browse files
committed
Clarify phrasing in for loops notebook
1 parent 3316e26 commit d30cfe1

File tree

1 file changed

+46
-100
lines changed

1 file changed

+46
-100
lines changed

week4/1_For_Loops.ipynb

Lines changed: 46 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"metadata": {},
2727
"source": [
2828
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
29-
" פעמים רבות אנחנו מנסים לפתור בעיה, שעל־מנת להגיע לפתרון שלה אנחנו נדרשים לעבור על כלל הערכים שידועים לנו במבנה מסויים:\n",
29+
" פעמים רבות אנחנו מנסים לפתור בעיה, שעל־מנת להגיע לפתרון שלה אנחנו נדרשים לעבור על כל הערכים שידועים לנו במבנה מסויים:\n",
3030
"</p>"
3131
]
3232
},
@@ -36,7 +36,7 @@
3636
"source": [
3737
"<ul style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
3838
" <li>בהנתן רשימת גבהים של האנשים בכתה – מה הגובה של התלמיד הגבוה ביותר בכתה?</li>\n",
39-
" <li>איזה קלף מבין הקלפים שיש לי ביד הוא הקלף המתאים ביותר לשחק עכשיו?</li>\n",
39+
" <li>איזה קלף מבין כל הקלפים שיש לי ביד הוא הקלף המתאים ביותר לשחק עכשיו?</li>\n",
4040
" <li>קבל פלייליסט, והחזר את כל השירים של הלהקה Led Zeppelin.</li>\n",
4141
" <li>קבל את רשימת המסעדות בצרפת והדירוגים שלהן, והחזר את 3 המסעדות בעלות הדירוג הגבוה ביותר.</li>\n",
4242
"</ul>"
@@ -48,7 +48,7 @@
4848
"source": [
4949
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
5050
" מה משותף לכל אחת מהבעיות שהוצגו מעלה?<br>\n",
51-
" דרך ראויה לפתור אותן היא לולאה שתעבור על האיברים שהוצגו בבעיה, ותבצע על כל איבר סדרת פעולות.<br>\n",
51+
" דרך ראויה לפתור אותן היא לולאה שתעבור על כל האיברים שהוצגו בבעיה, ותבצע על כל איבר סדרת פעולות.<br>\n",
5252
" נכתוב בפסאודו קוד דוגמה לפתרון הבעיה הראשונה – מציאת הגובה של התלמיד הגבוה ביותר בכתה:\n",
5353
"</p>"
5454
]
@@ -144,10 +144,10 @@
144144
"metadata": {},
145145
"source": [
146146
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
147-
" בקוד למעלה המשתנה <var>current_student_index</var> מחזיק את מיקום התא הנוכחי שאותו אנחנו משווים לתלמיד הגבוה ביותר.<br>\n",
148-
" הביטוי <code>student_heights[current_student_index]</code> משיג את הערך השמור באותו תא.<br>\n",
147+
" בקוד למעלה, המשתנה <var>current_student_index</var> מחזיק את מיקום התא שמכיל את גובה התלמיד הנוכחי, אותו אנחנו משווים לתלמיד הגבוה ביותר.<br>\n",
148+
" הביטוי <code>student_heights[current_student_index]</code> משיג את הגובה השמור באותו תא.<br>\n",
149149
" תכליתה של הלולאה בקוד הכתוב מעלה היא המעבר על מספרי התאים של הרשימה, כדי להיות מסוגלים לקבל את התוכן שלהם.<br>\n",
150-
" כלומר, השתמשנו בלולאות פעמים רבות עד־כה לצורך <mark>מעבר על כל האיברים של iterable כלשהו.</mark>\n",
150+
" בתמצות, השתמשנו בלולאות פעמים רבות עד־כה לצורך <mark>מעבר על כל האיברים של iterable כלשהו.</mark>\n",
151151
"</p>"
152152
]
153153
},
@@ -181,7 +181,7 @@
181181
"metadata": {},
182182
"source": [
183183
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
184-
"בפעמים שבהם אנחנו רוצים לבצע משהו <em>עבור</em> כל אחד מהאיברים במבנה כלשהו, נשתמש ב<dfn>לולאת <code>for</code></dfn>.<br>\n",
184+
"בפעמים שבהן אנחנו רוצים לבצע משהו <em>עבור</em> כל אחד מהאיברים במבנה כלשהו, נשתמש ב<dfn>לולאת <code>for</code></dfn>.<br>\n",
185185
"נראה, לדוגמה, איך נשתמש בלולאת <code>while</code> על־מנת להדפיס את שמות התלמידות בכתה:\n",
186186
"</p>"
187187
]
@@ -266,8 +266,8 @@
266266
"source": [
267267
"<ul style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
268268
" <li>ערך כלשהו, שחייב להיות iterable. אנחנו נסתכל על כל האיברים שלו לפי הסדר שלהם.</li>\n",
269-
" <li>שם משתנה שאנחנו ממציאים. פייתון יצור את המשתנה הזה עבור הלולאה. הלולאה תשים במשתנה הזה כל פעם איבר אחד, לפי הסדר, מתוך ה־iterable.</li>\n",
270-
" <li>הפעולות של מה שאנחנו רוצים לבצע עם כל אחד מהאיברים האלו.</li>\n",
269+
" <li>שם משתנה חדש שאנחנו ממציאים. פייתון יצור את המשתנה הזה עבור הלולאה. המשתנה הזה יצביע כל פעם על איבר אחד, לפי הסדר, מתוך ה־iterable.</li>\n",
270+
" <li>הפעולה או הפעולות של מה שאנחנו רוצים לבצע עם כל אחד מהאיברים האלו.</li>\n",
271271
"</ul>"
272272
]
273273
},
@@ -280,7 +280,7 @@
280280
"names_of_students_in_class = ['Galia', 'Hadas', 'Hen', 'Ilana', 'Ivria', 'Karin', 'Maya', 'Noa']\n",
281281
"\n",
282282
"# השם שאנחנו ממציאים\n",
283-
"# Iterable, ערך שניתן לפרק לכלל איבריו \n",
283+
"# V Iterable, ערך שניתן לפרק לכלל איבריו \n",
284284
"for student_name in names_of_students_in_class:\n",
285285
" print(student_name) # <---- הפעולות לביצוע"
286286
]
@@ -290,7 +290,7 @@
290290
"metadata": {},
291291
"source": [
292292
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
293-
"נעבור שלב אחר שלב אחר הלולאה שמדפיסה את שמות החניכות בכתה.\n",
293+
"נבחן את הלולאה שמדפיסה את שמות התלמידות בכתה, שלב אחר שלב, כדי להבין איך לולאת <code>for</code> פועלת.\n",
294294
"</p>"
295295
]
296296
},
@@ -304,8 +304,8 @@
304304
" </div>\n",
305305
" <div style=\"width: 90%\">\n",
306306
" <p style=\"text-align: right; direction: rtl;\">\n",
307-
" קטעי הקוד בחלק זה של המחברת לא ירוצו, מכיוון שחלק מהקוד מסומן בהערה.<br>\n",
308-
" המטרה של קטעי הקוד בחלק הזה של המחברת היא רק להדגיש איזה קוד רץ באותו רגע.\n",
307+
" כמה מקטעי הקוד הבאים לא ירוצו, מכיוון שחלק מהקוד מסומן בהערה.<br>\n",
308+
" המטרה של קטעי הקוד בחלק הזה של המחברת היא להדגיש איזה קוד רץ באותו רגע.\n",
309309
" </p>\n",
310310
" </div>\n",
311311
"</div>"
@@ -348,9 +348,9 @@
348348
" <td style=\"padding-top: 8px; padding-bottom: 8px; padding-left: 10px; padding-right: 10px; vertical-align: bottom; border: 2px solid;\">\"Noa\"</td>\n",
349349
" </tr>\n",
350350
" <tr style=\"background: #f5f5f5;\">\n",
351-
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-8</td>\n",
351+
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right;\">-8</td>\n",
352352
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-7</td>\n",
353-
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\"\">-6</td>\n",
353+
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-6</td>\n",
354354
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-5</td>\n",
355355
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-4</td>\n",
356356
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-3</td>\n",
@@ -367,7 +367,7 @@
367367
"source": [
368368
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
369369
"בחזרור הראשון, המשתנה החדש שיצרנו בשם <var>student_name</var> יצביע על הערך הראשון ברשימה, <em>Galia</em>.<br>\n",
370-
"נשים לב שהמשתנה <var>student_name</var> לא היה קיים לפני הלולאה, והלולאה היא המבנה הקסום שיוצר את המשתנה ומכניס אליו ערכים:\n",
370+
"נשים לב שהמשתנה <var>student_name</var> לא היה קיים לפני הלולאה, והלולאה היא המבנה הקסום שיוצר את המשתנה וגורם לו להצביע לערכים:\n",
371371
"</p>"
372372
]
373373
},
@@ -497,7 +497,7 @@
497497
" <td style=\"padding-top: 8px; padding-bottom: 8px; padding-left: 10px; padding-right: 10px; vertical-align: bottom; border: 2px solid;\">\"Noa\"</td>\n",
498498
" </tr>\n",
499499
" <tr style=\"background: #f5f5f5;\">\n",
500-
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-8</td>\n",
500+
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right;\">-8</td>\n",
501501
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">student_name <span style=\"font-size: 1.8rem;\">↑</span></td>\n",
502502
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-6</td>\n",
503503
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-5</td>\n",
@@ -546,7 +546,7 @@
546546
"metadata": {},
547547
"outputs": [],
548548
"source": [
549-
"for student_name in names_of_students_in_class: # אנחנו פה, אחרי שעברנו על שמות כללל התלמידות\n",
549+
"for student_name in names_of_students_in_class: # אנחנו פה, אחרי שעברנו על שמות כללל התלמידות פרט לנועה\n",
550550
"# print(student_name)"
551551
]
552552
},
@@ -578,7 +578,7 @@
578578
" <td style=\"padding-top: 8px; padding-bottom: 8px; padding-left: 10px; padding-right: 10px; vertical-align: bottom; border: 2px solid; background-color: yellow;\">\"Noa\"</td>\n",
579579
" </tr>\n",
580580
" <tr style=\"background: #f5f5f5;\">\n",
581-
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-8</td>\n",
581+
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right;\">-8</td>\n",
582582
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-7</td>\n",
583583
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-6</td>\n",
584584
" <td style=\"padding-left: 4px; padding-top: 2px; padding-bottom: 3px; font-size: 1.3rem; color: #777; text-align: right; border-left: 1px solid #555555;\">-5</td>\n",
@@ -598,7 +598,7 @@
598598
"metadata": {},
599599
"source": [
600600
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
601-
"נדפיס פעם אחרונה את המחרוזת אליה אנחנו מצביעים:\n",
601+
"נדפיס פעם אחרונה את המחרוזת עליה אנחנו מצביעים:\n",
602602
"</p>"
603603
]
604604
},
@@ -617,7 +617,7 @@
617617
"metadata": {},
618618
"source": [
619619
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
620-
"כשנחזור לראש הלולאה, נראה שעברנו על כלל האיברים.<br>\n",
620+
"כשנחזור לראש הלולאה, נראה שעברנו על כל האיברים.<br>\n",
621621
"הלולאה תפסק, והקוד שנמצא אחרי הלולאה ירוץ.\n",
622622
"</p>"
623623
]
@@ -802,7 +802,7 @@
802802
"cell_type": "markdown",
803803
"metadata": {},
804804
"source": [
805-
"#### <span style=\"text-align: right; direction: rtl; float: right;\">שינוי מספר איברים בזמן לולאה</span>"
805+
"#### <span style=\"text-align: right; direction: rtl; float: right;\">שינוי של מספר האיברים בזמן לולאה</span>"
806806
]
807807
},
808808
{
@@ -816,20 +816,9 @@
816816
},
817817
{
818818
"cell_type": "code",
819-
"execution_count": 49,
819+
"execution_count": null,
820820
"metadata": {},
821-
"outputs": [
822-
{
823-
"name": "stdout",
824-
"output_type": "stream",
825-
"text": [
826-
"The reader expects 5 iterations.\n",
827-
"a e\n",
828-
"b d\n",
829-
"c c\n"
830-
]
831-
}
832-
],
821+
"outputs": [],
833822
"source": [
834823
"numbers = ['a', 'b', 'c', 'd', 'e']\n",
835824
"print(f\"The reader expects {len(numbers)} iterations.\")\n",
@@ -853,28 +842,15 @@
853842
"metadata": {},
854843
"source": [
855844
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
856-
" פתרון אפשרי הוא ליצור עותק של הרשימה באמצעות הפעולה <code dir=\"ltr\" style=\"direction: ltr;\">list.copy()</code>:\n",
845+
" פתרון אפשרי הוא ליצור עותק של הרשימה באמצעות הפעולה <code dir=\"ltr\" style=\"direction: ltr;\">list.copy()</code> ולהשתמש בו במקום:\n",
857846
"</p>"
858847
]
859848
},
860849
{
861850
"cell_type": "code",
862-
"execution_count": 51,
851+
"execution_count": null,
863852
"metadata": {},
864-
"outputs": [
865-
{
866-
"name": "stdout",
867-
"output_type": "stream",
868-
"text": [
869-
"The reader expects 5 iterations.\n",
870-
"a e\n",
871-
"b d\n",
872-
"c c\n",
873-
"d b\n",
874-
"e a\n"
875-
]
876-
}
877-
],
853+
"outputs": [],
878854
"source": [
879855
"numbers = ['a', 'b', 'c', 'd', 'e']\n",
880856
"numbers_to_pop = numbers.copy()\n",
@@ -888,7 +864,7 @@
888864
"cell_type": "markdown",
889865
"metadata": {},
890866
"source": [
891-
"#### <span style=\"text-align: right; direction: rtl; float: right;\">עריכת ה־iterable</span>"
867+
"#### <span style=\"text-align: right; direction: rtl; float: right;\">עריכת הערכים שבתוך ה־iterable</span>"
892868
]
893869
},
894870
{
@@ -902,7 +878,7 @@
902878
},
903879
{
904880
"cell_type": "code",
905-
"execution_count": 39,
881+
"execution_count": 77,
906882
"metadata": {},
907883
"outputs": [
908884
{
@@ -911,7 +887,8 @@
911887
"text": [
912888
"This code will multiply every item in [1, 3, 5] by 2.\n",
913889
"The user expects:\n",
914-
"\t[2, 6, 10]\n",
890+
"[2, 6, 10]\n",
891+
"The final result:\n",
915892
"[1, 3, 5]\n"
916893
]
917894
}
@@ -920,11 +897,12 @@
920897
"numbers = [1, 3, 5]\n",
921898
"print(f'This code will multiply every item in {numbers} by 2.')\n",
922899
"print(f'The user expects:')\n",
923-
"print(f'\\t[{numbers[0] * 2}, {numbers[1] * 2}, {numbers[2] * 2}]')\n",
900+
"print(f'[{numbers[0] * 2}, {numbers[1] * 2}, {numbers[2] * 2}]')\n",
924901
"\n",
925902
"for num in numbers:\n",
926903
" num = num * 2\n",
927904
"\n",
905+
"print(\"The final result:\")\n",
928906
"print(numbers)"
929907
]
930908
},
@@ -983,7 +961,8 @@
983961
"metadata": {},
984962
"source": [
985963
"<p style=\"text-align: right; direction: rtl; float: right; clear: both;\">\n",
986-
" נסכם כך: <mark>המשתנה <var>num</var> בהתחלה הצביע למספר שנמצא בתוך הרשימה, ועכשיו הוא מצביע למספר אחר.</mark><br>\n",
964+
" נסכם כך: <mark>המשתנה <var>num</var> בהתחלה הצביע על מספר שנמצא בתוך הרשימה, ועכשיו הוא מצביע על מספר אחר.</mark><br>\n",
965+
" ההשמה, כרגיל, שינתה את המקום שעליו המשתנה מצביע, ולא את הערך שהמשתנה מצביע עליו.<br>\n",
987966
" בקוד שמתואר למעלה, לא שינינו את האיבר בתוך הרשימה.\n",
988967
"</p>"
989968
]
@@ -1004,17 +983,9 @@
1004983
},
1005984
{
1006985
"cell_type": "code",
1007-
"execution_count": 74,
986+
"execution_count": null,
1008987
"metadata": {},
1009-
"outputs": [
1010-
{
1011-
"name": "stdout",
1012-
"output_type": "stream",
1013-
"text": [
1014-
"6\n"
1015-
]
1016-
}
1017-
],
988+
"outputs": [],
1018989
"source": [
1019990
"def total(numbers):\n",
1020991
" total = 0\n",
@@ -1035,17 +1006,9 @@
10351006
},
10361007
{
10371008
"cell_type": "code",
1038-
"execution_count": 73,
1009+
"execution_count": null,
10391010
"metadata": {},
1040-
"outputs": [
1041-
{
1042-
"name": "stdout",
1043-
"output_type": "stream",
1044-
"text": [
1045-
"NATO\n"
1046-
]
1047-
}
1048-
],
1011+
"outputs": [],
10491012
"source": [
10501013
"def acronym(sentence):\n",
10511014
" acronym_word = ''\n",
@@ -1075,23 +1038,14 @@
10751038
},
10761039
{
10771040
"cell_type": "code",
1078-
"execution_count": 62,
1041+
"execution_count": null,
10791042
"metadata": {},
1080-
"outputs": [
1081-
{
1082-
"name": "stdout",
1083-
"output_type": "stream",
1084-
"text": [
1085-
"Enter numbers seperated by comma: 5, 3, 1, 3, -6, -2, 1\n",
1086-
"13\n"
1087-
]
1088-
}
1089-
],
1043+
"outputs": [],
10901044
"source": [
10911045
"def to_numbers(strings):\n",
10921046
" numbers = []\n",
10931047
" for semi_number in strings:\n",
1094-
" if semi_number.isnumeric():\n",
1048+
" if semi_number.isdecimal():\n",
10951049
" numbers.append(int(semi_number))\n",
10961050
" return numbers\n",
10971051
"\n",
@@ -1127,17 +1081,9 @@
11271081
},
11281082
{
11291083
"cell_type": "code",
1130-
"execution_count": 72,
1084+
"execution_count": null,
11311085
"metadata": {},
1132-
"outputs": [
1133-
{
1134-
"name": "stdout",
1135-
"output_type": "stream",
1136-
"text": [
1137-
"39\n"
1138-
]
1139-
}
1140-
],
1086+
"outputs": [],
11411087
"source": [
11421088
"def sum_only_7th_places(numbers):\n",
11431089
" total = 0\n",
@@ -1245,8 +1191,8 @@
12451191
" בגבעת ווטרשיפ קצב ההתרבות גבוה. כל שנה נוספים עוד ועוד ארנבים לארנבייה.<br>\n",
12461192
" חומש הארנב החליט לנהל מעקב דמוגרפי אחרי הגידול.<br>\n",
12471193
" הוא מעוניין שתבנו לו פונקציה שמקבלת כפרמטר רשימה של כמות הארנבים שנולדו בכל שנה.<br>\n",
1248-
" הפונקציה מחזירה רשימה שבה כל תא מייצג את הכמות הנצברת של הארנבים בארנבייה עד כה.<br>\n",
1249-
" לדוגמה, עבור הרשימה <code dir=\"ltr\" style=\"direction: ltr;\">[1, 2, 3, 4]</code>, הפונקציה תחזיר <code dir=\"ltr\" style=\"direction: ltr;\">[1, 3, 6, 10]</code>.\n",
1194+
" הפונקציה תחזיר רשימה שבה כל תא מייצג את הכמות הנצברת של הארנבים בארנבייה עד כה.<br>\n",
1195+
" לדוגמה: עבור הרשימה <code dir=\"ltr\" style=\"direction: ltr;\">[1, 2, 3, 4]</code>, הפונקציה תחזיר <code dir=\"ltr\" style=\"direction: ltr;\">[1, 3, 6, 10]</code>.\n",
12501196
"</p>"
12511197
]
12521198
}

0 commit comments

Comments
 (0)