שפת C/מערכים/תרגילים: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Atavory (שיחה | תרומות)
אין תקציר עריכה
Atavory (שיחה | תרומות)
אין תקציר עריכה
שורה 47:
==קליטת ערכי מטריצה==
 
כתבו תוכנית הקולטת ערכי מטריצה בגודל מסוים (4 על 3). לבדיקה, הדפיסו את המטריצה בשורות, כבתרגיל [[שפת C/מערכים/תרגילים#הדפסת ערכי מטריצה (מערך דו-מימדי) בשורות|הדפסת ערכי מטריצה (מערך דו-מימדי) בשורות]]. השתמשו במטריצה של מספרים שלמים.
 
{{מוסתר|פתרון|2=
שורה 130:
 
==3==
כתבו תוכנית שנתונה לה מטריצת מספרים שלמים בגודל מסוים (4 על 3), ועליה להדפיס את סכום השורות והעמודות.
כתבו תוכנית שקולטת מערך של 5 על 5, כמו בתרגיל הקודם. אחר כך היא מחשבת ומדפיסה את סכום המספרים בכל שורה ובכל עמודה, וכן באלכסון הראשי.
 
לדוגמה, אם נתונה המטריצה הבאה:
<pre style="text-align:left; direction:ltr;">
int matrix[4][3]=
{ {1,2,3} , {4,5,6} , {7,8,9} , {10, 11, 12}};
</pre>
אז התוכנית תדפיס שסכומי השורות הם 6, 15, 24, ו33, וסכומי העמודות הם 22, 26, ו30.
 
{{מוסתר|פתרון|2=
<!--לא שמתי את חישוב הסכום בתוך לולאה בשביל ההבנה-->
<div style="text-align:left; direction:ltr;">
<pre>
#include <stdio.h>
 
 
int main()
{
int amatrix[54][53],i,j;=
{ {1,2,3} , {4,5,6} , {7,8,9} , {10, 11, 12}};
int sum;
printf("Please enter 25 numbers\n");
int i, j, sum;
for(i=0;i<5;i++)
 
for(j=0;j<5;j++)
for(i = 0; i <5 4;i ++i)
scanf("%d",&a[i][j]);
{
for(i=0;i<5;i++)
sum = 0;
{
for(j =0, sum=0; j <5 3; sum+=a[i][+j],j++);
printf("The sum of row number: %d is: %d\n",i,sum);
sum += matrix[i][j];
}
for(j=0;j<5;j++)
printf("The sum of row number: %d is: %d\n", i, sum);
{
}
for (i=0, sum=0; i<5; sum+=a[i][j],i++);
{
printf("The sum of column number: %d is: %d\n",j,sum);
for(j = 0; j <5 3;j ++j)
}
{
for (i=0, sum=0; i<5; sum+=a[i][i], i++);
sum = 0;
printf("The sum of the diagonal is: %d\n",sum);
return 0;
for(i = 0; i <5 4;i ++i)
sum += matrix[i][j];
printf("The sum of column number: %d is: %d\n", j, sum);
}
}
return 0;
}
</pre>