סיכום שיעור – מצגת
http://gamani.info/prog/JS/lesson5/string_array.zip
התרגילים שפתרנו בכיתה
http://gamani.info/prog/JS/lesson5/string-array-solved-in-class.zip
קבצי שיעורי הבית להורדה
http://gamani.info/prog/JS/lesson5/ex_string_and_array.zip
שיעורי בית
מחרוזות
תרגיל 1 – כתבי תוכנית שעובדת על המחרוזת הבאה
avi is a nice boy. avi is 5 years old. avi likes red. his bag is red
התוכנית מוצאת את המיקום של המילה boy
התוכנית מחליפה את המילה bag ב ball
התוכנית מוצאת כמה פעמים האות i מופיעה במחרוזת
תרגיל 2 – ליצור את המשולש הזה באמצעות repeat (הדפיסו לקונסול ב 5 פקודות הדפסה נפרדות)
1
22
333
4444
55555
אתגר 1
ליצור משולש כזה:
1
121
12321
1234321
התוכנית תקבל מהגולש מספר בין 1 ל 10 ותכין משולש כזה
שלב א – המשולש יודפס לקונסול
שלב ב – רשות – המשולש יודפס למסך
יש לכתוב פונקציה שמקבלת מספר בודד ומכינה שורה בודדת כנגד אותו מספר
הפונקציה תכין את המחרוזת באמצעות לולאה אחת בלבד
עבור כל מספר היא תכניס אותו עצמו למחרוזת ולאחר מכך תעבור על כל המספרים שמתחתיו ותכניס כל אחד מהם פעם בתחילת המחרוזת ופעם בסוף המחרוזת
יש להשתמש בפונקציה concat
שימו לב כי הפונקציה concat מקבלת שתי מחרוזות ומחזירה אחת חדשה (הגדירו משתני ביניים למחרוזות אלו)
אתגר 2 – אטומיישן
כתבו את הפונקציה automaton
הפונקציה מקבלת מחרוזת שבנויה מאיקסים ונקודות ועליה להחזיר מחרוזת אחרת (שבנויה מאיקסים ונקודות) לפי החוקיות הבאה:
עבור כל תו במחרוזת שהתקבלה יש לבדוק גם את התא שלפניו וגם את התא שאחריו
במידה ושלושת התוים האלו כולם X או כולם נקודה אזי אותו תו במחרוזת החדשה יהיה נקודה
רק במידה ושלושת התוים במחרוזת שהתקבלה אינם זהים בניהם (חלקם איקסים וחלקם נקודות), אותו תו במחרוזת החדשה יהיה X
המלצה: בתחילת הפונקציה הגדירו 3 משתנים שהם מספרי האיברים המשמעותיים עבור האיבר אותו אתן בודקות
כאשר ברצונכן לבדוק מה עליכן לשים באיבר השני (במיקום 1) עליכן לבדוק את האיבר במיקום 0 (זה האיבר הקודם), את האיבר השני (במיקום 1, הוא האיבר הנוכחי) ואת האיבר שאחריו (מיקום 2 – הוא האיבר הבא)
כאשר ברצונכן לבדוק מה עליכן לשים באיבר הראשון (במיקום 0) עליכן לבדוק את האיבר במיקום האחרון (זה האיבר הקודם), את האיבר הראשון (במיקום 0, הוא האיבר הנוכחי) ואת האיבר שאחריו (מיקום 1 – הוא האיבר הבא)
מערכים
תרגיל 1
בהנתן המערכים הבאים
;["let one = ["avi", "gidi", "eyal
;[let two = [6, 5, 7
כתוב תוכנית שמדפיסה לקונסול 3 שרות
Avi is 6 years old
Gidi is 5 years old
Eyal is 7 years old
תרגיל 2
בהנתן המערך
;[[let one = [["avi", 6], ["gidi",5], ["eyal",7
כתוב תוכנית שמדפיסה לקונסול 3 שרות
Avi is 6 years old
Gidi is 5 years old
Eyal is 7 years old
תרגיל 3
שכללו את הלולאה כך שתשתמש בלולאת for of
( for (let [name, age] of one
אתגרים
120- כתבו תוכנית שבהתבסס על המערך הבא
;[["let res = [[90,"A"],[80,"B"],[70,"C"],[60,"D"],[0,"F
מקבלת ציון ומחזירה הערכה באותיות
121 – כתבו תוכנית ובה פונקציה שמקבלת מחרוזת הוראות ומחזירה הערכה באותיות
מחרוזות ההוראות הן
let JAPAN = "AA:90,A:80,B:70,C:60,F:0";
let THAILAND = "A:80,B+:75,B:70,C+:65,C:60,D+:55,D:50,F:0";
let ICELAND = "A:94,B+:82,B:65,C+:50,C:35,D:1,O:0";
let IRELAND = "A:85,B:70,C:55,D:40,E:25,F:1,NG:0";
let US_4 = "A:92,B:83,C:74,D:65,F:0";
let US_12 = "A+:97,A:93,A-:90,B+:87,B:83,B-:80,C+:77,C:73,C-:70,D+:67,D:63,D-:60,F:0";
עליכן להשתמש בפונקציה split על מנת להפוך את מחרוזת ההוראות למערך
משימה נוספת:
שנו את החנות כך שתעבוד גם באופן הזה:
לאפשר בתיבת הקופה לעדכן כמות
החזיקו משתנים ובהם הכמות הנוכחית של כל מוצר
עשו זאת באמצעות מערך
פתרון שיעורי בית
http://gamani.info/prog/JS/lesson5/lesson5-hw-solution.zip