Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 주어진 방정식 a + b =c에서 누락된 값 찾기


a + b =c 형식의 방정식이 하나 있다고 가정해 보겠습니다. 이제 a, b 또는 c의 항 중 하나가 누락되었습니다. 잃어버린 것을 찾아야 합니다.

입력이 다음과 같으면 ? + 4 =9이면 출력은 5가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 문자열에서 모든 공백을 삭제하고 (+ 및 =를 쉼표 ','로 변경)

  • elements :=쉼표로 구분된 문자열을 분할하여 요소 목록

  • 아이디:=0

  • 범위 0에서 요소 크기까지의 i에 대해

    • 요소[i]가 숫자가 아닌 경우

      • idx :=나는

      • 루프에서 나오다

  • 마지막 요소가 누락된 경우

    • 첫 번째 요소 + 두 번째 요소 반환

  • 그렇지 않으면 두 번째 요소가 누락된 경우

    • 마지막 요소 반환 - 첫 번째 요소

  • 그렇지 않으면 첫 번째 요소가 누락된 경우

    • 마지막 요소 반환 - 두 번째 요소

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

def find_missing(string):
   string = string.strip().replace(' ', '')
   string = string.replace('=',',')
   string = string.replace('+',',')
   elements = string.split(',')
   idx = 0
   for i in range(len(elements)):
      if not elements[i].isnumeric():
         idx = i
         break
   if idx == 2:
      return int(elements[0]) + int(elements[1])
   elif idx == 1:
      return int(elements[2]) - int(elements[0])
   elif idx == 0:
      return int(elements[2]) - int(elements[1])

print(find_missing('6 + 8 = ?'))
print(find_missing('? + 8 = 20'))
print(find_missing('5 + ? = 15'))

입력

'6 + 8 = ?'
'? + 8 = 20'
'5 + ? = 15'

출력

14
12
10