הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 05-11-08, 21:42   # 1
Xinxy
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
הודעות: 259

Xinxy לא מחובר  

ציטוט:
נכתב במקור על ידי Jerba צפה בהודעה
רוץ פעם על השורות ופעם על העמודות ותחפש...לא כזה קשה..
יש אלכסונים גם? אם לא אז זה יחסית פשוט..
לא אין אלכסונים
ואיך לרוץ על העמודות?
  Reply With Quote
ישן 05-11-08, 22:56   # 2
SDF
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
מיקום: Negev
הודעות: 270

SDF לא מחובר  

אחריי שתסיים יש לי קוד בשבילך, נשווה.

ובנתיים:
איך רצים לפי שורות:
קוד:
int i, j;
for (i = 0; i < MATRIX_SIZE; i++)
{
 for(j = 0; j < MATRIX_SIZE; j++)
   printf("%c\t", matrix[i][j]);
 printf("\n");
}
זה כמובן מדפיס את המטריצה, אם אתה על GCC, אתה יכול לשים sleep אחריי ה printf ותראה שהוא הולך לפי שורות.
בשביל ללכת לפי עמודות, אתה צריך:
matrix[j][i]
להחליף את האינדקסים, שים לב שאתה לא חורג מגבולות מערך אם יש לך מטריצה לא ריבועית.
__________________
FreeBSD, a *nix operating system
  Reply With Quote
ישן 05-11-08, 23:13   # 3
Xinxy
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
הודעות: 259

Xinxy לא מחובר  

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

ובנתיים:
איך רצים לפי שורות:
קוד:
int i, j;
for (i = 0; i < MATRIX_SIZE; i++)
{
 for(j = 0; j < MATRIX_SIZE; j++)
   printf("&#37;c\t", matrix[i][j]);
 printf("\n");
}
זה כמובן מדפיס את המטריצה, אם אתה על GCC, אתה יכול לשים sleep אחריי ה printf ותראה שהוא הולך לפי שורות.
בשביל ללכת לפי עמודות, אתה צריך:
matrix[j][i]
להחליף את האינדקסים, שים לב שאתה לא חורג מגבולות מערך אם יש לך מטריצה לא ריבועית.
מגניב לא חשבתי על דבר כזה
מה שעשיתי היה:
קוד:
 for(i = 0; i < 5; i++)
 {
	 printf("%c ", a[0][i]);
 }
 
 printf("\n");

 for(i = 0; i < 5; i++)
 {
	 printf("%c ", a[1][i]);
 }

 printf("\n");

 for(i = 0; i < 5; i++)
 {
	 printf("%c ", a[2][i]);
 }

 printf("\n");

 for(i = 0; i < 5; i++)
 {
	 printf("%c ", a[3][i]);
 }

 printf("\n");

 for(i = 0; i < 5; i++)
 {
	 printf("%c ", a[4][i]);
 }

 printf("\n\n");
עריכה:
יש לי עוד בעיה
ביינתים עשיתי את הקוד הזה:
קוד:
#include <stdio.h>
#define ROW 4
#define COL 4
#define MATRIX_SIZE 5

int main ()
{
 char a[ROW][COL];
 int i, j;
 char forCheck[4];
 for(i = 0; i < 5; i++)
 {
	 printf("row %d: ", i + 1);
	 scanf("%s", a[i]);
 }


 for (i = 0; i < MATRIX_SIZE; i++)
 {
	for(j = 0; j < MATRIX_SIZE; j++)
	{
		printf("%c ", a[i][j]);
	}
	printf("\n");
 }
}
וכשאני מריץ אותו התוכנה VISUAL C++ אומרת לי:
Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted.
איך אפשר לסדר את זה?

עריכה שוב:
שוב אני מנסה עכשיו לעשות את הבדיקה אבל אני פשוט לא יודע איך להתחיל
חשבתי אולי לעשות בדיקה על כל אות ז"א a[0], a[1], a[2], a[3], a[4]
אבל זה יהיה מטורף אני יצתרך איזה 200 לולאות FOR נראה לי
מה אתם אומרים יש דרך יותר קצרה אולי?

Last edited by Xinxy; 05-11-08 at 23:25..
  Reply With Quote
ישן 05-11-08, 23:30   # 4
SDF
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
מיקום: Negev
הודעות: 270

SDF לא מחובר  

טעית בגדולים
char a[MATRIX_SIZE][MATRIX_SIZE]
__________________
FreeBSD, a *nix operating system
  Reply With Quote
ישן 05-11-08, 23:34   # 5
Xinxy
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
הודעות: 259

Xinxy לא מחובר  

ציטוט:
נכתב במקור על ידי SDF צפה בהודעה
טעית בגדולים
char a[MATRIX_SIZE][MATRIX_SIZE]
אופס נכון, טיפש אני :\

עריכה:
הצלחתי להגיע לדבר כזה:
קוד:
C:\C>matrix.exe
row 1: aaaaaaaaaa
row 2: zzzzzzzz
row 3: xxxxxxxxx
row 4: cccccccc
row 5: vvvvvvvv
a a a a a
z z z z z
x x x x x
c c c c c
v v v v v
your word:az
az appears 10 times
הבעיה פה היא שזה בודק כמה פעמים a מופיעה וכמה z מופיעה ואני לא יודע איך אני יעשה שאם זה ימצא את האות a אז זה יחפש אותה עם הצירוף z
זה הקוד שעשיתי:
קוד:
 for(i = 0; i < MATRIX_SIZE; i++)
 {
       for(j = 0; j < MATRIX_SIZE; j++)
       {
             for(z = 0; z < howmany + 1; z++)
             {
                   if(forCheck[z] == a[i][j])
                   {
                       ok++;
                   }
             }
             
       }
 }
למישהו יש רעיונות? :\

Last edited by Xinxy; 06-11-08 at 00:05..
  Reply With Quote
ישן 06-11-08, 00:13   # 6
SDF
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
מיקום: Negev
הודעות: 270

SDF לא מחובר  

לא ברור מכאן מה זה howmany.
ולמה הלולאה השלישית?

אני יכול לתת לך את הפתרון, השאלה אם זה מה שיעזור לך.
__________________
FreeBSD, a *nix operating system
  Reply With Quote
ישן 06-11-08, 00:15   # 7
Xinxy
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
הודעות: 259

Xinxy לא מחובר  

ציטוט:
נכתב במקור על ידי SDF צפה בהודעה
לא ברור מכאן מה זה howmany.
ולמה הלולאה השלישית?

אני יכול לתת לך את הפתרון, השאלה אם זה מה שיעזור לך.
עשיתי את howmany כדי שאני ידע כמה מילים מכיל מה שהמשתמש רשם לחיפוש במתריצה
והלולאה השלישית כדי לבדוק אם האות נמצאת - לא אני לא מצליח לחשוב על משהו אחר :\
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 14:58.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