본문 바로가기

Python45

다중반복문 - 구구단으로 이루어진 직각삼각형 ex) N=5 1 * 1 = 1 / 1 * 2 = 2 / 1 * 3 = 3 / 1 * 4 = 4 / 1 * 5 = 5 2 * 1 = 2 / 2 * 2 = 4 / 2 * 3 = 6 / 2 * 4 = 8 3 * 1 = 3 / 3 * 2 = 6 / 3 * 3 = 9 4 * 1 = 4 / 4 * 2 = 8 5 * 1 = 5 1) for 중첩 문의 구조, 열이 행이 1씩 증가할 때마다 1씩 감소하는 행렬로 보임 > i번쨰 줄에 구구단의 곱셈식이 n-i개씩 등장함 2) '/'는 각 줄의 마지막 곱셈식 뒤에는 출력되면 안됨. 따라서 곱해지는 수(j)가 n-j일때 (range에서 출력되는 마지막 값과 같아질때) '/'는 출력하지 않는다는 조건을 걸어야 함n = int(input())for i in range(1, n.. 2025. 2. 26.
다중반복문 - 특이한 출력 아래와 같은 조합을 출력해라 (n=3) 이때 첫 번째 숫자가 짝수인 경우 출력 후 한 줄을 띄우고, 그렇지 않을경우 공백을 띄워주어라.(1, 1) (1, 2) (1, 3) (2, 1) (2, 2) (2, 3) (3, 1) (3, 2) (3, 3) 1. 중첩 for문의 행(i), 열(j)의 묶음 형태. (1,1), (1,2), (1,3)... 와 같이 i가 1일때 j가 1,2,3으로 변하는 것으로 보이기 때문. 2. 문제에 나온대로 행(i)가 짝수 일때 한칸 띄워야 한다. if문과 print(end = "\n") 활용. 3. 짝수가 아닌경우 print(end = " ")로 작성한다. for i in range(1, 4): for j in range(1, 4): if i % 2 == 0:.. 2025. 2. 26.
다중반복문 - 일직선 구구단 아래와 같은 프로그래밍을 어떻게 할까?  ex) n=2를 입력으로 받을때 아래와 같이 출력됨. 1 * 1 = 1 1 * 2 = 2 2 * 1 = 2 2 * 2 = 4 1) 행과 열이 반복됨 > 중첩 for문 2) 규칙 : 1~2번째 행(i)은 1로 시작하고 3~4번째 행(i)은 2로 시작,  이 행(i)안에서 열(j)값이 1부터 2까지 바뀌어가며 출력  = 이후의 값은 i * j의 값임 3) 1~2번째 같은 행(i)이 첫번쨰, 두번째 행에 위치하려면 print(end=' ') 내의 end를 제외시켜줘야 함. n = int(input())for i in range(1, n+1) : for j in range(1, n+1) : print(f"{i} * {j} = {i*j}") 문제 출처 :.. 2025. 2. 26.
다중반복문 - 구구단2 짝수 인 정수 A, B가 주어지면 A이상 B이하의 짝수에 해당하는 수의 구구단을 예제와 같은 형식으로 출력. B에서 A로 감소하며 출력함 2 6 * 1 = 6 / 4 * 1 = 4 / 2 * 1 = 2 6 * 2 = 12 / 4 * 2 = 8 / 2 * 2 = 4 6 * 3 = 18 / 4 * 3 = 12 / 2 * 3 = 6 ...............(생략)............... 6 * 8 = 48 / 4 * 8 = 32 / 2 * 8 = 16 6 * 9 = 54 / 4 * 9 = 36 / 2 * 9 = 18 풀이1. 변수 두개 선언 하고 받기  2. i의 초기값 1, 10보다 작으며, 1씩 증가가 range 3. i마다 j의 초기값은 B이고, A보다 크거나 같으며 1씩 감소가 range (문제.. 2025. 2. 24.
다중반복문 - 구구단 구구단 정수 n이 주어질 때 n*n 모양 구구단 출력 프로그램 작성 n = int(input()) 예시 1 * 1 = 1, 1 * 2 = 2, 1 * 3 = 3 2 * 1 = 2, 2 * 2 = 4, 2 * 3 = 6 3 * 1 = 3, 3 * 2 = 6, 3 * 3 = 9 풀이 1. 반복되는 패턴을 보면 a * b =c 형태 2. a는 행(i)가 증가함에 따라 1씩 증가 3. b는 열(j)가 증가함에 따라 1씩 증가 4. i, j를 1부터 시작하는 코드를 작성하면, i*j = i*j 형태로 만들 수 있음. 5. 다만 ,의 경우 마지막 열(j)을 제외한 경우에만 출력할 수 있으므로 이에관련된 조건문 작성for i in range(1,n+1) : for j in range(1,n+1) : .. 2025. 2. 24.
다중반복문 - 행, 열에 따라 다르게 숫자 출력 문제 : 정수 n의 값이 주어지면 n값에 따라 1에서 n까지의 정수들을 상하로 반복하여 출력하는 프로그램 작성 예시 :n=4 1414 2323 3232 4141 1. 배열 출력해야하므로 중첩 for문2. cnt(i,j)가 모두 13. j(열이 바뀔때마다)은 첫번째 열, 세번째 열이 같음 / 두번째 열, 네번째 열이 같음4. 3에 따라서 홀수일 때 i(행이 바뀔때마다)는 1씩 증가짝수 일때 i는 n에서 1씩 감소, 이때 첫값은 n값이 나와야되므로 +1=> 즉 열에 따라 값이 바뀔때도 두번째 for문에서 값을 바꿔줘야 함. n = int(input())for i in range(1, n+1) : for j in range(1, n+1) : if j % 2 != 0 : p.. 2025. 2. 20.