Ukuvelisa i-Random Float phakathi kwamanani amabini kwi-C#
Ukuvelisa amanani okudada okungaqhelekanga ngumsebenzi oqhelekileyo kwizicelo ezininzi zokucwangcisa, ngakumbi kuphuhliso lomdlalo, ukulinganisa amanani kunye nophando lwezenzululwazi. Ngokusebenzisa ulwimi lwenkqubo ye-C#, uya kufumana isakhelo esomeleleyo sokwenza kunye nokukhohlisa amanani okudada njengoko kufuneka. Eli nqaku linikezelwe ekuchazeni indlela ethe ngqo yokudala i-float engacwangciswanga phakathi kwamanani amabini athile.
Isisombululo: Isizukulwana seFloat Random phakathi kwamanani amabini kwi-C #
I-.NET Framework ibonelela ngeklasi eyakhelwe-ngaphakathi enegama elithi "Random" enokusetyenziswa ukwenza amanani angaqhelekanga. Nangona kunjalo, le klasi isebenza ngcono ngokuvelisa amanani apheleleyo. Ukuvelisa ukudada okungakhethiyo, siya kwenza uhlengahlengiso oluncinci.
ukudada okumileyo kawonke-wonke RandomFloatPhakathi (imizuzu edadayo, ukudada okukhulu)
{
Random random = entsha Random ();
uluhlu oluphindwe kabini = max - min;
isampuli kabini = random.NextDouble ();
iphindwe kabini = (isampuli * uluhlu) + min;
ukubuya (dada)kalisiwe;
}
Kule khowudi snippet, siqale siqalise umzekelo omtsha weklasi yeRandom. Emva koko, siseka uluhlu lwenani elingahleliwe njengomahluko phakathi kwamaxabiso aphezulu kunye nawona mancinane. Emva koko, sifumana i-random kabini phakathi kwe-0 kunye ne-1 (eyiyo i-NextDouble () ibonelela ngayo), yikale kuluhlu lwethu, yongeza ixabiso elincinci, kwaye uguqule ukudada.
INyathelo neNyathelo Inkcazo yeKhowudi
Masiyicalule ikhowudi ukuze siqonde ngakumbi inyathelo ngalinye ekuveliseni ukudada okungakhethiyo.
- Indlela iqala ngokubhengeza kunye nokuqalisa umzekelo omtsha weklasi yeRandom. Udidi oluqalwayo olungenamkhethe lunokwenza naliphi na inani elipheleleyo neliphindwe kabini.
- Ukubalwa koluhlu lwamanani ngaphakathi kwimida esiyifunayo emva koko kwenziwa ngokusebenzisa imin kunye nexabiso eliphezulu eligqithiselwe kwindlela.
- Emva koko siphumeza indlela ye-NextDouble () kwindlela yethu yokuguquguquka okungahleliwe. I-NextDouble () umsebenzi ngowona uvelisa "ukungakhethi" apha; ivelisa inani eliphindwe kabini elingenamkhethe elikhulu kuno okanye elilingana no-0.0 nangaphantsi kwe-1.0.
- Emva koko sikala i-random kabini phakathi kuka-0 kunye no-1 kuluhlu lwethu ngokuliphinda-phinda kuluhlu.
- Yongeza kwakhona elona xabiso lincinci ukuze ubeke uluhlu lwethu kwindawo yokuqala.
- Njengenyathelo lokugqibela, siguqulela kabini kwi-float sisebenzisa uguqulelo olucacileyo.
Ingcamango engundoqo emva kokuvelisa i-float random yavela kwikhono lokuvelisa i-doundo ephindwe kabini usebenzisa indlela eyakhelwe-ngaphakathi.
I .NET iClass Random kunye ne NextDouble() Function
Udidi lwe Random yinxalenye esisiseko ye .NET Framework, kwaye ibonakaliswe kuluhlu olubanzi lwezicelo kunye neemeko apho amaxabiso angaqhelekanga afuneka. Iza neendlela ezininzi, kodwa ukwenza ifloat yethu engaqhelekanga, sisebenzise indlela yeNextDouble. Le ndlela yenzelwe ukubuyisela inani elingenamkhethe phakathi kuka-0 no-1.
Kubalulekile ukuqaphela ukuba udidi lweRandom luvelisa amanani angeyonyani-amanani athi, ngelixa engakhethi buso, asebenze uninzi lweenjongo ngokwaneleyo. Nangona kunjalo, kwizicelo ezifuna ukungakhethi okunamandla, kunokufuneka indlela eyahlukileyo.
I-Arithmetic yeNqaku elidadayo kwi-C#
Amanani eendawo ezidadayo ayinxalenye ebalulekileyo yalo naluphi na ulwimi lokuprograma, kwaye i-C# ayahlukanga. Asetyenziswa nanini na xa sifuna ukumela amanani angengawo apheleleyo, kwaye abeziindidi ezimbini – ukudada nokuphinda kabini.
Ukuguqula ixabiso lethu eliphindwe kabini kwi-float yinkqubo elula kodwa ebalulekileyo, njengoko iqinisekisa ixabiso lethu lokugqibela likwifomathi esiyifunayo. Oku kungenxa yamanqanaba ahlukeneyo okuchaneka kunye noluhlu olunikezelwa yi-float kunye neentlobo ezimbini.
Ngoku unombono wokwenza ukudada okungakhethiyo kwi C#, lixesha lokusebenzisa olu lwazi ukuzisa ukuziphatha okuzenzekelayo kwiinkqubo zakho. Yiba yimidlalo yokulinganisa, iindlela zamanani okanye inkqubo yestochastic, ukuqonda isizukulwana esingenamkhethe siya kuba sisixhobo esinamandla kuye nawuphi na umphuhlisi.