30-11-2007, 19:43
|
|
|
חבר מתאריך: 29.08.06
הודעות: 201
|
|
טעויות.
1. בפונקציה chkDiagonal אתה מקטין את n בלולאת ה-for במקום את i .
2. שוב ב-chkDiagonal , אתה לא עוצר כאשר אתה נתקל באיבר על האלכסון הראשי ששונה מ-1 ולכן במקרה בו כל האלכסון הראשי מלא ב-1-ים למעט תא אחד אתה תחזיר מהפונקציה n-1 ללא קשר למיקום האיבר על האלכסון ששונה מ-1 או לחילופין אתה תחזיר מספר שונה מאפס עבור מטרציה שקיים לה "1" על האלכסון הראשי ללא קשר למיקומו.
3. בפונקציות chkXXXTriangle אתה בודק האם המשולש העליון/תחתון תחת האלכסון הראשי מלאים באפסים ללא קשר לתוצאת chkDiagonal , כלומר אינך בודק כלל מה שאתה צריך לבדוק.
4. בפונקציות chkXXTriangle אתה תחזיר True אם קיים איבר כלשהוא שהוא "0" ללא קשר לשאר האיברים. הביטוי "return true;" אינו נמצא במקום הנכון כלל וכלל. תחשוב מחדש על הלוגיקה של מה שאתה רוצה לעשות שם , או יותר נכון מתי אתה רוצה להחזיר FASLE.
5. בפונקציות chkXXXTriangle אתה עובר על טווחים לא נכונים. שים לב לטווחים בביטוי ה-for ולתלות בין מספר השורה למספר העמודות שאתה צריך לסרוק באותה שורה עבור כל משולש.
לא אגיד לך כיצד לפתור את שיעורי הבית , כן אמליץ לך קודם לחשוב על דרך כללית לפתרון ורק לאחר מכן לתכנת כיוון שכרגע התוכנית אינה עונה כלל על השאלה.
יואב.
נערך לאחרונה ע"י YoavG בתאריך 30-11-2007 בשעה 19:49.
סיבה: עוד טעויות..
|