Programming/JUNGOL : 정보올림피아드&알고리즘

[JUNGOL 반복제어문2]:541~139

토토모에요 2021. 8. 7. 22:33
728x90
반응형

JUNGOL 정보올림피아드&알고리즘에서 학습용으로 문제를 가져왔습니다. 문제가 될 시 수정, 삭제하겠습니다.

http://www.jungol.co.kr/

541

문제: 문자를 입력받아서 입력받은 문자를 20번 반복하여 출력하는 프로그램을 작성하시오.

입력 예

A

출력 예

AAAAAAAAAAAAAAAAAAAA

code

a=input()
i=1
while i<21:
    print(a,end="")
    i+=1

542

문제: 10부터 20까지의 숫자를 차례대로 출력하는 프로그램을 작성하시오.for문을 사용하세요.

출력 예

10 11 12 13 14 15 16 17 18 19 20

code

for i in range(10,21):
    print(i,end=" ")

543

문제: 하나의 정수를 입력받아 1부터 입력받은 정수까지의 짝수를 차례대로 출력하는 프로그램을 작성하시오.
입력되는 정수는 50이하이다.

입력 예

10

출력 예

2 4 6 8 10

code

a=int(input())
for i in range(1,a+1):
    if i%2==0:
        print(i,end=" ")

544

문제: 100 이하의 정수를 입력받아서 입력받은 정수부터 100까지의 합을 출력하는 프로그램을 작성하시오.

입력 예

95

출력 예

585

code

a=int(input())
sum=0
for i in range(a,101):
    sum+=i
print(sum)

545

문제: 10개의 정수를 입력받아 3의 배수의 개수와 5의 배수의 개수를 각각 출력하는 프로그램을 작성하시오.

입력 예

10 15 36 99 100 19 46 88 87 13

출력 예

Multiples of 3 : 4
Multiples of 5 : 3

code

a=map(int,input().split())
count_t=0
count_f=0
for i in a:
    if i%3==0 and i%5==0:
        count_t+=1
        count_f+=1
    if i%3==0 and i%5!=0:
       count_t+=1
    elif i%5==0 and i%3!=0:
       count_f+=1
print("Multiples of 3 : %d"%count_t)
print("Multiples of 5 : %d"%count_f)

546

문제: 10 이하의 과목수 n이 주어진다.
정수로 주어진 n개 과목의 점수를 입력받아서 실수 평균을 구하여 출력하고 
평균이 80점이상이면 "pass", 80점 미만이면 "fail"이라고 출력하는 프로그램을 작성하시오.
평균은 반올림하여 소수 첫째자리까지 출력한다.​

입력 예

4
75 80 85 90

출력 예

avg : 82.5
pass

code

n=int(input())
a=list(map(int,input().split()))
print("avg : %.1f"%(sum(a)/n))
if sum(a)/n>=80:
    print("pass")
elif sum(a)/n<80:
    print("fail")

547

문제: 아래와 같이 출력되는 프로그램을 작성하시오.

출력 예

2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
6 7 8 9 10

code

for i in range(2,7):
    for j in range(5):
        j+=i
        print(j,end=" ")
    print()

548

문제: 구구단의 일부를 다음과 같이 출력하는 프로그램을 작성하시오.

곱셈의 결과는 오른쪽으로 맞추어 출력을 하고 결과값 사이의 공백은 3칸으로 한다.

출력형식 예) 2_*_1_=__2___ (_는 공백을 나타내는 것임)​

출력 예

2 * 1 =  2   2 * 2 =  4   2 * 3 =  6   2 * 4 =  8   2 * 5 = 10
3 * 1 =  3   3 * 2 =  6   3 * 3 =  9   3 * 4 = 12   3 * 5 = 15
4 * 1 =  4   4 * 2 =  8   4 * 3 = 12   4 * 4 = 16   4 * 5 = 20

code

for j in range(2,5):
    for i in range(1,6):
        if i*j>=10:
            print("%d * %d = %d"%(j,i,i*j),end="   ")
        else:
            print("%d * %d =  %d"%(j,i,i*j),end="   ")
    print()

130

문제: 10 이하의 자연수 n을 입력받아 "JUNGOL"을 n번 출력하는 프로그램을 작성하시오.

입력 예

4

출력 예

JUNGOL
JUNGOL
JUNGOL
JUNGOL

code

a=int(input())
for i in range(1,a+1):
    print("JUNGOL")

131

문제: 100 이하의 두 개의 정수를 입력받아 작은 수부터 큰 수까지 차례대로 출력하는 프로그램을 작성하시오.

입력 예

10 5

출력 예

5 6 7 8 9 10

code

a=list(map(int,input().split()))
for i in range(min(a),max(a)+1):
    print(i,end=" ")

