Site icon IT Tutorial

C# Ta Matris İşlemleri

C# ta Matris çarpması yaparken öncellikle matrisin ilk satrında ki tüm sutunları diğer matrisin il sutunundaki tüm satırlarla çarpıp topluyoruz böylece çarpım matrisinin ilk satrı olmuş oluyor diğer satırlarda aynen bu şekilde meydana geliyor.Aşağıda hem kaynak kodu var hemde linktende indirebilirsiniz programı.Ancak bu kodu anlayabilmeniz için matrisleri bilmeniz ve bir matris çarpımının ve toplamının nasıl olduğunu bilmeniz gerekiyor yinede sorularınızı beklerim!!!

Program Aşağıdaki linktedir.

http://rapidshare.com/files/402122415/Salih_Deveci-Matris.rar.html

şifre:salihdeveci

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Matris
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

bool Matris_Al(string str, int[,] dizi)
{
string[] s;
char[] bölücüler = { ‘ ‘, ‘\r’ };
s = str.Split(bölücüler);
if (s.GetUpperBound(0) < (Convert.ToInt32(txtSatir.Text) * Convert.ToInt32(txtSutun.Text) – 1))
{
MessageBox.Show(“Matris yanlış girilmiÅŸ”);
return false;
}
int k = 0;
for (int i = 0; i < Convert.ToInt32(txtSatir.Text); i++)
{
for (int j = 0; j < Convert.ToInt32(txtSutun.Text); j++)
{
dizi[i, j] = int.Parse(s[k]);
k++;
}
}
return true;
}

private void btnTopla_Click(object sender, EventArgs e)
{
int x = Convert.ToInt32(txtSatir.Text);
int y = Convert.ToInt32(txtSutun.Text);
int[,] a = new int[x, y];
int[,] b = new int[x, y];
int[,] c = new int[x, y];

Matris_Al(txtMatrisA.Text, a);
Matris_Al(txtMatrisB.Text, b);

label3.Text = “A + B matrisi : “;
txtSonuc.Text = ” “;
for (int i = 0; i < x; i++)
{
for (int j = 0; i < y; j++)
{
c[i, j] = a[i, j] + b[i, j];
txtSonuc.Text = txtSonuc.Text + ” ” + c[i, j].ToString();
}
txtSonuc.Text = txtSonuc.Text + “\r\n”;
}
}

private void btnCarp_Click(object sender, EventArgs e)
{
int x = Convert.ToInt32(txtSatir.Text);
int y = Convert.ToInt32(txtSutun.Text);
int[,] a = new int[x, y];
int[,] b = new int[x, y];
int[,] c = new int[x, y];
int s = 0; ;

Matris_Al(txtMatrisA.Text, a);
Matris_Al(txtMatrisB.Text, b);

for (int i = 0; i < x; i++)
{
for (int j = 0; j < y; j++)
{
s = 0;
for (int k = 0; k < x; k++)
{
s = s + a[i, k] * b[k, i];
}
c[i, j] = s;
}
}
for (int i = 0; i < x; i++)
{
for (int j = 0; j < y; j++)
{
txtSonuc.Text = txtSonuc.Text + ” ” + c[i, j].ToString();
}
txtSonuc.Text += “\r\n”;
}
}

private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show(“Matrisleri elemanlar arasında birer boÅŸluk olacak ÅŸekilde yazın\r\n” +
“Satırlar arasında enter’ e basınız…”);
}
}
}

 

Oracle Exadata SQL Server Goldengate Weblogic EBS ve Linux konusunda aşağıdaki konularda 7×24 Uzman Danışmanlara yada Eğitimlere mi
İhtiyacınız var mehmet.deveci@gridgroup.com.tr adresine mail atarak Bizimle iletişime geçebilirsiniz.

– Oracle Veritabanı Danışmanlığı
– Oracle Veritabanı Bakım ve Destek
– Exadata Danışmanlığı
– Exadata Bakım ve Destek
– SQL Server Veritabanı Danışmanlığı
– SQL Server Veritabanı Bakım ve Destek
– Goldengate Danışmanlığı
– Goldengate Bakım ve Destek
– Linux Danışmanlığı
– Linux Bakım ve Destek
– Oracle EBS Danışmanlığı
– Oracle EBS Bakım ve Destek
– Weblogic Danışmanlığı
– Weblogic Bakım ve Destek
– Oracle Veritabanı Eğitimleri
– Oracle VM Server Danışmanlığı
– Oracle VM Server Bakım ve Destek
– Oracle EPPM Danışmanlığı
– Oracle EPPM Bakım ve Destek
– Oracle Primavera Danışmanlığı
– Oracle Primavera Bakım ve Destek
– Oracle Eğitimleri
– SQL Server Eğitimleri
– Goldengate Eğitimleri
– Exadata Eğitimleri
– Linux Eğitimleri
– Oracle EBS Eğitimleri
– Oracle VM Server Eğitimleri
– Weblogic Eğitimleri
– Oracle EPPM Eğitimleri
– Oracle Primavera Eğitimleri

Exit mobile version