Penambahan Titik atau Koma pada Angka di C++, C#, PHP, dan VB.NET
Assalamu'alaikum Wr. Wb.
Beberapa minggu terakhir ane jadi jarang posting di blog. Maklum hari libur jadi suka main game sampe mabok
Oiya, di postingan kali ini ane mau share trik sederhana untuk memformat angka (menambahkan titik/koma di angka).
Trik ini biasanya digunakan untuk memformat angka menjadi terformat seperti matauang. contohnya kek 1000000 jadi 1.000.000. Langsung saja disimak
Khusus pengguna Visual Studio atau Visual C++, bisa pake fungsi berikut (tanpa
Penggunaannya tinggal dipanggil nama fungsinya yang diatas.
Output
jika ingin menambahkan RP pada awalannya tinggal ganti
Mudah kan?
Nah untuk fungsi di C#, PHP, dan VB.NET mungkin sudah cukup mudah dimengerti tanpa ane jelasin lagi kek C++ diatas dan tanpa dipake-in fungsi lagi
Ada juga cara lain yaitu menggunakan
Output
*Kode C# diatas juga dapat digunakan pada bahasa pemrograman JAVA.
Output dari kode diatas adalah
Untuk referensi pembelajaran
Untuk yang masih mau snippet dari kode-kode diatas bisa didownload disini.
Sekian dulu. Semoga bermanfaat
Silahkan tinggalkan komentar di bawah jika ada pertanyaan, feedback, atau penambahan kode
Beberapa minggu terakhir ane jadi jarang posting di blog. Maklum hari libur jadi suka main game sampe mabok
Oiya, di postingan kali ini ane mau share trik sederhana untuk memformat angka (menambahkan titik/koma di angka).
Trik ini biasanya digunakan untuk memformat angka menjadi terformat seperti matauang. contohnya kek 1000000 jadi 1.000.000. Langsung saja disimak
C++
Kode C++ berikut ane buat seadanya pakestringstream
untuk ganti variabel angka (integer) jadi string biar jalan di Dev C++.
string formatAngka(int angka, string perantara = ".") { stringstream ss; ss << angka; string output = ss.str(); int inspost = output.length() - 3; while (inspost > 0) { output.insert(inspost, perantara); inspost -= 3; } return output; }Untuk fungsi yang diatas, header yang dibutuhkan adalah
#include "sstream"
dan #include "string"
.Khusus pengguna Visual Studio atau Visual C++, bisa pake fungsi berikut (tanpa
stringstream
).
string formatAngka(int angka, string perantara = ".") {
string output = to_string(angka);
int inspost = output.length() - 3;
while (inspost > 0) {
output.insert(inspost, perantara);
inspost -= 3;
}
return output;
}
Penggunaannya tinggal dipanggil nama fungsinya yang diatas.
formatAngka(angka);
// contoh
cout << formatAngka(100000);
Output
jika ingin menambahkan RP pada awalannya tinggal ganti
return output;
jadi return "Rp " + output;
. Atau panggilnya seperti ini cout << "Rp " << formatAngka(100000);
.Mudah kan?
Nah untuk fungsi di C#, PHP, dan VB.NET mungkin sudah cukup mudah dimengerti tanpa ane jelasin lagi kek C++ diatas dan tanpa dipake-in fungsi lagi
C#
Untuk C# caranya sangat mudah. Tinggal menggunakanToString()
(ToString(string format);
) aja. Berikut adalah contohnya, tinggal diletakin didalam blok fungsi utama.
// contoh
Console.WriteLine((100000000).ToString("n0"));
// atau
Console.Write((100000000).ToString("#,##0"));
Dari kedua kode diatas hasilnya sama, yaitu 100.000
. Untuk nambahin RP tinggal diganti kek gini
// contoh pake RP
Console.WriteLine("Rp " + (100000000).ToString("n0"));
// atau
Console.Write("Rp " + (100000000).ToString("#,##0"));
Ada juga cara lain yaitu menggunakan
String.Format(string format, object arg0)
. Yang ini jauh lebih keren
Console.WriteLine(String.Format("{0:n}", 10000));
/*
output dari kode diatas : 10.000,00
*/
Console.WriteLine(String.Format("{0:n0}", 10000)); // atau Console.WriteLine(String.Format("{0:#,##0}", 10000));
/*
output dari kode diatas : 10.000
*/
Maksud dari n
pada tiap format dalam kode diatas adalah Number atau Angka (tipe Integer). Yang mau mengeksplore String.Format(string format, object arg0)
lebih dalam bisa tes format selain n
, seperti c (Currency), d (Decimal), e (Scientific), f (Fixed point), g (General, atau default), n (Number), r (Percent), p (Round-trip), dan x(Hexadecimal).
String s = String.Format("(C) Currency: . . . . . . . . {0:C}\n" +
"(D) Decimal:. . . . . . . . . {0:D}\n" +
"(E) Scientific: . . . . . . . {1:E}\n" +
"(F) Fixed point:. . . . . . . {1:F}\n" +
"(G) General:. . . . . . . . . {0:G}\n" +
" (default):. . . . . . . . {0} (default = 'G')\n" +
"(N) Number: . . . . . . . . . {0:N}\n" +
"(P) Percent:. . . . . . . . . {1:P}\n" +
"(R) Round-trip: . . . . . . . {1:R}\n" +
"(X) Hexadecimal:. . . . . . . {0:X}\n",
100000, 100000.00F);
Console.WriteLine(s);
Output
*Kode C# diatas juga dapat digunakan pada bahasa pemrograman JAVA.
PHP
Untuk PHP malah lebih mudah. Sudah tersedia fungsinumber_format()
(PHP 4.* dan 5.* keatas). Berikut adalah kodenya.
<?php
print "RP ".number_format(1000000);
?>
Output dari kode diatas adalah
RP 1,000,000
. Atau jika ingin separator angkanya adalah titik (.) bisa ditambahkan argumen di parameter fungsi number_format()
.
<?php
//number_format(angka, angka_dibelakang, separator_angka_dibelakang,separator_angka)
print "RP ".number_format(1000000, 0, ',', '.');
/*
output: RP 1.000.000
*/
print "\n";
print "RP ".number_format(1000000, 2, ',', '.');
/*
output: RP 1.000.000,00
*/
print "\n";
print "RP ".number_format(1000000, 2, '-', '.');
/*
output: RP 1.000.000-00
*/
?>
Untuk referensi pembelajaran
number_format()
yang lebih lengkap bisa dicek disini.
VB.NET
Untuk yang VB.NET kodenya mirip dengan kode C# diatas, tinggal dihilangin semi-colon (;) nya (titik koma), jadi gausah ane jelasin panjang lebar lagi
Console.WriteLine((100000000).ToString("n0"))
Console.WriteLine((100000000).ToString("#,##0"))
Console.WriteLine(vbNewLine)
' contoh pake RP
Console.WriteLine("Rp " + (100000000).ToString("n0"))
Console.WriteLine("Rp " + (100000000).ToString("#,##0"))
Untuk yang masih mau snippet dari kode-kode diatas bisa didownload disini.
Sekian dulu. Semoga bermanfaat
Silahkan tinggalkan komentar di bawah jika ada pertanyaan, feedback, atau penambahan kode
0 komentar :
Iklan
Formulir Kontak
Popular Posts
-
Assalamu'alaikum Wr. Wb. Beberapa hari ini ane lagi sibuk dengan tugas (maklum anak kuliahan :D haha) dengan C++. Di program C++ te...
-
Assalamu'alaikum Wr. Wb. Beberapa minggu terakhir ane jadi jarang posting di blog. Maklum hari libur jadi suka main game sampe...
-
Assalamu'alaikum Wr. Wb. Lama gak corat coret di blog. hue :sorry Postingan ini mungkin hanya sebagai selingan pengisi blog yang ko...
-
Assalamu'alaikum Wr. Wb. Jumpa lagi :cool di postingan kali ini ane bakal ngasih tutorial sederhana buat mengganti atau menghilangk...
-
Assalamu'alaikum Wr. Wb. Dikesempatan yang berbahagia ini ane mau share trit design terbaru ane. Silahkan langsung saja di sedo...
-
Assalamu'alaikum Wr. Wb. Kali ini ane mau rilis tool sederhana buat indent kode C dan C++. Tool ini dikhususkan buat pengguna Synta...
-
بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم Di postingan kali ini ane mau berbagi snippet sederhana di delphi untuk memutar file...
-
بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم Hi lama tak jumpa. Beberapa bulan terakhir banyak sibukan sama tugas besar, lapor...
-
بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم Ada sebuah trik pada Windows yang bisa menampilkan pesan status disaat Windows melakukan...
-
Assalamu'alaikum Wr. Wb. Berhubungan tiap online di komputer ane tidak pernah lepas dengan proxy, jadi kali ini ane mau ngasih in...
Angki © 2015 - 2017. Diberdayakan oleh Blogger.
Posting Komentar