קורס JS – שיעור 5 – מערכים ומחרוזות

סיכום שיעור – מצגת

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

 

 

חזרה לעמוד הקורס 

אשרה גרינבלט

אשרה גרינבלט היא המייסדת ומנהלת של המותג GreenCode. אשרה עוסקת בהקמת אתרים מאז שנת 2009. בין לבין היא גם התמודדה עם מחלת הסרטן ואף כתבה על זה בלוג, כתבה ספר פרוזה בשם "לגדול על מים" ופיתחה לעצמה תחביב של פיסול בחוטי ברזל. המשותף לכל תחומי העשיה המגוונים האלו הוא שכולם נעשים בתשוקה גדולה.