파이썬2021. 5. 10. 21:32
728x90

# 1602

입력된 n의 절대값을 출력한다.

실수값일 경우 불필요한 0을 출력하지 않는다.

 

-> 불필요한 0을 출력하지 않는다. 부분이 힘들었던 것 같다.

보통 파이썬에서는 {:g}.format(10) 이런 식으로 이용하는 것 같은데 다음과 같이 '%.10g'로도 이용하는 것 같다.

'%g'로만 했더니 7자리에서 e가 뜨는 오류가 발생했다. 따라서 최대자리수를 늘려주었다.(%.10g)

 

[ 코드 ]

 

def fun_abs(n):
    abs_n=abs(n)
    print('%.10g'%abs_n)

a=float(input())
fun_abs(a)

 

(문제) codeup.kr/problem.php?id=1602


 

# 1610

첫째 줄에 문자열이 공백없이 입력된다.(문자열은 100글자 이하)

둘째 줄에 문자열의 시작위치와 글자 개수가 입력된다.

(첫글자는 시작위치가 0이다. 글자개수는 시작위치부터 출력할 글자 수를 의미한다.)

 

* print 할 때 줄바꿈 하지 않는 방법 : print(~~,end='')

 

[ 코드 ]

 

def mysubstr(word,start,count):
    for i in range(count):
        #끝이 개행문자x 띄어쓰기x (cde처럼 바로 뒤에 출력)
        print(word[start+i],end='')
w=input()
s,c=map(int,input().split())
mysubstr(w,s,c)

 

(문제) codeup.kr/problem.php?id=1610

 

 

 

# 1615

[ 틀린코드 ]

더보기
def self(start,fin):
    set_have_gen = set()

    for n in range(1,fin+1): #1부터 fin까지 (1+1 = 2)
        n_1000 = n//1000
        n = n%1000

        n_100 = n // 100
        n = n % 100

        n_10 = n // 10
        n_1 = n % 10

        generator = n_1 + n_10 + n_100 + n_1000 + n

        if(start <= generator <= fin):
            set_have_gen.add(generator)
    return set_have_gen


#값 입력
a,b = map(int, input().split())

set_total = set()
for i in range(a,b+1):
    set_total.add(i)
    # #int(generator가질 때), none type(self일 때)
    # if(type(self(i,a,b)) == int):
    #     sum_gen += self(i,a,b)

    # sum_total += i

set_self = set_total - self(a,b)
print(set_self)
print(sum(set_self))

 

[ 코드 ]

(미해결)

 

 

# 1620

[ 코드 ]

n=int(input())

div=1
s=0
while(s==0 or s>=10): #두자리 수일 때만 돌기
    s=0
    while(n>0):
        s+=int(n%10)
        n = int(n/10)
    n=s

print(s)

 

(문제) codeup.kr/problem.php?id=1620

 

ㅇㄹㄴㅇㄹ

 

반응형
Posted by mminky