ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [코드업] 파이썬 기초 100 문제 정리 [3]
    공부/Python 2023. 3. 5. 16:40

    python의 연산 

    + 덧셈  - 뺄셈  / 나눗셈 *곱셈  // 몫 % 나머지연산 

    조건1

    입력
    2개의 정수(a, b)가 공백으로 구분되어 입력된다.

    출력
    a를 b로 나눈 나머지를 출력한다.
     

    python 언어에서는 나머지 연산자(%, remainder)를 제공한다.
    a%b 와 같이 작성하면, a를 b로 나눈 나머지(remainder)를 계산해준다.

    1번
    a, b = input().split()
    rem = (int(a) % int(b))
    print(rem)
    
    2번
    a, b = input().split()
    print(int(a) % int(b))
    
    
    /*
    int(a),int(b)
    print(a%b)
    로 하니깐 Type Error  not all arguments converted during string formatting
    일부 값이  문자열 포맷팅 형식이 지정되지 않았다는 오류가 나온다. 
    연산할 때 a,b를 형식이 지정되지 않아(?) 발생한거 같다. 
    
    이런식으로 연산을 하려면
    
    a, b = input().split()
    a = int(a)
    b = int(b)
    print(a%b)
    
    다음과 같이 정수형으로  A,B 를 지정해줘야 돌아가게 된다.  
    */

     

    조건2

     

    입력

    실수 1개가 입력된다.

    출력

    소숫점 이하 두 번째 자리까지의 정확도로 반올림한 값을 출력한

    format(n, ".반올림값f") 를 사용하면 원하는 자리까지의 정확도로 반올림 된 실수 값을 만들어 준다.

     

    a = input()
    a = float(a)
    print(format(a,".2f"))
    #소숫점 이하 두번째 짜리까지 반올림한 값을 출력함.

     

    조건3

     
    입력

    2개의 실수(f1, f2)가 공백으로 구분되어 입력된다.

    출력

    f1을 f2로 나눈 결과를 소숫점 이하 넷째 자리에서 반올림하여 소숫점 세 번째 자리까지 출력한다.

    f1,f2 = input().split()
    f1 = float(f1)
    f2 = float(f2)
    
    print(format(f1/f2, ".3f"))

     

    조건4

    정수 2개(a, b)를 입력받아 합, 차, 곱, 몫, 나머지, 나눈 값을 자동으로 계산해보자.
    단, b는 0이 아니다.

    입력

    정수 2개가 공백을 두고 입력된다.

    출력

    첫 번째 줄에 합
    두 번째 줄에 차,
    세 번째 줄에 곱,
    네 번째 줄에 몫,
    다섯 번째 줄에 나머지,
    여섯 번째 줄에 나눈 값을 순서대로 출력한다.
    (실수, 소수점 이하 둘째 자리까지의 정확도로 출력)

    a,b = input().split()
    a = int(a)
    b = int(b)
    print(a+b)
    print(a-b)
    print(a*b)
    print(a//b)
    print(a%b)
    print(format(a/b, ".2f"))
    
    
    13
    7
    30
    3
    1
    3.33

    조건5

    입력

    정수 3개가 공백을 두고 입력된다.

    출력

    합과 평균을 공백을 두고 출력한다.
    평균은 소숫점 이하 셋째 자리에서 반올림하여 둘째 자리까지 출력한다.

    a,b,c = input().split()
    a = int(a)
    b = int(b)
    c = int(c)
    sum = a+b+c
    aver = sum/3
    print(sum,format(aver, ".2f"))

    조건6

    입력
    정수 한 개가 입력된다.
    단, -1073741824 ~ +1073741823

    출력
    2배 곱한 정수를 출력한다.

    비트시프트연산을 이용한다.

     

    왼쪽 비트시프트(<<)가 될 때에는 오른쪽에 0이 주어진 개수만큼 추가된다.

    예 :  n=20 이면 (n<<1) 은 20의 두 배인 값인 40이 출력된다. 

     
    오른쪽 비트시프트(>>)가 될 때에는 왼쪽에 0(0 또는 양의 정수인 경우)또는 1(음의 정수인 경우)이 개수만큼 추가되고,
    가장 오른쪽에 있는 1비트는 사라지게된다.

    예 : n=20 이면 (n<<1) 20을 반으로 나눈 값인 10이 출력된다. 

     

    시프트연산을 2번하게되면 4배, 반으로 나눈값을 또 반으로 나누는 값이 되는것이다. 

    a = input()
    a = int(a)
    print(a<<1)

    조건7

    입력
    정수 2개(a, b)가 공백을 두고 입력된다.
    0 <= a, b <= 10

    출력
    a 를 2b배 만큼 곱한 값을 출력한다
     
    a를 b만큼 거듭제곱한 값을 구하면되는데.

    생각해보면  n<<1은 두 배, n<<2면 4배가된다. 

     

    a가 1이고 b가 3일때 a << b면 

    1의 8배 즉, 8이다.

     

    a,b = input().split()
    a = int(a)
    b = int(b)
    
    print(a<<b)

     

    조건8

    입력
    두 정수(a, b)가 공백을 두고 입력된다.
    -2147483648 <= a, b <= +2147483647

    출력
    a가 b보다 작은 경우 True 를, 그렇지 않은 경우 False 를 출력한다.
     
     
     
    어떤 값을 비교하기 위해 사용되는 
    비교/관계(comparison/relational) 연산자(operator)를 이용하는 문제이다.
     
    비교/관계연산자도 일반적인 사칙연산자처럼 주어진 두 수를 이용해 계산을 수행하고
    그 결과를 True(참), 또는 False(거짓)로 계산해 주는 연산자이다.
     
    Python에서는  <, >, <=, >=, ==(같다), !=(다르다) 6개가 있다.
     
    a,b = input().split()
    a = int(a)
    b = int(b)
    
    print(a<b)
     

    조건9

    입력
    두 정수 a, b가 공백을 두고 입력된다.
    -2147483648 <= a, b <= +2147483647

    출력
    a와 b의 값이 같은 경우 True 를, 그렇지 않은 경우 False 를 출력한다.

     

    a,b = input().split()
    a = int(a)
    b = int(b)
    
    print(a==b)

     

    조건10

    입력
    2개의 정수(a, b)가 공백을 두고 입력된다.
    -2147483647 <= a, b <= +2147483648

    출력
    b가 a보다 크거나 같은 경우 True 를, 그렇지 않은 경우 False 를 출력한다.
    a,b = input().split()
    a = int(a)
    b = int(b)
    
    print(a<=b)
Designed by Tistory.