DILARANG MEROKOK RUANG BLOG INI BER AC

Rabu, 13 April 2011

program gerbang logika

LISTING PROGRAM

#include (stdio.h)

#include (conio.h)

void main () {

int a,b,ch;

char user;

do {

do {

clrscr();

printf ("\nMasukkan angka 1=Benar atau 0=Salah");

printf ("\nMasukkan angka pertama : ");

scanf ("%d",&a);

printf ("Masukkan angka kedua : ");

scanf ("%d",&b); }

while (!(((a==1)||(a==0))&&((b==1)||(b==0))));

printf ("\nPilih gerbang logika anda \n\t1. AND\n\t2. OR\n\t3. NAND\n\t4. NOR\n\t5. XOR\n\t6. XNOR");

printf ("\n\nAnda memilih : ");

scanf ("%d",&ch);

switch (ch) {

case 1: {

if (a==1&&b==1) {

printf ("Hasil = 1"); }

else

printf ("Hasil = 0");

break;

}

case 2: {

if (a==0&&b==0) {

printf ("Hasil = 0"); }

else

printf ("Hasil = 1");

break;

}

case 3: {

if (a==1&&b==1) {

printf ("Hasil = 0"); }

else

printf ("Hasil = 1");

break;

}

case 4: {

if (a==0&&b==0) {

printf ("Hasil = 1"); }

else

printf ("Hasil = 0");

break;

}

case 5: {

if ((a==1&&b==1)||(a==0&&b==0)) {

printf ("Hasil = 0"); }

else

printf ("Hasil = 1");

break;

}

case 6:{

if ((a==1&&b==1)||(a==0&&b==0)) {

printf ("Hasil = 1"); }

else

printf ("Hasil = 0");

break;

}

}

getch();

printf ("\n\nApakah anda ingin mengulang ? : ");

fflush(stdin);

scanf("%c",&user);}

while ((user=='y')||(user=='Y'));

}


LOGIKA

#include(stdio.h)

“Fungsi ini memiliki arti akan mengambil fungsi-fungsi yang terdapat pada library standar IO, diantaranya clrscr(), printf(), scanf().”
#include (conio.h)
“Fungsi ini memiliki pengaruh dalam tampilan layer, seperti clrscr(), textcolor(), textbackground().”

