Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => Visual C# => Konuyu başlatan: mir_as82 - 14 Aralık 2019, 16:24:08

Başlık: Double to string
Gönderen: mir_as82 - 14 Aralık 2019, 16:24:08
Noktadan sonra sabit uzunlukta olmayan değerler için,
Örneğin
12345.0
12345.000
123.1
123445.12345
Gibi sayılarda noktadan sonraki rakamları kaybetmeden nasıl strine çeviririm?
Başlık: Ynt: Double to string
Gönderen: semihel - 14 Aralık 2019, 17:28:46
string ifadeye dönüştürme işlemini şu şekilde yapabilirsin örneğin, char string[10]; ve ardından sprintf(string,".5f",float_deger); .5f demek float değerin virgülden sonra 5 basamak al demek.
Başlık: Ynt: Double to string
Gönderen: OptimusPrime - 14 Aralık 2019, 18:26:05
Sprintf
Başlık: Ynt: Double to string
Gönderen: HAKKITANIR - 14 Aralık 2019, 18:26:11
atama yapmadan önce atanacak değişkenin önüne (float) veya (double) yada (strine) yazımlarını bir deneseniz belki olabiliyordur. parantez içinde hangi tipde atanacağına yarıyor gibi bir şey vardı.
Başlık: Ynt: Double to string
Gönderen: mir_as82 - 14 Aralık 2019, 18:54:46
Benim atama yapmada sorunum yok
Benim derdim değişken uzunlukta virgülden sonra 0 a sahip değişkenlerin stringe çevrilirken en fazla 6 haneye kadar olan sıfırlarını muhafaza etmek
Maksimum 6 hane almayı kabul edelim, virgülden sonrası için
Yani:
123.0=>"123.0"
123.000=>"123.000"
123.000000=>"123.000000"
123.000000000000="123.000000"
Ayrıca dili belirtmemişim
C# ile yapmak istiyorum.
Başlık: Ynt: Double to string
Gönderen: HAKKITANIR - 15 Aralık 2019, 00:03:45
C# hiç bilmiyorum.

float olarak denemişsinizdir herhalde değişkeni ilk tanımlarken.
şöyle bir şey deneseniz;

double X = 0.000000; veya float X = 0.000000;
string Y = "a";
.
// X içeriği programda değişir.
.
Y = (double) X;
Y = (float) X;
 
aklıma birde değişkeni sabit bir altı hane virgüllü bir sayıyla and or gibi işlemlere tabi tutmak gibi birşeyler geliyor ama;
aması sadece geliyor. ötesi çıkmıyor. matematiksel bir şeyle muhakkak yapılır herhalde. matematik uzmanı ilgi alanına girebilir belki konu.




 
Başlık: Ynt: Double to string
Gönderen: Gediz1337 - 15 Aralık 2019, 13:43:20
Round-trip format stringi (https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings#the-round-trip-r-format-specifier) kullanabilirsiniz. Performans endişeniz varsa, double değerler kullanırken "R" yerine "G17" yazmanız daha hızlı olabilir.

double raw = 0.0123456789;
string str = raw.ToString("G17");

double reparsed = double.Parse(str);

Console.WriteLine($"data:\t\t{raw}");
Console.WriteLine($"string:\t\t{str}");
Console.WriteLine($"after parse:\t{reparsed}");

Çıktı:
data:           0.0123456789
string:         0.0123456789
after parse:    0.0123456789