מבוא למדעי המחשב – שפת C (234112), סמסטר אביב 2009

‫מבוא למדעי המחשב – שפת ‪ ,)211332( C‬חורף ‪2132-2132‬‬
‫תרגיל בית ‪4‬‬
‫מועד אחרון להגשה‪ :‬יום ה' ‪44/24/402/‬‬
‫המתרגל האחראי על תרגיל זה‪ :‬צביקה לזר‬
‫משרד‪ :‬טאוב ‪703‬‬
‫‪[email protected] :E-mail‬‬
‫חשוב לשמור את קוד‬
‫אישור ההגשה שמקבלים‬
‫מהמערכת כשמגישים!!‬
‫שעת קבלה רגילה‪ :‬יום ד' ‪03:70-03:70‬‬
‫שעות קבלה מיוחדות לשאלות על התרגיל‪:‬‬
‫יום א' ‪ 0710010005‬ויום א' ‪ 0010010005‬בין השעות ‪17:30-18:30‬‬
‫הוראות הגשה‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫הגשה אלקטרונית בבודדים‪1‬‬
‫תרגיל שיוגש בזמן יקבל אוטומטית בונוס של ‪ 5‬נקודות‪1‬‬
‫תינתן הארכה אוטומטית של שלושה ימי עבודה (מלבד שישי ושבת) למאחרים‪ ,‬ללא בונוס‪1‬‬
‫מלבד מילואים‪ ,‬לא יתקבלו תרגילים אחרי הארכה של שלושה ימי עבודה‪1‬‬
‫‪‬‬
‫כל יום מילואים = יום דחייה‪ 1‬על מנת לקבל את הדחייה‪ ,‬עליכם לשלוח באי‪-‬מייל למתרגל האחראי‬
‫על תרגיל זה (צביקה לזר) עותק של האישור המראה שהייתם במילואים‪ 1‬אם האישור יגיע אליכם‬
‫בתאריך מאוחר‪ ,‬אנא הודיעו על כך לצביקה לזר‪1‬‬
‫‪‬‬
‫ערעורים ניתן להגיש עד לתאריך המסומן בהודעה על מתן הציונים (כשבועיים לאחר קבלת הציון)‪1‬‬
‫במידה והערעור לא יתקבל תהיה הורדה אוטומטית של הבונוס (חמש נקודות) אם התקבל כזה‪1‬‬
‫‪‬‬
‫עירעורים על הדפסות שגויות בפלט שלכם לא יתקבלו‪ 1‬עליך לבדוק את התוכנית שלך עם‬
‫‪ DiffMerge‬לפני הגשתה‪1‬‬
‫הנחיות‪:‬‬
‫‪‬‬
‫אנא קרא‪/‬י את השאלות בעיון לפני שתתחיל‪/‬י בפתרונן‪1‬‬
‫‪‬‬
‫ניתן להניח כי הקלט תקין‪ ,‬אלא אם כן נאמר אחרת‪1‬‬
‫‪‬‬
‫שימו לב! הבדיקה תהיה אוטומטית‪ ,‬ולכן הקפיד‪/‬י מאוד להדפיס בדיוק בפורמט שהתבקשת‬
‫ולבדוק את הפלט מול הפלט של הדוגמאות שקיבלת עם ‪.DiffMerge‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪o‬‬
‫וודא‪/‬י את האותיות הגדולות והקטנות לפי הדוגמאות וההסברים בתרגיל‪1‬‬
‫‪o‬‬
‫הורדת שורה אחת בסוף כל שורה שהודפסה‪ ,‬אפילו אם היא האחרונה בתוכנית‪1‬‬
‫‪o‬‬
‫אין להדפיס רווחים בהתחלת שורה ובסופה‪1‬‬
‫יש לבדוק את אתר ה‪ FAQ -‬של התרגיל לעיתים תכופות על מנת לקבל עדכונים על התרגיל‪1‬‬
‫בתרגיל זה מותר להשתמש בפונקציות מהספרייה ‪ stdio.h‬בלבד (בלי ‪ clrscr‬ו‪1)delay-‬‬
‫הגשה אלקטרונית בבודדים היא דרך אתר הקורס‪ 1‬הגש‪/‬י קובץ ‪ zip( hw4.zip‬ולא פורמט אחר (!)‬
‫כגון ‪ 1)rar‬השם של קובץ חייב להיות באנגלית ללא רווחים‪ 1‬אין דרישות נוספות לשם הקובץ‪ ,‬כלומר‬
‫גם ‪ sharon.zip‬מקובל מבחינת המערכת‪ 1‬הקובץ יכיל בתוכו רק את הקבצים הבאים (לא לעשות ‪zip‬‬
‫על התיקייה בה נמצאים הקבצים להגשה – במקרה כזה ההגשה לא תתקבל ע''י המערכת!)‪:‬‬
‫‪ o‬קובץ ‪ students.txt‬עם שמך‪ ,‬מספר תעודת הזהות וכתובת האימייל שלך‪1‬‬
‫‪ o‬קובץ פתרון ‪ hw4q1.c‬עבור שאלה ‪10‬‬
‫‪ o‬קובץ פתרון ‪ hw4q2.c‬עבור שאלה ‪10‬‬
‫‪ ‬השתמש ב‪ redirection-‬כדי להפנות את הפלט לקובץ טקסט‪1‬‬
‫‪ ‬יש להקפיד להגיש את כל הקבצים בדיוק עם השמות שמופיעים לעיל‪ 1‬הגשה שלא תעמוד בתנאי זה‬
‫לא תתקבל ע"י המערכת!‬
‫שימו לב לדף ה‪ FAQ -‬של התרגיל‪ ,‬אשר מכיל עדכונים ותשובות לשאלות נפוצות‪ ,‬ויעודכן מפעם‬
‫לפעם‪ .‬חשוב להתעדכן לעיתים תכופות – יוכל לחסוך בעיות‪ ,‬ונקודות שירדו בבדיקה שכשלה‪.‬‬
‫בפרט‪ ,‬לפני פנייה למתרגל האחראי בדקו את הכתוב‪ ,‬על מנת לחסוך לעצמכם זמן המתנה‬
‫לתשובה‪ ,‬שבדרך כלל תהיה הפניה ל‪ FAQ -‬בכל מקרה‪ .‬ניתן למצוא את ה‪ FAQ-‬בכתובת‪:‬‬
‫‪http://tinyurl.com/c-intro-ex4-qa‬‬
‫שאלה ‪1‬‬
‫נתונים שלושה מערכים‪ :‬שניים באורך ‪ 00‬והשלישי באורך ‪ 100‬עליכם לקרא מהקלט נתונים שיאפשרו‬
‫לכם להחליף את האיברים הראשונים בשני המערכים הראשונים ואח"כ לחשב כיצד להחליף את האיברים‬
‫הראשונים במערך השלישי‪ 1‬שימו לב שהאיברים שאינם מוחלפים בשלושת המערכים הם איברים שלא‬
‫אותחלו ולכן תכנם אינו ידוע‪111‬‬
‫המשתמש יתבקש לציין כמה איברים יש להחליף במערך הראשון (‪ 00‬לכל היותר) ואת סדרת המספרים‬
‫אותם יש לשים בתאים הראשונים במערך בהתאם‪ 1‬אח"כ יתבקש המשתמש לציין כמה איברים יש‬
‫להחליף במערך השני (‪ 00‬לכל היותר גם כאן…) ואת סדרת המספרים המתאימה‪1‬‬
‫התכנית תחליף את האיברים הראשונים במערך השלישי באיברי המערך הראשון והשני בהתאמה לפי‬
‫הסדר הבא‪ :‬מספר ראשון מהמערך הראשון‪ ,‬אח"כ המספר הראשון מהמערך השני‪ ,‬אח"כ המספר השני‬
‫מהמערך הראשון ואחריו המספר השני מהמערך השני וכך הלאה‪ 1‬אם מספר המספרים שהוחלפו במערך‬
‫הראשון והשני אינו זהה‪ ,‬ישולבו תחילה המספרים הקיימים בשני המערכים ובסוף יילקחו שאר המספרים‬
‫מהמערך בו מספר האיברים שהוחלפו היה גדול יותר‪1‬‬
‫עליכם להדפיס לפלט בסופו של דבר רק את האיברים שהוחלפו במערך השלישי‪ 1‬שימו לב שאנחנו‬
‫מתעלמים מהערכים שלא הוחלפו בכל המערכים‪1‬‬
‫מהלך התכנית‬
‫‪10‬‬
‫‪10‬‬
‫‪17‬‬
‫‪14‬‬
‫‪15‬‬
‫‪13‬‬
‫תבקש מהמשתמש להכניס את מספר האברים שהוא רוצה להכניס למערך הראשון (התכנית‬
‫תניח קלט חוקי בין ‪ 0‬ל‪1)00-‬‬
‫תקלוט מספר מתאים למספר שנקלט של מספרים בקלט עבור הסדרה הראשונה‬
‫תבקש מהמשתמש את מספר האברים הרצויים בסדרה השנייה (לכל היותר ‪ 00‬כנ"ל…)‬
‫תקלוט מספר מתאים של מספרים בקלט עבור הסדרה השנייה‪1‬‬
‫תחליף את אברי המערך השלישי באברים שנקלטו עבור הסדרה הראשונה והשנייה בהתאם‬
‫למתואר לעיל‬
‫תדפיס את תוכן האיברים שהוחלפו במערך השלישי עם רווחים ביניהם וירידת שורה (ללא רווח)‬
‫לאחר האיבר האחרון‪1‬‬
‫הודעות למשתמש‬
‫על כל ההודעות למשתמש להופיע בדיוק כפי שהן מופיעות כאן‪ ,‬ללא רווח מיותר ועם הורדת שורה בסופן‪1‬‬
‫‪‬‬
‫כדי לקלוט את מספר האיברים בסדרה הראשונה‪:‬‬
‫‪‬‬
‫כדי לקלוט את האיברים של הסדרה הראשונה (‪ x‬הוא המספר שאך זה נקלט‪:)111‬‬
‫‪First series length:‬‬
‫‪Enter x numbers for first series:‬‬
‫‪‬‬
‫כדי לקלוט את מספר האיברים בסדרה השנייה‪:‬‬
‫‪‬‬
‫כדי לקלוט את האיברים של הסדרה הראשונה (‪ y‬הוא המספר שאך זה נקלט‪:)111‬‬
‫‪Second series length:‬‬
‫‪Enter y numbers for second series:‬‬
‫דוגמא לריצה (באדום קלט לדוגמא ‪ -‬בכחול פלט מתאים)‪:‬‬
‫‪First series length:‬‬
‫‪5‬‬
‫‪Enter 5 numbers for first series:‬‬
‫‪1 8 9 23 -32‬‬
‫‪Second series length:‬‬
‫‪3‬‬
‫‪Enter 3 numbers for second series:‬‬
‫‪90 23 6‬‬
‫‪1 90 8 23 9 6 23 -32‬‬
‫שאלה ‪2‬‬
‫במערך דו‪-‬מימדי מקודדת תמונה באמצעות התווים רווח (' ') וכוכבית ('*')‪ 1‬כדי לחסוך בכתיבת‬
‫הקלט‪ ,‬משתמשים באלגוריתם דחיסה‪ :‬שורות של זוגות מספרים‪ 1‬בכל זוג‪ ,‬המספר הראשון מציין מספר‬
‫רצוף של כוכביות והשני מספר רצוף של רווחים‪ 1‬בכל שורה סדרת זוגות כאלה (הכוללת לפחות זוג אחד)‬
‫מסתיימת במספר ‪1-0‬‬
‫למשל‪ ,‬עבור שורת הקלט הבאה (מתאימה לשורה באורך ‪:)00‬‬
‫‪0 3 4 3 -1‬‬
‫מייצגת שורה במערך שמתחילה באפס כוכביות (כלומר מתחילה ברווח‪/‬ים)‪ ,‬שלושה רווחים‪ ,‬ארבע‬
‫כוכביות ועוד שלושה רווחים‪ 1‬אנחנו מניחים שהקלט חוקי (סך כל הכוכביות והרווחים הוא בדיוק אורך‬
‫השורה במערך)‪1‬‬
‫השורה במערך המתאימה לשורת הקלט לעיל תיראה כך‪:‬‬
‫‪9‬‬
‫' '‬
‫‪8‬‬
‫' '‬
‫‪7‬‬
‫' '‬
‫‪5‬‬
‫‪6‬‬
‫'*'‬
‫‪4‬‬
‫'*'‬
‫‪3‬‬
‫'*'‬
‫'*'‬
‫‪2‬‬
‫' '‬
‫‪1‬‬
‫' '‬
‫‪0‬‬
‫' '‬
‫‪Index‬‬
‫‪Contents‬‬
‫בתרגיל נעבוד עם מערך תווים דו‪-‬מימדי ריבועי (כלומר מספר שווה של עמודות ושורות) בגודל כלשהו‬
‫(לכל היותר ‪ 00‬על ‪ )00‬ונבנה את תוכנו על ידי קריאת מספר שורות מתאים שמציינות את תוכן המערך‪1‬‬
‫מהלך התכנית‬
‫‪10‬‬
‫‪10‬‬
‫‪17‬‬
‫‪14‬‬
‫התכנית תבקש מהמשתמש להכניס לקלט את גודל המערך (לכל היותר ‪)00‬‬
‫התכנית תקלוט מספר מתאים של שורות מקודדות (מספר השורות נקבע על פי המספר שנקלט‬
‫בצעד ‪ ,)0‬שעל פיהן תמלא את המערך המייצג את התמונה‪1‬‬
‫התכנית תדפיס לפלט את התמונה המקודדת בתוך מסגרת‪ 1‬המסגרת תורכב מהתווים הבאים‪:‬‬
‫התו '‪( '+‬סימן החיבור) ישמש לפינות המסגרת‪ ,‬התו '|' (כמו בערך מוחלט) ישמש לחלק‬
‫האנכי מימין ומשמאל לתמונה והתו '‪( '-‬סימן החיסור) ישמש לחלק האופקי מעל ומתחת‬
‫לתמונה‪1‬‬
‫בשורה האחרונה מתחת לתמונה תינתן הודעה על סך כל מספר הכוכביות המרכיבות את הציור‪1‬‬
‫הודעות למשתמש‬
‫על כל ההודעות למשתמש להופיע בדיוק כפי שהן מופיעות כאן‪ ,‬ללא רווח מיותר ועם הורדת שורה בסופן‪1‬‬
‫‪ ‬לפני קליטת מספר שורות הקלט‪:‬‬
‫‪Enter picture size:‬‬
‫‪ ‬לפני קליטת השורות המקודדות (‪ x‬הוא המספר שנקלט זה עתה‪:)111‬‬
‫‪Enter x encoded lines:‬‬
‫‪ ‬אחרי הדפסת התמונה המתקבלת במסגרת‪ ,‬תיכתב לפלט מתחת לתמונת השורה (ללא שורת‬
‫רווח)‪:‬‬
‫‪This picture contains y asterisks‬‬
‫כש‪ y-‬הוא מספר סך כל הכוכביות שבהן השתמש הציור‪1‬‬
‫דוגמא לריצה (באדום קלט לדוגמא ‪ -‬בכחול פלט מתאים)‪:‬‬
‫שימו לב ששורת הפלט הראשונה היא סדרה של עשרה רווחים (נראית כשורת רווח בין הקלט לפלט…)‪:‬‬
‫‪Enter picture size:‬‬
‫‪10‬‬
‫‪Enter 10 encoded lines:‬‬
‫‪0 10 -1‬‬
‫‪10 0 -1‬‬
‫‪0 1 1 6 1 1 -1‬‬
‫‪0 2 1 4 1 2 -1‬‬
‫‪0 3 1 2 1 3 -1‬‬
‫‪0 4 2 4 -1‬‬
‫‪0 3 1 2 1 3 -1‬‬
‫‪0 2 1 4 1 2 -1‬‬
‫‪0 1 1 6 1 1 -1‬‬
‫‪10 0 -1‬‬
‫‪+----------+‬‬
‫|‬
‫|‬
‫|**********|‬
‫* |‬
‫| *‬
‫* |‬
‫| *‬
‫|‬
‫* *‬
‫|‬
‫|‬
‫**‬
‫|‬
‫|‬
‫* *‬
‫|‬
‫* |‬
‫| *‬
‫* |‬
‫| *‬
‫|**********|‬
‫‪+----------+‬‬
‫‪This picture contains 34 asterisks‬‬
‫שאלה ‪( 3‬שאלה יבשה)‬
‫הנחיות לתרגיל יבש‬
‫שימו לב שאת התשובה לשאלה זו מגישים בצורה יבשה בלבד‪ ,‬כלומר – יש להגיש את הפתרון המודפס‬
‫לשאלה כולל תצלומי מסך מודפסים של דוגמאות ההרצה המבוקשות‪ ,‬לאחד משני תאי הקורס ‪074000‬‬
‫בבניין טאוב (מדעי המחשב) קומה ‪ ,0‬קומה אחת מעל קומת הכניסה התחתונה (לא לתא של אף קורס‬
‫אחר דומה!)‪ 1‬מצורפת תמונה‪:‬‬
‫בראש כל דף בהגשה המודפסת יש להוסיף שם מלא בעברית‪ ,‬מספר ת"ז וכתובת דוא"ל‪ 1‬חשוב מאוד‬
‫שמספר ת"ז שלכם ייכתב בצורה קריאה‪ ,‬אחרת תסתכנו באי קבלת ציון על השאלה!‬
‫‪‬‬
‫אסור להשתמש בפונקציות או במצביעים‬
‫‪‬‬
‫על הפתרון להיות קריא ומתועד‪ ,‬כלומר ‪ -‬עם הערות המסבירות אותו‬
‫‪‬‬
‫יש להשתמש בהזחה )‪(indentation‬‬
‫‪‬‬
‫יש לתת שמות משמעותיים למשתנים‬
‫‪‬‬
‫אי הקפדה על הדרישות האלו‪ ,‬תגרור הורדת נקודות‪1‬‬
‫‪‬‬
‫מה מגישים? איך מגישים?‬
‫‪ 10‬הקוד המודפס מקודבלוקס‪ 1‬כלומר‪ ,‬אחרי פתרון השאלה וכתיבת הקוד בקודבלוקס‪,‬‬
‫הדפיסו אותו (‪ 1)File-->Print‬אם נתקלים בקושי להדפיס מקודבלוקס‪ ,‬אפשר‬
‫להשתמש בכל שיטת הדפסה נוחה אחרת‪ ,‬כל עוד הקוד מודפס בצורה ברורה‪ ,‬מסודרת‬
‫וקריאה‪ 1‬אפשר להוסיף הערות לקוד בכתב יד לאחר ההדפסה (בכתב נקי וברור!)‬
‫טיפ‪ :‬אפשר לצלם את המסך עם הקוד שלכם בקודבלוקס‪1‬‬
‫‪‬‬
‫דוגמאות ההרצה המבוקשות בשאלה‪ :‬צריך להריץ את התוכנית בקודבלוקס ולהשתמש בקלט‬
‫המבוקש בכל פעם‪ ,‬כדי לוודא שהיא מדפיסה למסך את הנדרש ‪ 1‬צלמו את מסך החלון השחור‬
‫והדפיסו אותו‪ 1‬אין להגיש תצלום של כל המסך‪ ,‬אלא של החלון השחור בלבד‪ 1‬דוגמא מתאימה‬
‫מופיעה בסוף השאלה‪ 1‬חובה לראות בתדפיס את ההרצה עצמה‪ ,‬את הקלט שניתן‪ ,‬ואת הפלט‬
‫המתקבל‪ 1‬תורדנה נקודות על חלקים חסרים בהדפסה (קלט ו‪/‬או פלט)‪1‬‬
‫‪‬‬
‫השתמשו בשלד התכנית המובא בהמשך‪ 1‬עליכם להחליף את ההערות‪:‬‬
‫‪ /* TO BE COMPLETED */‬בקוד שלכם בהתאם‪1‬‬
‫השאלה‬
‫נתון מערך דו‪-‬ממדי ‪ mat‬של מספרים שלמים בגודל ‪ M‬שורות (‪ M‬מוגדר ב‪ )#define-‬ו‪ M-‬עמודות‪1‬‬
‫הגדרה‪ :‬המערך ‪ mat‬נקרא "זוגי לסירוגין" כאשר מתקיים‪:‬‬
‫‪‬‬
‫‪‬‬
‫סכום כל האיברים בכל שורה בעלת אינדקס זוגי הוא אי‪-‬זוגי‪,‬‬
‫ולהיפך‪ ,‬סכום כל האיברים בכל שורה בעלת אינדקס אי‪-‬זוגי הוא זוגי‪1‬‬
‫התכנית שלכם אמורה לקלוט מספרים שישובצו במערך דו‪-‬מימדי ריבועי שגודלו לכל היותר ‪ 10 x 00‬והיא‬
‫תודיע האם המערך הוא "זוגי לסירוגין" או שתדפיס את אינדקס השורה הראשונה‪ ,‬המפרה את ההגדרה‬
‫"זוגי לסירוגין"‪1‬‬
‫הערות‪:‬‬
‫‪‬‬
‫‪‬‬
‫האיברים במערך יכולים להיות חיוביים או שליליים או אפס‪1‬‬
‫אפס הוא מספר זוגי‪1‬‬
‫דוגמה‪:‬‬
‫עבור המערך הנתון הבא (‪ )M=3‬התכנית תודיע כי הוא "זוגי לסירוגין"‪1‬‬
‫‪4‬‬
‫‪0‬‬
‫‪0‬‬
‫‪-0‬‬
‫‪3‬‬
‫‪-7‬‬
‫‪7‬‬
‫‪1‬‬
‫‪-5‬‬
‫הסבר‪:‬‬
‫סכום האיברים בשורה מספר אפס (זוגי)‪ 11+2+4=7 :‬הסכום אי‪-‬זוגי‪1‬‬
‫בשורה מספר ‪( 0‬אי‪-‬זוגי)‪ 1-3+3-2=-2 :‬הסכום זוגי‪1‬‬
‫בשורה מספר ‪( 0‬זוגי)‪ 1-5+1+7=3 :‬הסכום אי‪-‬זוגי‪1‬‬
‫מהלך התכנית‬
‫‪ .1‬תדפיס‪:‬‬
‫‪Enter array size:‬‬
‫‪ 10‬תקלוט את מספר השורות ‪( M‬שמציין גם את מספר הערכים בכל שורה)‪ 1‬המספר הוא שלם בין ‪ 0‬ל‪-‬‬
‫‪( 00‬מותר להניח קלט תקין)‪1‬‬
‫תדפיס את השורה הבאה‪ 1‬בהדפסה‪ M ,‬ו‪ i-‬המופיעות להלן תוחלפנה בגודל המערך ואינדקס השורה‬
‫בהתאמה‪:1‬‬
‫‪Enter M integer numbers for the row with index i:‬‬
‫‪ 17‬תקלוט ‪ M‬מספרים עבור השורה הנוכחית‪1‬‬
‫‪ 14‬התכנית תדפיס שורה דומה עבור השורה הבאה ותקלוט עוד ‪ M‬מספרים – תחזור על כך עד‬
‫שתתקבלנה ‪ M‬שורות בסה"כ‪1‬‬
‫‪ 15‬לאחר סיום קליטת כל שורות הקלט‪ ,‬תבדוק אם המערך שהוזן הוא "זוגי לסירוגין "‪1‬‬
‫‪ 13‬תדפיס אישור שהמערך הוא "זוגי לסירוגין"‪ ,‬או שתדפיס את אינדקס השורה הראשונה ש"פוסלת"‬
‫את המערך מלהיות מוגדר ככזה‪ 1‬כלומר‪ ,‬תדפיס את אחת ההדפסות הבאות‪:‬‬
‫‪o‬‬
‫הדפסה במקרה של מערך "זוגי לסירוגין"‪:‬‬
‫‪The given array is of alternating parity‬‬
‫‪o‬‬
‫הדפסה במקרה של מערך שאיננו "זוגי לסירוגין" (אינדקס השורה המתאים יודפס במקום‬
‫במקום ‪ j‬להלן)‪:‬‬
‫‪Array is not of alternating parity - index of the first row that‬‬
‫‪doesn't observe it is j‬‬
‫שתי דוגמאות ההרצה המבוקשות ופלט לדוגמא לכל אחת מהן‪:‬‬
‫דוגמא ראשונה‪ :‬המערך המופיע בדוגמא עם ההסבר לעיל ייראה כך בהרצה‪:‬‬
‫דוגמא שניה‪ :‬המערך הבא‪:‬‬
‫‪-5‬‬
‫‪4‬‬
‫‪-3‬‬
‫‪0‬‬
‫‪-0‬‬
‫‪6‬‬
‫‪-5‬‬
‫‪4‬‬
‫‪-3‬‬
‫‪2‬‬
‫‪-8‬‬
‫‪6‬‬
‫‪-5‬‬
‫‪4‬‬
‫‪-3‬‬
‫‪8‬‬
‫‪-7‬‬
‫‪6‬‬
‫‪-5‬‬
‫‪4‬‬
‫‪-9‬‬
‫‪8‬‬
‫‪-7‬‬
‫‪6‬‬
‫‪-5‬‬
‫שלד התכנית‬
#include <stdio.h>
#define MAX_ARRAY_SIZE 10
int main()
{
/* variable definition */
/* TO BE COMPLETED */
/* Get array size */
printf("Enter array size:\n");
/* TO BE COMPLETED */
/* Get array elements a line by line */
for (i = 0; i < nSize; ++i) {
printf("Enter %d integer numbers for the row with index
%d:\n", nSize, i);
for (j = 0; j < nSize; ++j) {
/* TO BE COMPLETED */
}
}
/* Check the array's alternating parity */
for (i = 0; i < nSize; ++i) {
/* TO BE COMPLETED */
}
/* TO BE COMPLETED */
return 0;
}