Pearle River
New member
שאלה חשובה (משהו קטן)..
התרגיל: ריבוע לטיני פשוט הוא מערך מגודל n*n המכיל מספרים, כך שמספר לא יופיע יותר מפעם אחת בשורה או בעמודה; לכתוב תרגיל שבודק את זה ומחזיר 'אמת' אם כן, אחרת 'שקר'. פתרתי והכל אבל יש לי שאלה אם דרך פתרוני אפשרית במבחן. עשיתי פרוצדורה, שעבור כל מספר במערך, פונת לפונקציה שמעליה לבדוק כמה פעמים כל מספר במערך הופיע בשורה או בעמודה. השאלה אם מותר לי לקרוא למשתנה שנקלט דרך התכנית הראשית מפרוצדורה לפונקציה אחרת.
התרגיל: ריבוע לטיני פשוט הוא מערך מגודל n*n המכיל מספרים, כך שמספר לא יופיע יותר מפעם אחת בשורה או בעמודה; לכתוב תרגיל שבודק את זה ומחזיר 'אמת' אם כן, אחרת 'שקר'. פתרתי והכל אבל יש לי שאלה אם דרך פתרוני אפשרית במבחן. עשיתי פרוצדורה, שעבור כל מספר במערך, פונת לפונקציה שמעליה לבדוק כמה פעמים כל מספר במערך הופיע בשורה או בעמודה. השאלה אם מותר לי לקרוא למשתנה שנקלט דרך התכנית הראשית מפרוצדורה לפונקציה אחרת.
Function Kama(k:mat_type; a,a1:integer):integer; Var mone,i,j:integer; Begin mone:=-1; For i:=1 to n do if k[a,i]=k[a,a1] then mone:=mone+1; For j:=1 to n do If k[j,a1]=k[a,a1] then mone:=mone+1; kama:=mone; End; Function Sqr_Latini(M:mat_type):Boolean; var i,j:integer; Begin sqr_latini:=True; For i:=1 to n do For j:=1 to n do if kama(m,i,j)>1 then sqr_latini:=false; End;