2 תשובות
שמע אחי הקוד כתוב לא ברור בכלל ויש מה לשפר בכתיבה הכללית, כי אני מאמין שבמבחנים אתה כותב על דף אז תשתדל לייעל ולחסוך בשורות איפה שאפשר.
בעיקרון הבעיה הראשונה שלך זה שאין בדיקת תקינות קלט כמו שביקשו ממך
אחרי הקלט תעשה if num < 0 תעשה איזה פרינט שיכניסו מספר חיובי.
שמתי לב שאתה בודק min-max פעמיים ואין טעם לזה כי במספר הספרה המינימלית או המקסימלית לא משתנה
החלק היחידי ששונה זה הממוצע
בעיקרון הבעיה הראשונה שלך זה שאין בדיקת תקינות קלט כמו שביקשו ממך
אחרי הקלט תעשה if num < 0 תעשה איזה פרינט שיכניסו מספר חיובי.
שמתי לב שאתה בודק min-max פעמיים ואין טעם לזה כי במספר הספרה המינימלית או המקסימלית לא משתנה
החלק היחידי ששונה זה הממוצע
הייתי צריך ללכת רגע חזרתי להמשיך לענות לך.
אז מה שאתה צריך לעשות לדוגמה זה
תשנה את count מאפס ל1
min יכול להיות 9 ולא 9999 כי אומרים לך למצוא את הספרה הכי קטנה
while num > 0
digit = num % 10
if num % 2 == 0
if count % 2 != 0 זה בתוך הif
sum += digit
else
if count % 2 == 0
sum += digit
פה מחוץ ל2 התנאים פשוט בתוך הלולאה תעשה בדיקה של min-max
עכשיו מחוץ ללולאה תחשב את avg
פשוט sum / count
אז מה שאתה צריך לעשות לדוגמה זה
תשנה את count מאפס ל1
min יכול להיות 9 ולא 9999 כי אומרים לך למצוא את הספרה הכי קטנה
while num > 0
digit = num % 10
if num % 2 == 0
if count % 2 != 0 זה בתוך הif
sum += digit
else
if count % 2 == 0
sum += digit
פה מחוץ ל2 התנאים פשוט בתוך הלולאה תעשה בדיקה של min-max
עכשיו מחוץ ללולאה תחשב את avg
פשוט sum / count
באותו הנושא: