נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: שאלה על מערך דו מימדי

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
javaboy
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 25 November 2007 בשעה 15:56 | IP רשוּם
ציטוט javaboy

נגדיר: אלכסון ראשי של מערך דו-ממדי b ריבועי בגודל n´n מכיל את האיברים b[0,0],b[1,1],...,b[n-1,n-1]).

 

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

אם קיים - השיטה תחזיר את מספר השורות/עמודות של מערך ריבועי חלקי זה; אם לא קיים - השיטה תחזיר 0.

חתימת השיטה תהיה:    public int square()

דוגמא:

http://img444.imageshack.us/my.php?image=65786610gi4.jpg

 

לא הבנתי איך עושים זאת?

חשבתי אולי על משהו כמו

שיבדוק האם במקום האחרון של המטריצה

   האם שווה ל-1 ואז משם להמשיך לרוץ על האלכסון ולבדוק עם בשורה ובעמודה יש אפסn,n

חזרה לתחילת העמוד הצג את כרטיס החבר של javaboy חפש הודעות אחרות של javaboy בקר בדף הבית של javaboy
 
BA%P
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 07 March 2007
מדינה: Israel
משתמש: מנותק/ת
הודעות: 144
נשלח בתאריך: 25 November 2007 בשעה 16:36 | IP רשוּם
ציטוט BA%P

מה שמיוחד שמטריצה הזאת זה ש[a,b] תמיד שוים באלכסון ז"א הריבוע הראשון של האלכסון יהיה [1,1] והשני [3,3] וכו'.. אז תריץ לולאה שתבדוק אם כשI שווה לJ במערך נמצא שם 1 וכל עוד זה נכון שיבדוק בכל המקומות שI שונה מJ אם מוצב שם 0.. אני יודעת פסקל ולא C אז אני לא יכולה לכתוב לך את זה ממש.. בכל מקרה אני מקווה שהבנת



__________________
"אלוהים נתן לאדם שתי אזניים ופה אחד כדי שיקשיב יותר וידבר פחות."
א.איינשטין
חזרה לתחילת העמוד הצג את כרטיס החבר של BA%P חפש הודעות אחרות של BA%P
 
javaboy
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 25 November 2007 בשעה 16:47 | IP רשוּם
ציטוט javaboy

BA%P כתב:

מה שמיוחד שמטריצה הזאת זה ש[a,b] תמיד שוים באלכסון ז"א הריבוע הראשון של האלכסון יהיה [1,1] והשני [3,3] וכו'.. אז תריץ לולאה שתבדוק אם כשI שווה לJ במערך נמצא שם 1 וכל עוד זה נכון שיבדוק בכל המקומות שI שונה מJ אם מוצב שם 0.. אני יודעת פסקל ולא C אז אני לא יכולה לכתוב לך את זה ממש.. בכל מקרה אני מקווה שהבנת

תוכלי לרשום לי את זה בפסקל בעקרון זה אמור להיות בגאווה אבל העיקר העיקרון

חזרה לתחילת העמוד הצג את כרטיס החבר של javaboy חפש הודעות אחרות של javaboy בקר בדף הבית של javaboy
 
BA%P
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 07 March 2007
מדינה: Israel
משתמש: מנותק/ת
הודעות: 144
נשלח בתאריך: 25 November 2007 בשעה 21:07 | IP רשוּם
ציטוט BA%P

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

function mat1(a:array):boolean  

{ט"כ:הפרונקציה מקבלת מטריצה, ובודקת אם האיברים שאינם נמצאים באלכסון הראשי  מכילים את הספרה אחת ט"י:הפונקציה מחזיקה אמת אם הם מכילים אחת ושקר אחרת}

begin                   & nbsp;                 

for i:= 1 to n do

for j:=1 to n do

if i = j then

if a [i,j] ='1' then

mat1:=true

else

mat1:=fulse

end

function mat2(a:array):boolean

{ט"כ:הפרונקציה מקבלת מטריצה, ובודקת אם האיברים שאינם נמצאים באלכסון הראשי  מכילים את הספרה אפס ט"י:הפונקציה מחזיקה אמת אם הם מכילים אפס ושקר אחרת}

begin

for i:= 1 to n do

for j:=1 to n do

if i <> j then

if a [i,j] ='0' then

mat2:=true

mat2:=fulse

end

program matriza;

const

n=?

a:array[1..n,1..n]of integer

הצהרות משתנים וכו'..

begin

matriza1:=mat1(a);

mateiza2:=mat2(a)

if (matriza1=true) and (matriza2=true) then

writeln('a matriza kmo sbikasta')d

else

writeln('a matriza lo kmo arzita;)a

end



__________________
"אלוהים נתן לאדם שתי אזניים ופה אחד כדי שיקשיב יותר וידבר פחות."
א.איינשטין
חזרה לתחילת העמוד הצג את כרטיס החבר של BA%P חפש הודעות אחרות של BA%P
 
javaboy
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 26 November 2007 בשעה 17:13 | IP רשוּם
ציטוט javaboy

אנסה להבין למרות שלא ממש מובן כאן

אבל תודה רבה

חזרה לתחילת העמוד הצג את כרטיס החבר של javaboy חפש הודעות אחרות של javaboy בקר בדף הבית של javaboy
 
javaboy
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 29 November 2007 בשעה 17:49 | IP רשוּם
ציטוט javaboy

javaboy כתב:

אנסה להבין למרות שלא ממש מובן כאן

אבל תודה רבה

טוב לא ממש הצלחתי להבין

מישהו יכול להעביר את זה לשפת java?

חזרה לתחילת העמוד הצג את כרטיס החבר של javaboy חפש הודעות אחרות של javaboy בקר בדף הבית של javaboy
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה