본문 바로가기

C/SWEA32

[SWEA] #2072. 홀수만 더하기 [문제] [코드] [풀이] 테스트케이스 T와 수를 입력 받을 배열 arr를 정수로 선언해준다. 반복문을 통해 입력받을 수 10개를 배열 arr에 저장한다. 홀수만 더하는 문제이므로 % 연산자를 이용하여 2로 나눠서 나머지가 0이 아닌 수의 경우 sum에 그 수를 더하도록 한다. 마지막에 구해진 sum을 출력하고 다시 첫번째 for문의 처음으로 돌아가 sum이 0으로 초기화되도록 해준다. [결과] input에 문제에서 제시된 입력사항을 넣어주면 아래의 결과가 나온다. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QSEhaA5sDFAUq&categoryId=AV5QSEhaA5sDFAUq&categoryType=.. 2021. 7. 4.
[SWEA] #2050. 알파벳을 숫자로 변환 [문제] [코드] [풀이] strlen함수를 사용하기 위해 string.h 헤더파일을 가져온다. strlen으로 입력받은 문자열 line의 길이를 세 준 뒤 반복문에서 길이만큼 반복되도록 해준다. 아스키코드상 10진수로 A와 1은 64 차이가 나므로 line에 입력받은 문자열 값에서 64를 빼준 값을 출력하도록 한다. (저번에 피드백 받은대로 strlen을 사용하는 대신 마지막에 \0이 입력되는 점을 이용하려고 했으나 계속 오류가 나서 일단은 이 풀이로 진행했습니다.) [결과] input에 문제에서 제시된 입력사항을 넣어주면 아래의 결과가 나온다. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QLGxKAzQ.. 2021. 7. 4.
[SWEA] #2047. 신문 헤드라인 [문제] [코드] [풀이] strlen 함수를 사용하기 위해 string.h를 넣어주었다. strlen 함수를 이용하여 문자열의 길이를 구하였다. 아스키코드 상 소문자와 대문자의 차이는 32이므로, 이 문제에서는 소문자를 대문자로 바꿔줘야 하기 때문에 소문자에 해당하는 값에 대하여 32를 빼주었다. 소문자가 아닌 부분에 대해서는 그대로 출력되도록 처리했다. [결과] input에 제시된 내용을 넣어주면 아래의 결과가 나온다. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QKsLaAy0DFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexp.. 2021. 6. 27.
[SWEA] #1966. 숫자를 정렬하자 [문제] [코드] [풀이] scanf 함수를 통해 테스트 케이스 개수를 입력 받고 반복문을 통해 입력받은 테스트 케이스 개수만큼 N을 입력 받고 입력받은 N 만큼 수를 입력 받아 배열 arr에 저장했다. N은 5이상 50 이하이므로 배열 arr의 크기를 50으로 설정해주었다. 반복문을 통해 배열 arr에 입력된 값들을 오름차 순서대로 정렬해주었다. if문을 통해 배열의 마지막 값이면 줄 바꾸기를, 아니면 띄어쓰기를 하도록 처리해주었다. [결과] input에 문제에서 제시한 내용과 임의의 값들을 입력하면 아래의 결과가 나온다. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PrmyKAWEDFAUq& SW Exp.. 2021. 6. 27.
[SWEA] #2063. 중간값 찾기 [문제] [코드] [풀이] 입력받을 점수의 개수 N, 반복문에 쓸 i, j, 임시값 t를 정수로 선언하고 중간값의 위치를 계산할 mid와 배열 a도 정수로 선언해준다. scanf 함수로 N을 입력받은 뒤 N만큼 반복하도록 for문을 작성해준다. 이때, 배열의 인덱스는 0부터 시작하므로 i도 0부터 시작해준다. a[0]부터 하나씩 값을 입력받도록 하고 또 다른 for문을 통해 값을 비교하도록 한다. a[i]는 현재 배열 내에서 수의 크기에 따라 자리를 잡아야 하는 수이고, a[j]는 이미 배열에 위치해있는 수이자 a[i]와 비교할 대상이다. for문에 의하여 a[i]는 a[0]부터 j가 i와 같아질 때까지 비교를 할텐데, a[i]가 a[j]보다 작을 경우 a[i]는 a[j]와 자리를 바꾸게 된다. mid는.. 2021. 5. 23.
[SWEA] #2027. 대각선 출력하기 [문제] [코드] [풀이] Sol 1. 단순하게 printf 함수를 이용해서 한줄 한줄 출력하게 한다. Sol 2. 각 줄을 #전, #, #후 세 부분으로 나눈다. for문을 사용해서 i가 1부터 5가 될 때까지 아래의 명령을 반복하도록 하고, +부분을 또 다른 반복문을 통해 몇 번 반복해서 출력할지 i를 통해 나타낸다. sol 1으로 해도 되는 상황이면 굳이 이 방법으로 할 필요는 없을 듯 싶다.... [결과] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QFuZ6As0DFAUq&categoryId=AV5QFuZ6As0DFAUq&categoryType=CODE&problemTitle=2027&orderBy.. 2021. 5. 23.
[SWEA] #1986. 지그재그 숫자 [문제] [코드] [풀이] 테스트 케이스를 T, 입력할 수를 N, 테스트 케이스 수 만큼 반복할 횟수를 i, 더하고 뺄 수 k, 총 합계 s를 정수로 선언하였다. scanf 함수로 입력받은 T만큼 N을 입력 받도록 하였고, 제약 사항은 if 문으로 나타내주었다. 1부터 N까지 숫자에서 홀수는 더하고 짝수는 뺀 최종 값을 출력해야하므로 while 문으로 k = 1부터 N까지 아래의 if문을 반복하도록 했다. 짝수는 2로 나눴을 때 나머지가 0인 상황으로 나타냈고 홀수의 경우는 else로 나타냈다. 더하고 빼고 최종적으로 나온 값은 printf 함수로 출력하도록 했다. [결과] input에 2 5 6 을 차례로 넣어주면 아래와 같은 결과가 나온다. https://swexpertacademy.com/main/.. 2021. 5. 16.
[SWEA] #1545. 거꾸로 출력해 보아요 [문제] [코드] [풀이] 입력할 숫자 N과 반복 횟수가 될 c를 정수로 선언해주고 scanf 함수를 이용해서 N을 입력 받게 했다. 주어진 숫자부터 이 숫자가 0이 될 때까지 계속해서 출력돼야하므로 for문을 사용해 반복되는 작업을 하도록 했다. c를 N과 같다고 설정을 해주고 c가 0이 될때까지 아래의 작업을 반복하면서 매번 c가 1씩 감소되도록 반복문을 구성해주었다. [결과] input에 8을 넣어주면 아래와 같은 결과가 나온다. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV2gbY0qAAQBBAS0 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요.. 2021. 5. 16.
[SWEA] #2070. 큰 놈, 작은 놈, 같은 놈 [문제] [코드] [풀이] a, b, c, d를 정수로 선언하고 scanf 함수를 사용해서 a, b, c 를 입력 받도록 하였다. for 문을 사용해서 d를 초기값 1로 지정하고 d가 a가 될때까지 아래 사항을 반복하면서 1씩 증가하도록 했다. printf 함수 내에서는 조건 연산자 ?를 이용해서 b가 c보다 크면 >를 출력, 아닌 경우 b가 c랑 같을 경우 = 출력, 아니면 2021. 5. 9.