Assalamualaikum Warohmatullah Wabarokatuh.

berjumpa lagi dengan “WONG NDESO”

pada perjumpaan  ini kita akan membahas tentang “STRUKTUR“,

Apa itu STRUKTUR ?

Struct adalah tipe data bentukan yang berisi kumpulan variabel-variabel yang berada dalam satu nama yang sama dan memiliki kaitan satu sama lain. Berbeda dengan array hanya berupa kumpulan variabel yang bertipe data sama, struct bisa memiliki variabel-variabel yang bertipe data sama atau berbeda, bahkan bisa menyimpan variabel yang bertipe data array atau struct itu sendiri. Variabel-variabel yang menjadi anggota struct disebut dengan elemen struct.

Selanjutnya mari kita membuat program menggunakan variabel struktur.

1. Program menggunakan struktur tanggal, yang digunakan untuk menentukan tanggal berikutnya (besok), dengan memasukkan dari keyboard berupa tanggal hari ini (tanggal sekarang)

masukkan program di bawah ini

struct tanggal {
int skrng, bsok;
};

void main(){
struct tanggal tgl;
printf(“Masukkan tanggal sekarang: “);
scanf(“%d”, &tgl.skrng);

if(tgl.skrng<1 || tgl.skrng > 31)
printf(“tanggal tidak ada di kalender\n”);

else{
tgl.bsok = tgl.skrng + 1;
if (tgl.bsok == 32)
tgl.bsok = 1;
printf(“setelah tanggal %d adalah tanggal %d\n”,tgl.skrng, tgl.bsok);
}

getch();

}

Lalu, menekan ikon ‘Build and run’ untuk menjalankan program tersebut. Jika penulisan struktur program tersebut sudah benar maka program akan berjalan seperti pada gambar dibawah

  • Facebook
  • Twitter
  • Google+
  • Pinterest

2. Program untuk menentukan selisih antara dua waktu yang berbeda, dimana kedua waktu tersebut dimasukkan melalui keyboard

masukkan program berikut

struct waktu{
int jam1, menit1, jam2, menit2, jamx, jamy;
};
void main()
{
struct waktu skr;
printf(“masukkan jam ke-1 (jj:mm)= “);
scanf(“%d:%d”, &skr.jam1, &skr.menit1);
printf(“masukkan jam ke-2 (jj;mm)= “);
scanf(“%d:%d”, &skr.jam2, &skr.menit2);
skr.jamx = (skr.jam1*60+skr.menit1);
skr.jamy = (skr.jam2*60+skr.menit2);
printf(“selisihnya adalah %d menit”, skr.jamx-skr.jamy);

}

Lalu, menekan ikon ‘Build and run’ untuk menjalankan program tersebut. Jika penulisan struktur program tersebut sudah benar maka program akan berjalan seperti pada gambar dibawah

  • Facebook
  • Twitter
  • Google+
  • Pinterest

  1. Program untuk menentukan selisih antara dua taggal.

 

#include<stdio.h>

//belum fix

int main()

{

struct tgl {

int d;

int m;

int y;};

int bulann [13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

static char *bulan[]={

“salah”,”jnr”,”feb”,”mrt”,”apr”,”mei”,”jun”,”jul”,”ags”,”sep”,”okt”,”nov”,”des”};

struct tgl skrg;

struct tgl nanti;

int selisih=0;

mulai:

printf (“masukan tanggal sekarang: (dd mm yy)\n”);

scanf(“%d %d %d”,&skrg.d,&skrg.m,&skrg.y);

if(skrg.y%4==0)

bulann[2]=29;

else bulann[2]=28;

if(skrg.d>bulann[skrg.m]||skrg.m>12||skrg.m<1){

printf(“\nForamat salah ulang\n”);

goto mulai;}

printf(“\n%d %s %d”,skrg.d,bulan[skrg.m],skrg.y);

ulang:

printf (“\nmasukan tanggal nanti : (dd mm yy)\n”);

scanf(“%d %d %d”,&nanti.d,&nanti.m,&nanti.y);

if(nanti.y%4==0)

bulann[2]=29;

else bulann[2]=28;

if(nanti.d>bulann[nanti.m]||nanti.m>12||nanti.m<1){

printf(“\nForamat salah ulang\n”);

goto ulang;}

printf(“\n%d %s %d\n”,nanti.d,bulan[nanti.m],nanti.y);

 

while(skrg.d!=nanti.d||skrg.m!=nanti.m||skrg.y!=nanti.y)

{

if(skrg.y%4==0)

bulann[2]=29;

else bulann[2]=28;

skrg.d=skrg.d+1;

selisih++;

if(skrg.d>bulann[skrg.m]){

skrg.m=skrg.m+1;

skrg.d=1;}

if(skrg.m==13){

skrg.m=skrg.m-12;

skrg.y=skrg.y+1;}

}

printf(“Selisihnya adalah “);

printf(“%d hari “,selisih);

getch();

}

Hasil

 

  • Facebook
  • Twitter
  • Google+
  • Pinterest

ah sampai disini dulu pembahasan kita tentang variabel struktur, semoga bermanfaat dan sampaii jumpaa.

wasalamualaikum wr wb