Codekata #4



Codekata #4


1.質問



2.私の考え


二つのことを思い出す
1つ目は、文字列で置き換えて反転することです.
2つ目はシェアと残りの計算です

3.コード


3-1. 文字列で展開

def same_reverse(num):
    # 아래 코드를 입력해주세요.
  if num < 0 : return False
  else :
    str_num = str(num)
    if str_num == str_num[::-1] :
      return True
1.数字が負の場合、負の番号が後ろに、falseが多い
2.受け取った数字を文字列に変換して変数str numに保存する
3.str numはインデックス/スライド可能であるため、逆転可能

3-2. シェアと余剰利用

def same_reverse(num):
  
  #음수일 경우, 마이너스 부호에 의해 항상 False
  if num < 0 : return False
  
  #1~9사이의 수는 항상 True
  elif num >0 and num < 10 : return True
  
  # 그 외 두자리수 이상의 정수부터 해당 코드 실행
  else :

    #반복문 돌리면서 넣어줄 값에 대한 변수
    new_val = 0
    
    #비교할 값
    #num은 반복문에서 계속 작업해가며 숫자 자체를 줄여나갈것이기 때문에 원본 숫자가 훼손됨
    #그래서 원본숫자를 저장할 변수로 final_val 설정
    final_val = num
    
    while num>0 :
      #공식
      new_val = new_val * 10 + num % 10

      #숫자를 10으로 나눈 몫만 추출해서 계산할 것이기 때문에 // 사용
      num = num // 10
    
    #결과를 통해 얻은 new_val과 final_val을 비교하여 T/F 리턴
    if new_val == final_val : 
      return True
    else : 
      return False

4.後期


今日は夜明けまでしなくてもいいです.