Çarşamba Şubat 14th, 2018

C – Array 2

ile Ebubekir Sezer

Arraylere geçen ki yazımızda bahsetmiştik . Bir önceki makaleye buraya tıklayarak gidebilirsiniz. Bu yazımızda arraylerle 2 boyutlu diziler yapacağım. Arraylerin ilerleyen konularda yani fonksiyonlarla ilgili maklaleler yazdıktan sonra ikisini birlikte kullanarak örnekler paylaşacağım.

İlk olarak matris şekli oluşturacağım. Normal matematikteki gibi . Bunu yapabilmem için yazmam gereken kod dizimi aşağıdaki gibidir.

#include<stdio.h>
int main()
{
int matris[3][3] = {{1,2,3},{4,5,6},{7,8,9}};
int a,b;
// a ve b yi döngü degişkeni olarak atıyorum
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("%d ",matris[a][b]);
}
printf("\n");
// burada altsatıra geçmemin sebebi ilk 3 ünü yazdıktan sonra aşagıya geçmesi için
}
return 0;
}

Ekran Çıktısı;

1 2 3
4 5 6
7 8 9

Şimdi ise bunu kullanıcıdan sayı alarak , Kullanıcının girdiği sayıları ekrana bastıralım. Bu kez girdigimiz arayin boyutunu [3][3] değilde [3][6] yapacağım tabi siz isterseniz gene kendiniz bu kod dizimini yazarak farklı programlarda oluşturabilirsiniz.

#include<stdio.h>
int main()
{
int matris[3][5];
int a,b;
// a ve b yi döngü degişkeni olarak atıyorum
for(a=0;a<3;a++){
for(b=0;b<6;b++){
scanf("%d ",&matris[a][b]);
}
}
for(a=0;a<3;a++){
for(b=0;b<6;b++){
printf("%d ",matris[a][b]);
}
printf("\n");
}
return 0;
}

Ekran Çıktısı;

45
56
78
86
42
32
21
18
19
46
75
84
65
72
95
85
32
45
65
45 56 78 86 42 21
21 18 19 46 75 65
65 72 95 85 32 45

Bu sefer yukarıdaki yaptıgımız gibi bir program yapacağım ama bu arrayin boyutu [3][4] olacak ve kullanıcılar sayıların hepsini girdikten sonra program bu sayıları toplayacak . Sayıları ilk olarak sütunları toplayacak ve birbirine ekleye ekleye en sonda tüm sayıların toplamı olacak. Kod dizimi;

#include<stdio.h>
int main()
{
int matris[3][4];
int toplam=0;
int a,b;
// a ve b yi döngü degişkeni olarak atıyorum
for(a=0;a<3;a++){
for(b=0;b<4;b++){
scanf("%d ",&matris[a][b]);
}
}
for(a=0;a<3;a++){
for(b=0;b<4;b++){
printf("%d ",matris[a][b]);
}
printf("\n");
}
printf("\n");
// burada bir satır atladım çünkü toplamı ekrana bastıracağım.
for(b=0;b<4;b++){
// burada döngüyü ilk olarak b den başlatık çünkü üstten aşagıya toplamasını istiyorum.
for(a=0;a<3;a++){
toplam+=matris[a][b];
}
printf("%d ",toplam);
}
return 0;
}

Ekran Çıktısı;

1
2
3
4
5
6
7
8
9
10
11
12
133
1 2 3 4
5 6 7 8
9 10 11 12

15 33 54 78

Bir  sonraki makale fonkisyonlarla ilgili olacak . Şimdiye kadar yapmış olduğumuz programların fonksiyonlar yardımıyla nasıl yapılabileceğini anlatacağım. Takipte kalın. Eğer sorunuz varsa yorumlarda bildirin.