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

תוכן שנמחק תוכן שנוסף
Atavory (שיחה | תרומות)
אין תקציר עריכה
Atavory (שיחה | תרומות)
אין תקציר עריכה
שורה 2:
 
{{בעבודה}}
 
==הדפסת ערכי מערך בשורה==
 
כתבו תוכנית שנתון לה מערך תווים בגודל מסוים (5), ועליה להדפיס אותו בשורה. לדוגמה, אם נתון המערך הבא:
<pre style="text-align:left; direction:ltr;">
char array[5] = {'1', '3', '5', '7', '9'};
</pre>
היא תדפיס:
<pre style="text-align:left; direction:ltr;">
1 3 5 7 9
</pre>
(רמז: השתמש ב[[שפת C/לולאות|לולאה]] כפולה, כלומר לולאה בתוך לולאה).
 
 
{{מוסתר|פתרון|2=
<div style="text-align:left; direction:ltr;"><pre>
#include <stdio.h>
 
 
int main()
{
char array[5] = {'1', '3', '5', '7', '9'};
int i;
for(i = 0; i < 5; ++i)
printf("%c ", array[i]);
return 0;
}
</pre></div>
}}
 
 
==קליטת ערכי מערך==
 
כתבו תוכנית הקולטת ערכי מערך בגודל מסוים (5). לבדיקה, הדפיסו את המערך בשורות, כבתרגיל [[שפת C/מערכים/תרגילים#הדפסת ערכי מערך בשורה|הדפסת ערכי מערך בשורה]]. השתמשו במערך של מספרים שלמים.
 
{{מוסתר|פתרון|2=
<div style="text-align:left; direction:ltr;"><pre>
#include <stdio.h>
 
 
int main()
{
int array[5];
int i;
for(i = 0; i < 5; ++i)
{
int input;
printf("Please enter element %d: ", i);
scanf("%d", &input);
array[i] = input;
}
for(i = 0; i < 4; ++i)
printf("%d ", array[i]);
return 0;
}
</pre></div>
}}
 
 
==שאילתות על ערכי מטריצה==
כתבו תוכנית שנתונה לה מטריצת תווים בגודל מסוים (4 על 3), ועליה להדפיס אותו בשורות ועמודות. הנח שהמשתמש סופר מ1, ולא מ0.
 
לדוגמה, אם נתונה המטריצה הבאה:
<pre style="text-align:left; direction:ltr;">
char matrix[4][3]=
{ {'1','2','3'} , {'4','5','6'} , {'7','8','9'} , {'a','b','c'}};
</pre>
והמשתמש בוחר בשורה 1 ועמודה 2, אז יש להדפיס '2'.
 
 
{{מוסתר|פתרון|2=
<div style="text-align:left; direction:ltr;"><pre>
#include <stdio.h>
 
 
int main()
{
char matrix[4][3]=
{ {'1','2','3'} , {'4','5','6'} , {'7','8','9'} , {'a','b','c'}};
unsigned int row, column;
printf("Please enter a row and column: ");
scanf("%d %d", &row, &column);
/* We need to decrease these variables, since C arrays are 0-based, not 1-based. */
--row;
--column;
/* Always check for access violation! */
if(row >= 4 || column >= 3)
{
printf("Illegal choice!");
return -1;
}
printf("%c\n", matrix[row][column]);
return 0;
}
</pre></div>
}}
 
 
 
==הדפסת ערכי מטריצה (מערך דו-מימדי) בשורות==
שורה 56 ⟵ 168:
int main()
{
charint matrix[4][3];
int i, j;
שורה 66 ⟵ 178:
printf("Please enter element (%d, %d): ", i, j);
scanf("%d", &input);
matrix[i][j] = input;
}
שורה 129 ⟵ 241:
}}
 
==חישוב סכומי שורות ועמודות במטריצה==
==3==
כתבו תוכנית שנתונה לה מטריצת מספרים שלמים בגודל מסוים (4 על 3), ועליה להדפיס את סכום השורות והעמודות.
 
שורה 178 ⟵ 290:
}}
 
==הדפסת ערכי מטריצה (מערך דו-מימדי) בצורה מעגלית==
==4==
כתבו תוכנית שנתוןשנתונה לה מערךמטריצה בגודל מסוים (4 על 3), ועליה להדפיס אותו בצורה מעגלית. לדוגמה, אם נתון המערך הבא:
<pre style="text-align:left; direction:ltr;">
char matrix[4][3]=