Operator logika pada c++
13/11/2010 15:14pada 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).
- AND, bernilai benar jika semua kondisi bernilai benar.
- OR, bernilai benar jka terdapat salah satu kondisi yang bernilai benar.
- NAND, bernilai benar jika terdapat salah satu kondisi yang bernilai salah, atau sama dengan melakuakn operasi NOT pada hasil dari operasi AND.
- NOR, bernilai benar jika semua kondisi bernilai salah, atau sama dengan melakuakn operasi NOT pada hasil dari operasi AND.
- XOR, bernilai benar jika satu kondisi bernilai benar dan satu kondisi bernilai salah.
- 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:
Tags:
———
Back