Answer to Question #278823 in Python for nani

Question #278823

Implement Python program for question 1. Do not write a translator. Implement the program after

converting to CNF as shown below


1
Expert's answer
2021-12-13T10:21:33-0500
operator="&|>=~"

def isOperand(c):
    return c >= 'a' and c <= 'z'

operators ="&|>=~"
def isOperator(c): #it cheak if the the given c is on the operators
 return c in operators
def dblimplique(a):
    if(a=='a = b' ):
       a='(a > b) & (b > a)'
    return a
def limplique(a):
    if(a=='a > b' ):
       a='~a | b'
    return a
def nonAouB(a):
    if(a=='~(a | b)' ):
       a='~a & ~b'
    return a
def nonAetB(a):
    if (a == '~(a & b)'):
        a = '~a | ~b'
    return a
def doublenon(a):
    if (a == '~~a'):
        a = 'a'
    return a
def doublenon(a):
    if (a == '~~a'):
        a = 'a'
    return a
def AetBouc(a):
    if (a == 'a & (b | c)'):
        a = '(a & b) | (a & c)'
    return a


def AouBetc(a):
    if (a == 'a | (b & c)'):
        a = '(a | b) & (a | c)'
    return a


def FNC():
    input_string = input("Entrer votre formule:")
    if(input_string == 'a = b'):
           return dblimplique(input_string)

    elif(input_string=='a > b'):
            return limplique(input_string)

    elif(input_string=='~(a | b)'):
            return  nonAouB(input_string)

    elif(input_string == '~(a & b)'):
            return nonAetB(input_string)

    elif(input_string =='~~a'):
            return  doublenon(input_string)
    elif(input_string =='a & (b | c)'):
        return AetBouc(input_string)
    elif(input_string=='a | (b & c)'):
        return AouBetc(input_string)
    elif(input_string=='a | b' or 'a | b | c' or 'a | b | c | d' or 'a | b | c | d'):
        return input_string
    else:
      for i in input_string:
          if(i == 'a > b' or 'c > d' or 'e > f'):
              return limplique(i)


 print(FNC())

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog
APPROVED BY CLIENTS