“Perintah diatas merupakan predecessor directive #include yang merupakan protype dari sebuah fungsi seperti scanf dan printf . Prototype fungsi printf() dan scanf() terdapat pada file judul (header file) stdio (extension file .h menyatakan suatu header file).”

  • void main (){
    int a,b,ch;

“Printah diatas merupakan suatu statement untuk mendeklarasikan type data dalam keadaan void dimana type data disini berupa integer yang mewakili variabel a,b dan ch .”

  • char user;

Perintah diatas menjelaskan bahwa variabel yang digunakan(user) merupakan variabel yang berkarakter


  • do
    {

“dalam perintah do diatas , printah ini digunakan untuk melakukan suatu perintah.”

  • clrscr();

“perintah diatas digunakan untuk membersihkan layar/menghapus layar.”

· printf("masukkan bilangan binary \n");

“Fungsi ini terdapat dalam library stdio.h yang digunakan untuk menampilkan ke layar baik tipe string maupun placeholders. Sehingga kata-kata yang kita masukkan akan tercetak pada layer, pada saat kita mengoperasikannya. Pencetakan kata-kata tersebut diapit oleh (“ ”). Disini kita mengetik masukkan bilangan binary , maka pada output program akan muncul ‘masukkan bilangan binary’.”

  • scanf("\n%d\n%d",&a,&b);

“perintah ini digunakan untuk memasukkan data dari keyboard. Tanda %d merupakan bahwa program akan membaca nilai desimal.”

· while (!(((a==1)||(a==0))&&((b==1)||(b==0))));

printf ("\nPilih gerbang logika anda \n\t1. AND\n\t2. OR\n\t3. NAND\n\t4. NOR\n\t5. XOR\n\t6. XNOR");

“ perintah diatas digunakan untuk mencetak sebuah optional pada output program. Dimana dalam output akan mencetak yang tampilannya :

1. AND

2. OR

3. NAND

4. NOR.”

5. XOR

6. XNOR

· fflush(stdin);

“Jika terdapat beberapa proses input (memasukkan data) sekaligus, maka sebaiknya ditambahkan fungsi fflush(stdin); setelah fungsi scanf(). Fungsi fflush(stdin) berfungsi menghapus buffer di dalam alat I/O.”


scanf("%d",&ch);
switch(ch)
{

  • case 1:
    {
    if (a==1&&b==1)
    {
    printf("hasil=1");
    }
    else
    printf("hasil=0");
    break;
    }

“perintah Case diatas Merupakan suatu keputusan yang bila tidak ada perulangan yang terpenuhi maka keputusan ini yang akan tercetak. Jadi, jika a dan b= 1 dan disana ada symbol && dimana merupakan penggunaan logika AND yang membandingkan logika hasil dari operator-operator hubungan., maka program akan mencetak hasil=1 , tetapi jika tidak terpenuhi,maka program akan mencetak hasil=0.”

  • case 2:
    {
    if (a==1||b==1)
    {
    printf("hasil=1");
    }
    else
    printf("hasil=0");
    break;
    }

“dalam case yang ke 2 ini sama saja halnya dengan case 1 , tetapi jika a dan sama dengan 1 , dan disana terdapat symbol || dimana merupakan penggunaan logika OR maka akan mencetak hasil=1 dan sebaliknya jika a dan b tidak terpenuhi , progam akan mencetak hasil=0.”

· case 3:
{
if (a==1&&b==1)
{
printf("hasil=0");
}
else
printf("hasil=1");
break;
}

“dalam case yang ketiga ini merupakan hasil kebalikan dari case 1, dimana jika a dan b =1 dan disana terdapat penggunaan logika AND , tetapi dikarenakan ini merupakan optional penggunaan logika NAND atau negative/kebalikan dari AND , maka program akan mencetak hasil = 0 dan begitu juga sebaliknya.”

  • case 4:
    {
    if (a==1||b==1)
    {
    printf("hasil=0");
    }
    else
    printf("hasil=1");
    break;
    }

“dalam case 4 merupakan perintah NOR dimana negative/kebalikan dari OR atau case yang ke 2 .”

· case 5: {

if ((a==1&&b==1)||(a==0&&b==0)) {

printf ("Hasil = 0"); }

else

printf ("Hasil = 1");

break;

}

Merupakan suatu keputusan yang bila tidak ada perulangan yang terpenuhi maka keputusan ini yang akan tercetak. Merupakan sebuah pernyataan jika a bernilai 1 dan b bernilai 1 dan juga a bernilai 0 dan b bernilai 0 maka program dapat berlanjut ke statement selanjutnya .

· case 6:{

if ((a==1&&b==1)||(a==0&&b==0)) {

printf ("Hasil = 1"); }

else

printf ("Hasil = 0");

break;

}

  • getch();

“Fungsi ini terdapat dalam tampilan layar conio.h, yang berguna untuk mengembalikan satu karakter dari buffer keyboard serta karakter tidak ditampilkan di layar monitor (no echo). Fungsi getch() tidak menunggu sampai ENTER dan cocok untuk membuat password.”

· printf("\n apakah anda ingin mengulangi : \n");
fflush (stdin);
scanf ("%c",&user);
}
while((user=='y')||(user=='t'));

“perintah diatas adalah sebuah optional, program akan mencetak “apakah anda ingin mengulangi : “ ,jika kita ingin mengulangi program diatas maka kita tinggal mengetik huruf y , dan jika tidak , tinggal mengetik huruf t , dikarenakan disana terdapat syntax while , while ini merupakan sebuah perintah , sebagaimana halnya if dan else.”

Tidak ada komentar:

Posting Komentar

 

MOHON MAAF BILA ADA YANG KURANG BERKENAN