132

문제: 정수를 입력받아서 1부터 입력받은 정수까지의 5의 배수의 합을 구하여 출력하는 프로그램을 작성하시오.

입력 예

20

출력 예

50

code

a=int(input())
sum=0
for i in range(1,a+1):
    if i%5==0:
        sum+=i
print(sum)

133 Accepted(10)

문제: 100 이하의 자연수 n을 입력받고 n개의 정수를 입력받아 평균을 출력하는 프로그램을 작성하시오.
(평균은 반올림하여 소수 둘째자리까지 출력하도록 한다.)

입력 예

3
99 65 30

출력 예

64.67

code

n=int(input())
lst=list(map(int,input().split()))
print("%.2f"%(sum(lst)/3))

134

문제: 10개의 정수를 입력받아 입력받은 수들 중 짝수의 개수와 홀수의 개수를 각각 구하여 출력하는 프로그램을 작성하시오.

입력 예

10 20 30 55 66 77 88 99 100 15

출력 예

even : 6
odd : 4

code

lst=list(map(int,input().split()))
count_even=0
count_odd=0
for i in lst:
    if i%2==0:
        count_even+=1
    elif i%2==1:
        count_odd+=1
print("even : %d"%count_even)
print("odd : %d"%count_odd)

135

문제: 두 개의 정수를 입력받아 두 정수 사이(두 정수를 포함)에 3의 배수이거나 5의 배수인 수들의 합과 평균을 출력하는 프로그램을 작성하시오.
(평균은 반올림하여 소수 첫째자리까지 출력한다.)

입력 예

10 15

출력 예

sum : 37
avg : 12.3

code

a=list(map(int,input().split()))
sum_t=0
count=0
for i in range(min(a),max(a)+1):
    if i%3==0 or i%5==0:
        sum_t+=i
        count+=1
print("sum : %d"%sum_t)
print("avg : %.1f"%(sum_t/count))

136

문제: 한 개의 자연수를 입력받아 그 수의 배수를 차례로 10개 출력하는 프로그램을 작성하시오.

입력 예

5

출력 예

5 10 15 20 25 30 35 40 45 50

code

a=int(input())
for i in range(1,11):
    print(a*i,end=" ")

137

문제: 행과 열의 수를 입력받아 다음과 같이 출력하는 프로그램을 작성하시오.

입력 예

3 4

출력 예

1 2 3 4
2 4 6 8
3 6 9 12

code

r,c=map(int,input().split())
a=1
for i in range(1,r+1):
    for j in range(1,c+1):
        print(i*j,end=" ")
    print()

138

문제: 정수를 입력받아 다음과 같이 순서쌍을 출력하는 프로그램을 작성하시오.
* 주의 
 ')'와 '('사이에 공백이 1칸 있다.
(1,_1) 처럼 출력한다 : '_'는 공백

입력 예

4

출력 예

(1, 1) (1, 2) (1, 3) (1, 4)
(2, 1) (2, 2) (2, 3) (2, 4)
(3, 1) (3, 2) (3, 3) (3, 4)
(4, 1) (4, 2) (4, 3) (4, 4)

code

a=int(input())
for i in range(1,a+1):
    for j in range(1,a+1):
        print("(%d, %d)"%(i,j),end=" ")
    print()

139 Accepted(10)

문제: 2부터 9까지의 수 중 2개를 입력받아 입력받은 수 사이의 구구단을 출력하는 프로그램을 작성하시오.

단 반드시 먼저 입력된 수의 구구단부터 아래의 형식에 맞게 출력하여야 한다.

구구단 사이의 공백은 3칸이다.

입력 예

5 3

출력 예

5 * 1 =  5   4 * 1 =  4   3 * 1 =  3
5 * 2 = 10   4 * 2 =  8   3 * 2 =  6
5 * 3 = 15   4 * 3 = 12   3 * 3 =  9
5 * 4 = 20   4 * 4 = 16   3 * 4 = 12
5 * 5 = 25   4 * 5 = 20   3 * 5 = 15
5 * 6 = 30   4 * 6 = 24   3 * 6 = 18
5 * 7 = 35   4 * 7 = 28   3 * 7 = 21
5 * 8 = 40   4 * 8 = 32   3 * 8 = 24
5 * 9 = 45   4 * 9 = 36   3 * 9 = 27

code

a,b=map(int,input().split())
for i in range(1,10):
    for j in range(1,b+1):
        if (a-j+1)*i>=10:
            print("%d * %d = %d"%(a-j+1,i,(a-j+1)*i),end="   ")
        else:
            print("%d * %d =  %d"%(a-j+1,i,(a-j+1)*i),end="   ")

    print()
반응형