Assalamualaikum Wr. Wb.

 

Hallo sobat redaksi PENS, kembali lagi bersama saya Aditya, Nah kali ini saya akan membahas tentang Variable Struktur yang ada pada bahasa C.

Disini, TUJUAN dari materi artikel ini yakni, Untuk mempelajari penggunaan variable struktur dimana dipadukan dengan variable yang pernah dicoba sebelumnya, yaitu meliputi pointer dan array serta dipadukan dengan fungsi. Bagaimana mendeklarasi, menginisialisasi, dan mengakses dari suatu struktur juga dicoba disini.

Untuk mengetahui lebih lanjut tentang variable struktur, yuk simak TEORI-nya di bawah ini dengan cermat ya!!!

 

Suatu Variable adalah ‘penanda’ identitas yang digunakan untuk menampung suatu nilai. Nilai tersebut dapat diubah sepanjang kode program. Secara teknis, variable merujuk kepada suatu alamat di memory komputer. Setiap variable memiliki nama yang sebagai identitas untuk variable tersebut.

Sesuai dengan namanya, isi dari variable bisa berubah dari waktu ke waktu tergantung kebutuhan. Ini berbeda dari konsep konstanta  yang kita bahas dalam tutorial sebelumnya. Untuk konstanta, nilai tersebut akan tetap dan tidak bisa diubah sepanjang kode program.

Sebagai contoh, jika saya membuat program menghitung luas lingkaran, saya bisa membuat variablejari2‘ dan mengisinya dengan nilai ‘7’, kemudian di dalam kode program, saya bisa mengubah nilainya menjadi ‘8’, ’10’ atau ‘1000’. Sedangkan jika ‘jari2‘ ini dibuat sebagai konstanta, maka nilainya akan tetap ‘7’ sepanjang program dijalankan.


Aturan Penamaan Variabel dalam Bahasa C

Penamaan variable merujuk ke aturan identifier yang pernah kita bahas beberapa tutorial sebelumnya. Berikut aturan penamaan variable di dalam bahasa pemrograman C:

  • Variable bisa terdiri dari huruf, angka dan karakter underscore / garis bawah ( _ ).
  • Karakter pertama dari variable hanya boleh berupa huruf dan underscore ( _ ), tidak bisa berupa angka. Meskipun dibolehkan, sebaiknya tidak menggunakan karakter underscore sebagai awal dari variable karena bisa bentrok dengan beberapa variable settingan program.
  • Variable harus selain dari keyword. Sebagai contoh, kita tidak bisa memakai kata int sebagai nama variable, karena int merupakan keyword untuk menandakan tipe data integer.
  • Beberapa compiler bahasa C ada yang membatasi panjang variable maksimal 31 karakter. Agar lebih aman, sebaiknya tidak menulis nama variable yang lebih dari 31 karakter.

Cara Penulisan Variabel di dalam bahasa C

Ketika akan menulis variable, dalam hampir semua bahasa pemrograman terdapat 2 proses: deklarasi dan inisialisasi.

Deklarasi adalah proses untuk memberitahukan compiler bahasa C bahwa kita akan membuat sebuah variable. Bahasa C termasuk bahasa pemrograman yang menggunakan konsep strongly typed programming language, yang artinya untuk setiap variable harus ditulis akan berisi tipe data apa. Apakah itu angka bulat (integer), angka pecahan (float), huruf (char), atau yang lain.

Ketika kita ingin membuat variable, harus ditentukan dulu apa tipe data dari variable tersebut. Pembahasan mengenai tipe data di dalam bahasa C akan kita bahas dalam tutorial tersendiri, namun berikut tipe data yang sering dipakai:

  • Tipe data integer, yakni tipe data angka bulat seperti 1, 5 atau 1000. Tipe data integer ditulis dengan keyword int.
  • Tipe data float, yakni tipe data angka pecahan seperti 1.33,  5.90 atau 1000.99. Tipe data float ditulis dengan keyword float.
  • Tipe data character, yakni tipe data huruf seperti ‘A’, ‘a’, atau ‘Z’. Tipe data character ditulis dengan keyword char.

 

Dan selanjutnya, saya akan memberikan program percobaan, dimana program percobaan tersebut merupakan tugas dari materi VATUR ini, tujuan saya memberikan program percobaan pada artikel kali ini yaitu, untuk membantu sobat agar menjadi lebih mudah dalam memahami materi  di artikel ini.

 

TUGAS 1

Membuat program menggunakan struktur tanggal, yang digunakan untuk menentukan tanggal berikutnya (besok), dengan masukkan dari keyboard berupa tanggal hari ini (tanggal sekarang).

 

JAWAB

Membuat program-nya dahulu;

