170 likes | 292 Views
הוראות תנאי ולולאות . מה נשתנה במעבר לשפות החדשות ?. שמעון אבן חיים סדנא פדגוגית כרמיאל 27.3.07. ניתוח פתרון של בחינת בגרות 2005. שאלה 1 - האם יש הבדל?. לא. שאלה 2 - האם יש הבדל?. לא. כן – בקלט ופלט ובטיפול במחרוזת. שאלה 3 - האם יש הבדל?. שאלה 4 - האם יש הבדל?.
E N D
הוראות תנאי ולולאות מה נשתנה במעבר לשפות החדשות ? שמעון אבן חיים סדנא פדגוגית כרמיאל 27.3.07
ניתוח פתרון של בחינת בגרות 2005 שאלה 1 - האם יש הבדל? לא שאלה 2 - האם יש הבדל? לא כן – בקלט ופלט ובטיפול במחרוזת שאלה 3 - האם יש הבדל? שאלה 4 - האם יש הבדל? כן – בפלט בלבד לא שאלה 5 - האם יש הבדל? לא שאלה 6 - האם יש הבדל?
ניתוח פתרון של בחינת בגרות 2005 -המשך שאלה 7 - האם יש הבדל? כן – בקלט ופלט בלבד שאלה 8 - האם יש הבדל? כן – בקלט ופלט בלבד שאלה 9 - האם יש הבדל? כן – בקלט ופלט ובמערך דו-מימדי
ניתוח פתרון של בחינת בגרות 2005 –המשך שאלה 10 - האם יש הבדל? כן – בקלט ופלט ופעולות על מחרוזת public static string GetAndCountColors(int len) { int green = 0, red = 0, yellow = 0, i; string s; for (i = 0; i < len; i++) { Console.WriteLine("Enter color:"); s = Console.ReadLine(); green++; if (s.Equals("red")) red++; if (s.Equals("yellow")) yellow++; } s = green + "*" + red + "*" + yellow; return s; }
public static bool ChainIsOk(string st) { ; int first; int last first = st.IndexOf("*"); Console.WriteLine(first); last = st.LastIndexOf("*"); Console.WriteLine(last); string g = st.Substring(0,first); Console.WriteLine(g); string r = st.Substring(first + 1, last-first-1); Console.WriteLine(r); string y = st.Substring(last + 1); Console.WriteLine(y); if ((g.Equals(r)) && (r.Equals(y))) return true; return false; }
אם כךמה נשתנה בתנאים ולולאות במעבר לשפות החדשות ? • האובייקט מערך מכיל תכונה length • האובייקט מחרוזת מכיל תכונה length • שימוש בפעולות חדשות במחלקה String כמעט כלום פרט ל… בכל זאת...
נוצרה הזדמנות ל : שילוב אובייקטים גרפיים ולא גרפיים בכל תהליך הלימוד של תנאים ולולאות. • העמקת הבנת לולאות • גיוון תהליך הלמידה וההוראה • ביצוע מעבדות מאתגרות ומעניינות יותר • גוון התרגילים בכיתה ובבית.
תכנות משחק נחש מספר - במאמא הגדרב:=0 הגדר א:=אקראי(100) הגדר נסיונות:=0 המחשב בוחר מספר אקראי בין 1 ל 100
תכנות משחק נחש מספר (המשך) כלעוד א<>ב ב:=קלוט_מספר("הכנס מספרבין 1 ל 100") אם ב>א יישום.הודעה("גדול") אחרתאם א>ב יישום.הודעה("קטן") נסיונות:=נסיונות+1 יישום.הודעה("הצלחת ב: "+נסיונות+" נסיונות")
תכנות משחק נחש מספר ב- #C static void Main(string[] args) { int randomNumber; int gassNumber= 0; int trys = 0; Random rnd = new Random(); randomNumber = rnd.Next(1, 100); while (randomNumber != gassNumber) { Console.WriteLine("enter number between 1 to 100"); gassNumber = int.Parse(Console.ReadLine()); if (gassNumber > randomNumber) ; ("המספר שניחשת גדול מדי ")MessageBox.Show else if(gassNumber<randomNumber) ; ("המספר שניחשת קטן מדי");MessageBox.Show trys++; } ("כל הכבוד הצלחת ב "+ trys+" נסיונות") MessageBox.Show } אובייקט למספרים אקראיים מספר אקראי בין 1 ל 100 אובייקט תיבת הודעה
שימוש באובייקטים גרפים כדי להשתמש באובייקטים גרפיים צריך להוסיףבתחילת התוכנית using System.Windows.Forms; להוסיף בהפניות - References System.Windows.Forms;
שימוש בתרגיל משחק נחש מספר • יוצר עניין בתרגול הלולאות • מהווה הזדמנות לדבר על פתרון שיטתי לעומת ניחוש סתמי • מהווה הזדמנות טובה לדבר על יעילות • מפתיע את התלמידים המקרה של ניחוש מספר מ 1 עד מליון ב- 20 ניחושים לכל היותר. • התנסות ראשונית טובה להבנת חיפוש בינרי
צורות בעזרת הצב - במאמא דוגמה ראשונה: ציור ריבוע צב.מקום(-150,0) צב.צבע_עט:=צבע.כחול צב.הסתר_צב() חזור 4 צב.קדימה(200) צב.ימינה(90) שן(1)
צורות בעזרת הצב – C# שימוש בתוכנה של שמעון עמר • Turtle mikel = new Turtle(); • mikel.setColor(System.Drawing.Color.Blue); • mikel.tailDown(); • for (int i = 0; i < 4; i++) • { • mikel.turnLeft(90); • mikel.moveForward(100); • }
המשך תרגול • שנוי צבע הצורה • ציור משולש , מחומש, משושה וכו' • ציור מעגל • שימוש בתנאים לבחירה או לשנוי כוון כאשר מגיעים לקצה
ציור מעגל • mikel.setColor(System.Drawing.Color.DeepPink); • mikel.tailDown(); • for (int i = 0; i < 120;i++) • { • mikel.moveForward(5); • mikel.turnRight(3); • }