אשמח לעזרה

tiktok

New member
../images/Emo26.gifאשמח לעזרה

בהודעתי הבאה, תצורף התוכנית וה"משימה" שלכם היא לעזור לי להבין למה זה לא עובד...
 

אלדד28

New member
יש כמה טעויות.

1. בשורה 132, ה - scanf שלך מקבל number במקום שיקבל number& כמו שצריך. 2. ה-GCD שלך לא נכון וגורם ללולאה אינסופית. הוא צריך להיות -
int gcd (int a, int b) { int res=0; int c; int rem; // Swapping so that a will be >b. if (a<b) { c = a; a = b; b = c; } rem = a%b; while (rem!=0) { a = b; b = rem; rem = a%b; } return b; }​
3. ההדפסה בשורה 144 צריכה להיות (בשביל ריווח נכון) -
printf("%10d ", number);​
4. ובשורה 202, ה-length צריך להיות מופחת מ-22... (מספרי השורות ב-3 ו-4 הם אחרי החלפת ה-GCD כמובן)
 

כאגאי

New member
בנוסף,

לא צריך לעשות בשורות של ה returnים את הפקודה : ?. אם למשל תעשי:
return (counter>=3);​
זה יעבוד באותה מידה. אבל יפה מאוד, למה נלחצת? עשית את זה לא רע בכלל.
 

זהיר

New member
GCD

int gcd(int a, int b) /* Wrong for (0,0) only */ { if (a < 0) a = -a; if (b < 0) b = -b; while (b != 0) { int c = a; a = b; b = c%b; } return a; }​
תכנתו בזהירות
 

eyalbd

New member
סחתיין על ההתקדמות

הקוד ששלחת עכשיו לעומת הקוד מהתרגיל הראשון? שמיים וארץ. הסתכלתי בריפרוף בקוד שלך הפעם והוא נראה יפה ומסודר יותר. נשאר רק לתקן את הבאגים ולהוסיף כמה הערות מסוג "כמה ימים היתה מלחמת ששת הימים" כדי שהבודק יהיה מרוצה (אבל לא להגזים)
 

tiktok

New member
אמממ....

קצת קשה לי לקחת את הקרדיט לעצמי, עזרו לי מאד מאד מאד
 
למעלה