#include<stdio.h>
struct tgl {
int d;
int m;
int y;};
int bulann [13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
struct tgl skrg;
static char *bulan[]={
“salah”,”jnr”,”feb”,”mrt”,”apr”,”mei”,”jun”,”jul”,”ags{“,”sep”,”okt”,”nov”,”des”};
void tanggalanbesok(struct tgl bsk,int tambah)
{ bsk.d=bsk.d+tambah;
while (bsk.d>bulann[bsk.m]){
if (bsk.y%4==0)
bulann[2]=29;
else bulann[2]=28;
bsk.d=bsk.d-bulann[bsk.m];
bsk.m=bsk.m+1;
if (bsk.m>12)
{bsk.m=bsk.m-12;bsk.y=bsk.y+1;}}
printf (“\n%d-%d-%d”,bsk.d,bsk.m,bsk.y);
printf(“\n%d %s %d”,bsk.d,bulan[bsk.m],bsk.y);
}

int main()
{
printf(“Tanggal sekarang adalah “);
int tambah;
mulai:
printf (“masukan tanggal : (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(“%d %s %d”,skrg.d,bulan[skrg.m],skrg.y);
printf (“\nmasukan berapa jumlah hari berikutnya : “);
scanf(“%d”,&tambah);
tanggalanbesok(skrg,tambah);
}

 

Setelah membuat program tersebut, kemudian Build (compile current file) dan kemudian, Run program tersebut, jika programnya benar, maka hasilnya akan tampil seperti dibawah ini;

  • Facebook
  • Twitter
  • Google+
  • Pinterest

  • Facebook
  • Twitter
  • Google+
  • Pinterest

 

TUGAS 2

Membuat program untuk menentukan selisih antara dua waktu yang berbeda, dimana kedua waktu tersebut dimasukkan melalui keyboard. dengan menggunakan struktur waktu, untuk menyimpan kedua waktu tersebut. kemudian menghitung selisihnya.

 

JAWAB

Membuat program-nya dahulu;

#include<stdio.h>
struct waktu {
int d;
int m;
int j;};
struct waktu selisih(skrg,nanti)
struct waktu skrg;
struct waktu nanti;
{
struct waktu selisihnya;
if(skrg.d>nanti.d){
nanti.d=nanti.d+60;
nanti.m=nanti.m-1;}
selisihnya.d=nanti.d-skrg.d;
if(skrg.m>nanti.m){
nanti.m=nanti.m+60;
nanti.j=nanti.j-1;}
selisihnya.m=nanti.m-skrg.m;
selisihnya.j=nanti.j-skrg.j;
return(selisihnya);
}

void main()
{
struct waktu now;
struct waktu later;
struct waktu beda;
printf(“Masukan waktu sekarang j:m:d\n”);
scanf(“%d%d%d”,&now.j,&now.m,&now.d);
printf(“Masukan waktu nanti j:m:d\n”);
scanf(“%d%d%d”,&later.j,&later.m,&later.d);
beda=selisih(now,later);
printf(“Selisih waktunya\n”);
printf(“%d jam:%d menit :%d detik”,beda.j,beda.m,beda.d);
}

 

Setelah membuat program tersebut, kemudian Build (compile current file) dan kemudian, Run program tersebut, jika programnya benar, maka hasilnya akan tampil seperti dibawah ini;

  • Facebook
  • Twitter
  • Google+
  • Pinterest

  • Facebook
  • Twitter
  • Google+
  • Pinterest

 

TUGAS 3

Membuat program untuk menentukan selisih antara dua tanggal yang berbeda, dimana kedua tanggal tersebut dimasukkan melalui keyboard. dengan menggunakan struktur tanggal, untuk menyimpan kedua tanggal  tersebut. kemudian menghitung selisihnya.

 

JAWAB

Membuat program-nya dahulu;

#include<stdio.h>

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();
}

 

Setelah membuat program tersebut, kemudian Build (compile current file) dan kemudian, Run program tersebut, jika programnya benar, maka hasilnya akan tampil seperti dibawah ini;

  • Facebook
  • Twitter
  • Google+
  • Pinterest

  • Facebook
  • Twitter
  • Google+
  • Pinterest

 

Setelah program percobaan di atas dilakukan, dapat ditarik kesimpulan bahwa; suatu variable bertipe data struktur adalah dapat terdiri dari bermacam tipe variable yang ada. jadi suatu struktur dapat berisi integer, float, char, dan sebagainya.

 

UPPS!!! sekian dulu dari saya, mohon maaf jika ada salah ketik atau kesalahan dalam penulisan, saya Aditya pamit undur diri dahulu.

 

 

 

 

 

Wassalamualaikum Wr. Wb.