C Programlama Dili Sadece döngü kullanarak dizi oluşturma ve görüntüleme
C Programlama dili matris çalışma sorusu ve cevabını bulabilirsiniz. Sadece döngü kullanarak dizi oluşturma ve görüntülemeyi göreceksiniz.
SORU: Çıktı olarak aşağıdaki gibi 5×5 matrisi oluşturan ve matrisi görüntüleyen kodu sadece döngü kullanarak yapınız (Kullanıcıdan değer alınmayacak döngü ile yapılacak!).
1
2
3
4
5
|
1 2 3 4 5
2 3 4 5 1
3 4 5 1 2
4 5 1 2 3
5 1 2 3 4
|
CEVAP
Yöntem 1.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#include <stdio.h>
int main() {
int matris[5][5];
int sayi, i, j;
/* Matris Olusturma */
for (i = 0; i < 5; i++) {
sayi = i + 1; /* Satirin baslangi sayisi */
for (j = 0; j < 5; j++) {
if (sayi > 5)
sayi = 1;
matris[i][j] = sayi++; /*Sayiyi once atar. Sonra artırma islemi yapar */
}
}
/* Matris ekrana goruntuler */
for (i = 0; i < 5; i++) {
for (j = 0; j < 5; j++) {
printf("%d ", matris[i][j]);
}
printf("\n");
}
return 0;
}
|
Çıktı:
1
2
3
4
5
|
1 2 3 4 5
2 3 4 5 1
3 4 5 1 2
4 5 1 2 3
5 1 2 3 4
|
Yöntem 1’de main bloğu içerisinde yazdığımız döngüler sayesinde sorumuzun çözümünü yaptık. İleri seviye programlamaya geçtiğiniz zaman, c programlama dili ile kod yazarsanız eğer yukarıdaki gibi bir kod yazmayınız. İşlemlerinizi kesinlikle fonksiyonlar sayesinde ve daha dinamik bir şekilde yapınız.
Yöntem 2.
Yöntem 1’de ki kod fonksiyonel ve dinamik bir şekilde düzenlenmiştir.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#include <stdio.h>
#define x 5
#define y 5
void matrisOlustur(int matris[x][y]);
void matrisGoruntule(int matris[x][y]);
int main() {
int matris[x][y];
matrisOlustur(matris);
matrisGoruntule(matris);
return 0;
}
void matrisOlustur(int matris[x][y]) {
int sayi, i, j;
for (i = 0; i < x; i++) {
sayi = i + 1;
for (j = 0; j < y; j++) {
if (sayi > 5)
sayi = 1;
matris[i][j] = sayi++;
}
}
}
void matrisGoruntule(int matris[x][y]) {
int i, j;
for (i = 0; i < x; i++) {
for (j = 0; j < y; j++) {
printf("%d ", matris[i][j]);
}
printf("\n");
}
}
|
Çıktı:
1
2
3
4
5
|
1 2 3 4 5
2 3 4 5 1
3 4 5 1 2
4 5 1 2 3
5 1 2 3 4
|
NOT: Yukarıdaki kodlar C89 standartına uygun yazılmıştır.