Matrislerin Eşitliği

10 Mart 2011 by B.Selçuk ÖKSÜZ
Leave a reply »
WP Greet Box icon
Merhaba! Selcukoksuz.com adresine hoş geldiniz. Eğer yeni iseniz ve içeriğimizi takip etmek isterseniz RSS Abonesi Olabilirsiniz.
Mailinize onay mesajı gönderilecektir. Cevaplamayı unutmayınız.

Diziler konusunda en önemli örneklerden biri olan yapısı ile alakalı bir örnek uygulama paylaşacağım bugün. ilk bakışta biraz kafa karıştırabilir. Çünkü iç içe iki for döngüsü ile kurulan bir sisteme sahip. Genelde ilk for döngüsü satırları, ikinci for döngüsü ise sütunları saydırdığımız bir döngüdür.

Bu arada diziler ile alakalı bir hatırlatma yapayım. Her hangi bir dizi tanımlarken;

#DEFINE N 100
int dizi[N];

//YADA

int dizi[100];

şeklinde tanımlama yapmalısınız. kodu çalıştırılırken bellekte sizin belirttiğiniz miktarda boyut ayırmak zorundadır. Bu boyut program çalıştıktan sonra belirlenemez.

Algoritması hakkında biraz bilgi vermek gerekirse;

  • For(Sıfırdan matris satır boyutuna kadar)
    • For(Sıfırdan matris sütun boyutuna kadar)
      • dizi[satır döngüsü sayacı][sütün sayısı sayacı]

Şeklinde iki for döngüsü ile yapılmaktadır. Bu uygulamada tamamen yukarıda for döngü yapısı ile kurulmuş, kontrol yapıları ile isteklerimiz yerine getirilmiştir. Aşağıda programın kod satırları arasında detaylı açıklama mevcuttur.

Uygulama: İki matriste ki eşit değer sayısı buldurma

Amaç: Diziler, İç içe döngüler, Random Sayı üretme kavramları

Dil: C++

Program: DevC++

Kodlar:

//2 matrise random değerler atayıp, eşit eleman sayılarını veren uygulama
#include <iostream>
#include <stdlib.h>
#include <conio.h>

#define SAT 2//Satır boyutu
#define SUT 2//Sutun boyutu

void myMenu(void);

int main()
{
    int a[SAT][SUT], b[SAT][SUT];//Matris dizi tanımlamaları
    int i,j,deger=0;
    srand(time(NULL));//Random sayı üretmek için kullanılan fonksiyonumuz

    myMenu();
    printf("\tA ve B Matrisleri\n");
    for(i=0;i<SAT;i++)//Satır sayacı
    {
        for(j=0;j<SUT;j++)//A matrisi Sutun sayacı
        {
             a[i][j]=rand()%10;//Matrisin i. satır j. sutununa 0-9 aralığında random sayı atanıyor
             printf("%4d",a[i][j]);//Ekrana yazdırılıyor
        }
        printf("\t");

        for(j=0;j<SUT;j++)//B matrisi Sutun sayacı
        {
             b[i][j] = rand()%10;//Matrisin i. satır j. sutununa 0-9 aralığında random sayı atanıyor
             printf("%4d",b[i][j]);//Ekrana yazdırılıyor
        }
        printf("\n");

        for(j=0;j<SUT;j++)//i. satır j. sutunda ki iki matrisin elemanları karşılaştırılıyor
        {
             if(a[i][j] == b[i][j])//Aynı ise
             deger++;//aynı değer sayısını tutan değişken 1 artırılıyor
        }
        printf("\n");
    }
    printf("\nDizi degerlerinden %d tanesi bir biri ile aynidir.\n",deger);//Ve ekrana yazdırılıyor
    system("pause");
}

void myMenu(void)
{
    printf("\t_________________________________________________________\n\n");
	printf("\t                     blog.selcukoksuz.com                \n");
	printf("\t\t\tProgramlam 2 Dersi Uygulamalari        \n");
	printf("\t\t2 Matriste Ki Esit Eleman Sayisini Veren Uygulama    \n\n");
    printf("\t_________________________________________________________\n\n");
}

/*Bu kodlama B.Selçuk ÖKSÜZ tarafından hazırlanmıştır.
Kodlar hakkında yada  hakkında düşünce ve görüşlerinizi

http://blog.selcukoksuz.com adresi altında iletebilirsiniz.

Facebook sayfası:
http://facebook.com/TurkiyeninMuhendisleri
*/

İki matrisin eşit değer sayısını döndüren C++ uygulama dosyalarını indir.

 

Yazar Hakkında

Bilgisayarla yaşamayı bir tarz olarak benimsemiş, teknoloji ile tamamen içli dışlı bir; web tasarımcı, yazılımcı, donanımcı, blog yazarı ve bilgisayar mühendisidir.
B.Selçuk ÖKSÜZ
B.Selçuk ÖKSÜZ kullanıcısının tüm yazıları.

Arama Sorguları

  • matrise rastgele sayı atamak (37)
  • matrislerin eşitliği (17)
  • c de matris oluşturma (11)
Advertisement

Bu Yazıyı Beğendiniz Mi?

0

Bir Cevap Yazın

Sizin Yorumunuz Nedir?

%d blogcu bunu beğendi:
Gizlilik Hakları