עבור לתוכן

שאלה בסיסית בC++, בנוגע למטריצות - אשמח לעזרה!

Featured Replies

פורסם

אהלן חברים,

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

הגדרתי את המטריצה, אבל אני לא יודע איך להזין לתוכה את הנתונים.

הגודל של המטריצה הוא מקסימום 100 שורות ומקסימום 256 עמודות.

בכל ירידת שורה (כלומר לחיצת אנטר \n) זה אמור לרדת שורה במטריצה.

אם יש 2 אנטרים רצוף (כלומר שורה ריקה) הוא מפסיק את ההזנות.

ניסיתי איזה שעה לכתוב את זה ואני פשוט לא מצליח.

מישהו יכול לתת איזה טיפ? לכתוב משהו ולהסביר אותו?

זה מה שכתבתי:

[TABLE]

[TR]

[TD=bgcolor: #eeeeee]

char input;

int i;

int j;

char matrix;

for (i = 0; i < 3; i++)

{

for (j = 0; j < MAX_COL; j++)

{

while (input != '\n')

{ }

}

}

}

[/TD]

[/TR]

[/TABLE]

אשמח לעזרה, תודה רבה!

- - - תגובה אוחדה: - - -

הקוד בצורה יפה יותר:



char input[MAX_COL];
int i;
int j;
char matrix[MAX_ROW][MAX_COL];
for (i = 0; i < 3; i++)
{
for (j = 0; j < MAX_COL; j++)
{
while (input != '\n')
{


}
}


}
}

פורסם

אתה לא אמור לקלוט את הקלט מהמשתמש ?

פורסם
  • מחבר

כן, אבל איך אני עושה את זה?

cin.get?

cin ?

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

פורסם

מה המשמעות של השורה הזו?

while (input != '\n')

input הוא מערך. אם אתה משווה אותו לתו בודד ('n\') אז זה משווה את הערך של המערך (שהוא ערך של מצביע בזכרון) לערך של התו, שני דברים שאין קשר ביניהם.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים