כותב |
|
כוכ אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 06 May 2006 בשעה 22:18 | | IP רשוּם
|
|
|
|
מישהו יכול לעזור לי
כתבתי תוכנה בשפת סי שקולטת מהמשתמש נתונים על 2 מטריצות אבל לא יודעת איך להגדיר התוכנה שתכפול שורה ראשונה (במטריצה 1) בעמודה ראשונה (במטריצה 2) כלומר לעשות כפל מטריצות ...
|
חזרה לתחילת העמוד |
|
|
אבידור אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 07 May 2006 בשעה 14:42 | | IP רשוּם
|
|
|
|
אני לא חושב שהבנתי כל כך.. אפשר את הקוד של התוכנית שלך?
|
חזרה לתחילת העמוד |
|
|
כוכ אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 11 May 2006 בשעה 10:53 | | IP רשוּם
|
|
|
|
הנה הקוד
קוד:
#include<stdio.h> #define n 3 void main() { int matrix1[n][n],matrix2[n][n],i,j,mult[n][n]; printf("enter 9 numbers for matrix1\n"); for(i=0;i<n;i++){ for(j=0;j<n;j++) scanf("%d",&matrix1[j]); } printf("\n"); for(i=0;i<n;i++){ for(j=0;j<n;j++) printf("%2d",matrix1[j]); printf("\n");} printf("enter 9 numbers for matrix2\n"); for(i=0;i<n;i++){ for(j=0;j<n;j++) scanf("%d",&matrix2[j]);} printf("\n"); for(i=0;i<n;i++){ for(j=0;j<n;j++) printf("%2d",matrix2[j]); printf("\n");} for(i=0;i<n;i++){ for(j=0;j<n;j++) mult[j]=(matrix1[j]*matrix2[j])+ (matrix1[j+1]*matrix2[j+1])+(matrix1[j+2]*matrix2[j+2]);} printf("%d",mult[j]); for(i=0;i<n;i++){ for(j=0;j<n;j++) printf("%2d",mult[j]); printf("\n |
|
|
");}
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 11 May 2006 בשעה 11:39 | | IP רשוּם
|
|
|
|
שים לב שבזמן המכפלה אתה יוצא מהתחום של המערך.. במקום לעבור עם J כל עד הוא קטן מ-N, אתה צריך לעבור על עוד הוא קטן מ-N-2 (אן פחות שתיים)
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
כוכו אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 11 May 2006 בשעה 12:15 | | IP רשוּם
|
|
|
|
אבל למה אן פחות שתים ??
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 11 May 2006 בשעה 13:10 | | IP רשוּם
|
|
|
|
בגלל שאתה ניגש למקום ה-J+2 בזמן הלולאה, וככה יוצא ש-J מגיע עד N-3, המקום האחרון שאתה ניגש אליו הוא N-1 (שזה בדיוק המקום האחרון במערך).
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
כוכ אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 11 May 2006 בשעה 13:44 | | IP רשוּם
|
|
|
|
ניסיתי את אן פחות 2 אבל עדין אינו עובד
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 11 May 2006 בשעה 14:14 | | IP רשוּם
|
|
|
|
אוקיי אני מניח שבקומפיילר שלך יש דיבאגר...איפה השגיאה (שורה) ?
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
כוכ אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 11 May 2006 בשעה 14:39 | | IP רשוּם
|
|
|
|
השגיאה היא בבפלט לא נותן לי את כפל המטריצות אלה מספרים שגויים
|
חזרה לתחילת העמוד |
|
|