Contoh soal Pemrograman Struc dan Array
1. Dengan menggunakan 2 variable (today dan yesterday) bertipe struc , temukan tanggal untuk variable yesterday . isilah variable today dengan tanggal hari ini .Keterangan:
Berikan pengecekan untuk awal bulan sehingga yesterday adalah bulan sebelumnya.
Berikan pengecekan untuk awal tahun sehingga yesterday adalah 31 Desember tahun sebelumnya.
Berikan pengecekan untuk tahun kabisat
Tahun kabisat adalah
-Kelipatan 4, tapi bukan kelipatan 100
- Kelipatan 100 yang juga merupakan kelipatan 400
Sehinggan jika today(Hari ini) adalah 1 Maret maka Yesterday sesuai jika kabisat maka 29 Februari, Jika bukan kabisat maka 28 februari.
kode
#include <stdio.h>
struct date{
short dd,mm,yy;
};
void getYesterdayDate(struct date *d){
if(d->dd==1){
if(d->mm==4||d->mm==6||d->mm==9||d->mm==11){
d->dd=31;
d->mm--;
}
else if(d->mm==3){
if((d->yy%4)==0) d->dd=29;
else d->dd=28;
d->mm--;
}
else if(d->mm==1){
d->dd=31;
d->yy--;
}
else if(d->mm==2){
d->dd=31;
d->mm--;
}
else{
d->dd=30;
d->mm--;
}
}
else{
d->dd--;
}
}
int main(){
struct date dt;
printf("Masukkan Tanggal Format dd-mm-yyyy : ");
scanf("%d-%d-%d",&dt.dd,&dt.mm,&dt.yy);
printf("Tanggal yang dimasukkan: ");
printf("%02d-%02d-%02d\n",dt.dd,dt.mm,dt.yy);
getYesterdayDate(&dt);
printf("Tanggal Kemaren Adalah: ");
printf("%02d-%02d-%02d\n",dt.dd,dt.mm,dt.yy);
return 0;
}
hasil
EmoticonEmoticon