Kayıtlar

matris etiketine sahip yayınlar gösteriliyor

26 : Fonksiyonda Birden Fazla Değişkeni Güncellemek

Resim
Bir fonksiyonun birden fazla değişken dönüşü olamayacağını söylemiştik. Birden fazla değişken bir dizi halinde ise nasıl kullanacağımızı da gördük. Peki bu değişkenler birbirinden ayrı tiplerde değişkenler ise nasıl güncelleyebiliriz? Şimdi bir örnek uyduracağım. Diyeceğim ki bir fonksiyonum olsun. Rastgele boyutlu bir matris üretsin. Matrisin boyutları en çok 5x5 en az 1x1 olsun. Değerler 0 ile 1 arasında olsun ve rastgele seçilsin yine. Fonksiyonda bu değerler yazdırılsın ve sonra main fonksiyonda biz de tekrar yazdırıp doğru mu alıyoruz matrisi kontrol edebilelim. Önce matrisi oluşturacak bir fonksiyon yazmam gerekiyor. Rastgele sayılarla nasıl çalışılır görmüş de olacağız bu sayede. Ancak boyutun da rastgele olması bizim için problem. Çünkü main fonksiyonunda yazdırmak istediğimizde sınırları nasıl belirleyeceğimizi bilmemiz gerekir. Bunun için de bu boyut değerlerini fonksiyondan öğrenmemiz gerekir. rastgele_matris.c #include <stdio.h> #include <time.h> #include...

21 : Matrisler

Resim
Diziler tek boyutlu olabildiği gibi birden çok boyutlu da olabilir. Her bir dizi elemanı başka bir diziyi saklıyor gibi düşünülebilir. Tek boyutlu diziler [] ile tanımlanırken iki boyutlu diziler [][] ile tanımlanır. Örnek olarak iki matrisin çarpımı örneği verilebilir. matrix.c #include <stdio.h> void carpim(int mat1[4][3], int mat2[3]); int main() { int i = 0, j = 0; int matrix1[4][3] = {{1, 1, 1}, {2, 2, 2}, {1, 1, 1}, {2, 2, 2}}; int matrix2[3] = {2, 3, 4}; printf("Matris 1 : \n"); for (i = 0; i < 4; i++) { for(j = 0; j < 3; j++) { printf("%d ", matrix1[i][j]); } printf("\n"); } printf("Matris 2 : \n"); for (i = 0; i < 3; i++) { printf("%d \n",matrix2[i]); } printf("\n"); carpim(matrix1, matrix2); } void carpim(int mat1[4...