Operator logika pada c++

13/11/2010 15:14

 pada posting kali ini,, saya share  program untuk melakukan operasi logika pada c++,, operasi logika yang dibahas antara lain AND, OR, NAND(Not And), NOR(Not Or), XOR(Exclusive Or),dan XNOR(Exclusive Not Or).

  1. AND, bernilai benar jika semua kondisi bernilai benar.
  2. OR, bernilai benar jka terdapat salah satu kondisi yang bernilai benar.
  3. NAND, bernilai benar jika terdapat salah satu kondisi yang bernilai salah, atau sama dengan melakuakn operasi NOT pada hasil dari operasi AND.
  4. NOR, bernilai benar jika semua kondisi bernilai salah, atau sama dengan melakuakn operasi NOT pada hasil dari operasi AND.
  5. XOR, bernilai benar jika satu kondisi bernilai benar dan satu kondisi bernilai salah.
  6. XNOR, bernilai benar jika semua kondisi bernilai benar atau semua kondisi bernilai salah.

listing program:

#include <stdio.h>

#include <conio.h>

void main(){

int a,b,pil;

char ulang;

do{

do{

clrscr();

printf("masukan dua bilangan biner: \n");

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

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

}

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

do{

printf("\n\n pilih gerbang logika: ");

printf("\n1 = AND\n2 = OR\n3 = NAND\n4 = NOR\n5 = XOR\n6 = XNOR");

printf("\n ------------------------\n pilihan: ");

scanf("\n%d",&pil);

switch(pil){

case 1:{

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

printf("\n\n AND \n 1_satisfied");

}

else{

printf("\n\n AND \n 0_satisfied");

}

break;

}

case 2:{

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

printf("\n\n OR \n 1_satisfied");

}

else{

printf("\n\n OR \n 0_satisfied");

}

break;

}

case 3:{

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

printf("\n\n NAND \n 1_satisfied");

}

else{

printf("\n\n NAND \n 0_satisfied");

}

break;

}

case 4:{

if(!((a==1)||(b==1))){

printf("\n\n NOR \n 1_satisfied");

}

else{

printf("\n\n NOR \n 0_satisfied");

}

break;

}

case 5:{

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

printf("\n\n XOR \n 1_satisfied");

}

else{

printf("\n\n XOR \n 0_satisfied");

}

break;

}

case 6:{

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

printf("\n\n XNOR \n 1_satisfied");

}

else{

printf("\n\n XNOR \n 0_satisfied");

}

break;

}

default:{

printf("pilihan tidak tersedia");

}

}

}

while((pil<1)||(pil>6));

printf("\n ulang program?? <Y/y>: ");

fflush(stdin);

scanf("%c",&ulang);

}

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

}

output program:

 
Back

Search site

Copyright@outtaste.co.cc