Sayfayı Yazdır | Pencereyi Kapat

Kalansız Bölme işlemi?

Nereden Yazdırıldığı: C#nedir?com
Kategori: C# / .NET
Forum Adı: C#
Forum Tanımlaması: .NET Platformunun gözde dili
URL: http://www.csharpnedir.com/forum2/forum_posts.asp?TID=52685
Tarih: 17 Nisan 2014 Saat 03:49
Program Versiyonu: Web Wiz Forums 8.03 - http://www.webwizforums.com


Konu: Kalansız Bölme işlemi?
Mesajı Yazan: Muzom
Konu: Kalansız Bölme işlemi?
Mesaj Tarihi: 17 Ocak 2013 Saat 12:35
Merhaba Arkadaşlar,

Şu anda yapdıgım programda 2 adet rasgele sayıyı gösterip bunları bölebiliyorum , fakat çıkan sonuç kalanlı yada kalansız olabiliyor. Ör: 3/2 = 1,5 çıkıyor.

Ben bunu ortadan kaldırmak istiyorum yani çıkan sonuç kalansız tam sayı olmalı ve bu sayıları rasgele seçmem gerekiyor?

Herhangi bir mantıgı olan var mı?



Cevaplar:
Mesajı Yazan: ibrahimA
Mesaj Tarihi: 17 Ocak 2013 Saat 13:05
aşağıdaki link i incele çözüm bulacaksın.

http://www.csharptr.com/c-system-math-sinifi-ve-metotlarivideo


Mesajı Yazan: Muzom
Mesaj Tarihi: 17 Ocak 2013 Saat 13:25
Sanırım yanlış anlaşılma var. Benim istedigim tam sayının çıkması virgülsüz sayılar sonuç olarak gösterilecek. Yani 3/2 diye bir işlem yapmaması gerekiyor çünkü sonucu kalanlı bu sayının.


Mesajı Yazan: ilhan99
Mesaj Tarihi: 17 Ocak 2013 Saat 13:41
int Sayi1 = 3;
int Sayi2 = 2;
if ((Sayi1 % Sayi2) == 0)
   MessageBox.Show("Tam Bölünüyor;
else
   MessageBox.Show("Bölünmüyor");


Mesajı Yazan: Muzom
Mesaj Tarihi: 17 Ocak 2013 Saat 14:22
Tamam fakat burada sayıları siz belirlediniz. Örnek olarak toplama işlemi:

string sayi1 = "1000000000";
               string sayi2 = "9999999999";
               string sub1 = sayi1.Substring(0, basamakim);
               string sub2 = sayi2.Substring(0, basamakim);
               Random numbers = new Random();
               deger = numbers.Next(Convert.ToInt32(sub1), Convert.ToInt32(sub2));
               geneltoplam = geneltoplam + Convert.ToInt32(deger);



Yukarıda toplama işlemini yapılmış durumda. Rasgele sayıları topluyorum. Benim Bölme işleminde istedigim yine bu şekilde 2 Rasgele sayının çıkan sonucu kusursuz olması.


Mesajı Yazan: ibrahimA
Mesaj Tarihi: 17 Ocak 2013 Saat 14:49
bölme işlemi yaptırdığında çıkan sonucun değerini örnegin deger degişkenini @ilhan99 arkadaşımın gösterdiği gibi mod alma işlemi ile buldurabilirsin.


Mesajı Yazan: Muzom
Mesaj Tarihi: 17 Ocak 2013 Saat 14:58
Mantıgı anlamadınız sanırım.

Örnegin:
Ben bir program istiyorum açdıgımda bir buton vede birde radiobuton olsun. Radiobutonların birisinde kalanlı sonuç diğerindede kalansız sonuç diye seçenek olsun. Ben butona tıkladıgımda bana rasgele 2 rakam göstersin ve radio butonu ne seçili ise sonucumda o olsun.Kalanlı ise kalanlı sonuc gözüksün kalansız ise kalansız sonuç gözksüz.

Yani radio butonunu check yapacak önce sonrada kalansız isteniyorsa öyle bir sayı türetmeliyimki sonucumda kalansız olsun.


Mesajı Yazan: ilhan99
Mesaj Tarihi: 17 Ocak 2013 Saat 14:58
Sonucta iki sayının birbirine tam bölünmesine bakmıyormusun sayıyı nasıl bulursan bul ister sabit ister random iki sayıyı bulduktan sonra yukardaki işlemi yapıp bölünüp bölünmedigine bakarsın.


Mesajı Yazan: ibrahimA
Mesaj Tarihi: 17 Ocak 2013 Saat 15:03
mantığını anlamama gibi bir durum yok. radio butonun checked özelliğine göre işlem yaptırcaksın. birinde mod aldırcan diğerinde değişkenleri double tanımlayıp mod alma işlemi yapmadan sonucu işleme sokcan.. bu kadar.


Mesajı Yazan: fsm1453
Mesaj Tarihi: 17 Ocak 2013 Saat 17:35
anlatmak istediğini kimse anlamamış bunun için iki yol var.
birincisi bir while döngüsü ile kalansız bölünecek sayılar çıkana kadar yeniden sayılar seç.
do{
int sayi1=rnd.Next();
int sayi2=rnd.Next();
double sayi = sayi1/sayi2;
}while(sayi!=Math.Floor(sayi))

ikinci yöntemde payı payda ile çarpmak yani random


int sayi1=rnd.Next();
int sayi2=rnd.Next();
double sayi = sayi1/sayi2;

if(sayi!=Math.Floor(sayi)) sayi= (sayi1*sayi2)/sayi2;

tabi ikinci yöntemde sayi ile sayi1 her zaman eşit çıkıyor :)




Mesajı Yazan: Muzom
Mesaj Tarihi: 18 Ocak 2013 Saat 13:08
fsm1453 sagol dedigin gibi yapdım oldu.



Sayfayı Yazdır | Pencereyi Kapat

Bulletin Board Software by Web Wiz Forums version 8.03 - http://www.webwizforums.com
Copyright ©2001-2006 Web Wiz Guide - http://www.webwizguide.info