לולאת while שפת C

shir1595

New member
לולאת while שפת C

השאלה- כתבו תכנית הקולטת מספר כלשהו ומחשבת את סכום המספרים הזוגיים שנקלטו עד למספר שנקלט.

הצהרתי:
;int num
;int sum=0
בתוך ה-while חשבתי לכתוב שהלולאה תתקיים כל עוד זה שונה מ0.
ואז נתקעתי.
מכיון שמדובר בקליטה של מספר יחיד צריך לבקש להכניס לפני הלולאה, נכון?
אין לי מושג איך לכתוב בתוך הלולאה לחשב את סכום המספרים הזוגיים עד המספר שנקלט, אני יודעת שאם num%2=0 זא" המספר זוגי.

אשמח להכוונה!
 

BravoMan

Active member
השאלה לא מובנת:

בטקסט השאלה כתו פעמיים "שנקלטו", ואפשר לפרש את זה בשתי צורות:
&nbsp
1. תקלוט מספר X.
2. בצע בלולאה X פעמים:
2.1 קלוט מספר.
2.2 אם המספר שנקלט זוגי, הוסף אותו לסכום.
&nbsp
אפשרות שניה היא, שמה שביקשו:
1. קלוט מספר X.
2. רוץ בלולאה מ-0 (או 1?) עד X
2.1 אם מונה הלולאה הנוכחי זוגי, הוסף אותו לסכום.
&nbsp
אז, למה התכוון המשורר?
 

shir1595

New member
הכוונה

לסכימת המספרים הזוגיים עד (לא כולל) המספר שנקלט, נניח קלטתי 10 צריך להתבצע:
2+4+6+8 והפלט 20
 

BravoMan

Active member
בסדר גמור, אם כך באפשרות 2 די פרתרתי לך את התרגיל, לא?

בעצם, את אפילו לא חייבת לבצע module כדי לבדוק אם המספר זוגי.
את יכולה להתחיל את המונה ממספר זוגי הכי קטן שאת מכירה, ולהוסיף 2 למונה בכל מעבר לולאה.
&nbsp
לפי מה שכתבת, את כבר יודעת להגדיר משתנה לסכום, ויודעת להגדיר משתנה למונה.
עוד חישוב קטן ותנאי פשוט וסיימת את התרגיל.
&nbsp
בהצלחה ושבת שלום!
 
למעלה