Complex(karmaşık) sayılar ile ilgili yardım

steki632211
14-05-2014, 19:16   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
3 mesaj
Kayıt Tarihi:Kayıt: May 2014

 

Arkadaşlar complex sayılar ile ilgili bir projem var.Bir yere kadar yaptım ama bazı yapamadığım yerler var.

Yapamadığım yerler:

-Complex sınıfı için true, false, bitwise ve mantıksal operatörler için operatör overloading metotlarını yazma

 implicit ve explicit tür dönüşümlerini Complex sınıfı için uygulama

Şuraya kadar yaptım

Complex sınıfı:

[ Tüm kodu seç ] [ Yeni Pencerede Göster ]
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace complex_sayı_tanımlama { class Complex { double reel; public double Reel { get {return reel;} set {reel = value;} } double sanal; public double Sanal { get { return sanal; } set { sanal = value; } } public Complex(double reel, double sanal) { this.reel = reel; this.sanal = sanal; } public static Complex operator +(Complex c1, Complex c2) { double sanalToplam = c1.sanal + c2.sanal; double reelToplam = c1.reel + c2.reel; Complex toplam = new Complex(reelToplam, sanalToplam); return toplam; } public static Complex operator -(Complex c1, Complex c2) { double sanalFark = c1.sanal - c2.sanal; double reelFark = c1.reel - c2.reel; return new Complex(reelFark, sanalFark); } public static Complex operator *(Complex c1, Complex c2) { double r = c1.reel * c2.reel - c1.sanal * c2.sanal; double s = c1.reel * c2.sanal + c1.sanal * c2.reel; return new Complex(r,s); } public static Complex operator /(Complex c1, Complex c2) { Complex eslenk = new Complex(c2.reel, -c2.sanal); Complex pay = c1 * eslenk; double payda = c2.reel * c2.reel + c2.sanal * c2.sanal; return new Complex(pay.reel/payda, pay.sanal / payda); } } }
Kod kısmı:
[ Tüm kodu seç ] [ Yeni Pencerede Göster ]
public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { textBox3.Text = "reel :" + complexislem("+").Reel + " sanal :" + complexislem("+").Sanal; } Complex complexislem(string s) { Complex c1 = new Complex(2, 3); Complex c2 = new Complex(4, 5); Complex c3 = new Complex(0, 0); switch (s) { case "+": c3 = c1 + c2; break; case "-": c3 = c1 - c2; break; case "*": c3 = c1 * c2; break; case "/": c3 = c1 / c2; break; } return c3; } private void button2_Click(object sender, EventArgs e) { textBox3.Text = "reel :" + complexislem("-").Reel + " sanal :" + complexislem("-").Sanal; } private void button3_Click(object sender, EventArgs e) { textBox3.Text = "reel :" + complexislem("*").Reel + " sanal :" + complexislem("*").Sanal; } private void button4_Click(object sender, EventArgs e) { textBox3.Text = "reel :" + complexislem("/").Reel + " sanal :" + complexislem("/").Sanal; } } }

fatihkral
20-05-2014, 19:18   |  #2  
Taze Üye
Teşekkür Sayısı: 0
13 mesaj
Kayıt Tarihi:Kayıt: Mar 2013

Ben daha önce böyle bir kod yazmıştım inceleyebilirsin

kompleks sayılar ile ilgili örnek kod  

Son Düzenleme: fatihkral ~ 20 Mayıs 2014 19:18
steki632211
21-05-2014, 13:05   |  #3  
OP Taze Üye
Teşekkür Sayısı: 0
3 mesaj
Kayıt Tarihi:Kayıt: May 2014

EYVALLAH