Alternatif Program Untuk Menampilkan Nama Hari Pada C++

www.niguru.com
Niguru.com | Minggu, 26 Des 2021 | Pada posting sehari sebelumnya Niguru.com sudah menjelaskan mengenai cara untuk menampilkan nama hari pada bahasa pemrograman C++.

Ada cara yang lebih ringkas dalam mengkonversi sederetan angka menjadi sederetan string. Dibandingkan menggunakan instruksi Switch /Case banyak programmer berpengalaman akan memilih menggunakan array sebagai alternatif yang lebih baik.
Niguru.com akan menjelaskan caranya pada teman-teman pembaca pada posting kali ini.

Niguru.com akan mengutip script konversi menggunakan Switch yang sudah dijelaskan pada posting sebelumnya:
string d;


switch (c){
case 1:d=”Senin”;break;
case 2:d=”Selasa”;break;
case 3:d=”Rabu”;break;
case 4:d=”Kamis”;break;
case 5:d=”Jumat”;break;
case 6:d=”Sabtu”;break;
default:d=”Minggu”;
}
Variabel d akan berisi nama hari. Untuk mencetak hanya perlu script:
cout<<d;
Konversi di atas bisa digantikan dengan sebaris script berikut:
string d[]={“Senin”,”Selasa”,”Rabu”,”Kamis”,”Jumat”,”Sabtu”,”Minggu”};
www.niguru.com

 

Variabel d akan berisi seluruh nama hari (dalam bentuk array). Untuk mencetak hanya perlu script:
cout<<d[nomor_urut_array];
Contoh:
cout<<d[(c-1)];
Nomor array dimulai dari 0 untuk urutan pertama. Sehingga variabel c yang berisi angka hari dalam range 1 .. 7 harus dikurangi 1 agar berubah menjadi range 0 .. 6.

 

Berikut ini contoh program selengkapnya, termasuk instruksi untuk mencetak ke layar:

#include <iostream>
#include <ctime>
using namespace std;
int main(){
 

time_t a=time(0);
tm *b=localtime(&a);
 
int c=b->tm_wday;
string d[]={“Senin”,”Selasa”,”Rabu”,”Kamis”,”Jumat”,”Sabtu”,”Minggu”};
 

cout<<“Hari dalam angka: “<<c<<endl;
cout<<“Nama hari: “<<d[(c-1)]<<endl<<endl;
 

return 0;}

 

www.niguru.com

Hasilnya setelah dikompilasi dan ditampilkan pada DOS:

www.niguru.com

 

Demikianlah penjelasan mengenai cara pemanfaatan array sebagai pengganti switch untuk fungsi menampilkan nama hari.
Selamat mencoba .. Have a nice day 🙂

www.Niguru.com (Nino Guevara Ruwano)

Tinggalkan komentar