프로그래밍
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBl7Nl%2FbtqF0SvPTtu%2FGYEkkCI9BhAwOkndEd75Rk%2Fimg.jpg)
<C프로그래밍-새내기를 위한 첫 C 언어 책>연습문제 chapter 5 (19,20,21,22,23)
19. 구구단(2단~9단)을 가로로 출력하는 프로그램을 작성하시오. #include int main(void) { int i, j; for (i = 1; i
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdfwz4w%2FbtrOCcFAbri%2Fc3UC0D3X5rJX3TZhthqyL1%2Fimg.gif)
<C프로그래밍-새내기를 위한 첫 C 언어 책>연습문제 chapter 5 (13,14,15,16,17,18)
13. score에 저장된 점수가 70이하면 '하', 71~90이면 '중', 91이상이면 '상'으로 출력하려고 한다. 다음 왼쪽 if문은 결과가 정상적이지만, 오른쪽 if문은 score가 60일 때 '하중상'으로 잘못 출력된다. 이유를 적으시오. //올바른 if문 if (score
<C프로그래밍-새내기를 위한 첫 C 언어 책>연습문제 chapter 5 (8,9,10,11,12)
08. 월을 입력받아 몇 분기인지를 출력하는 프로그램을 switch ~ case문을 이용해 작성하시오. #include int main(void) { int month; printf("월 입력:"); scanf_s("%d", &month); switch (month) { case 1: printf("1사분기입니다."); break; case 2: printf("1사분기입니다."); break; case 3: printf("1사분기입니다."); break; case 4: printf("2사분기입니다."); break; case 5: printf("2사분기입니다."); break; case 6: printf("2사분기입니다."); break; case 7: printf("3사분기입니다."); break; c..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcizcem%2FbtqFNPrImMy%2FBST5P6OdFMlZ3HAIE70wgk%2Fimg.jpg)
(파이썬)프로젝트 오일러(Project Euler)17.1부터 1000까지 영어로 썼을 때 사용된 글자의 개수는?
1부터 5까지의 숫자를 영어로 쓰면 one, two, three, four, five 이고,각 단어의 길이를 더하면 3 + 3 + 5 + 4 + 4 = 19 이므로 사용된 글자는 모두 19개입니다. 1부터 1,000까지 영어로 썼을 때는 모두 몇 개의 글자를 사용해야 할까요? 참고: 빈 칸이나 하이픈('-')은 셈에서 제외하며, 단어 사이의 and 는 셈에 넣습니다. 예를 들어 342를 영어로 쓰면 three hundred and forty-two 가 되어서 23 글자, 115 = one hundred and fifteen 의 경우에는 20 글자가 됩니다. 사전 작업 one부터 onethound까지 일일이 입력할 수는 없다. 누군가는 입력해놓지 않았을까 하고 구글에 '1 to 1000 in english..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdheG48%2FbtqFdtworfk%2FXOakaun8RY0leH5KhDZSYK%2Fimg.jpg)
(파이썬)백준 10996.별 찍기 - 21
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. n = int(input()) if n % 2 != 0: #홀수인 경우 for i in range(n): print("* "* (n // 2 + 1)) print(" *"* (n // 2) ) if n % 2 == 0: #짝수인 경우 for i in range(n): print("* "* (n // 2)) print(" *"* (n // 2)) n이 홀수일 때는 첫 줄에 (별, 공백)을 n // 2 + 1 개, 둘째 줄에 (공백, 별) n // 2개 출력한다. 이 패턴을 n회 반복한다. n이 3이라면 * * * 이 패턴이 3회 반복되고, n이 5라면 * * * * * 이 패턴이 5회 반복된다. 짝수일 때는 (별, 공백), (공백, 별)을 n // 2 만..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmPCWd%2FbtqFdsKXWRM%2FN96XByElvGTiA3UsbUyeE1%2Fimg.jpg)
(파이썬)백준 2446. 별 찍기 - 9
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. n = int(input()) k = 0 for i in range(2 * n - 1, 0, -2): for j in range(k): print(" ", end = '') k += 1 for j in range(i , 0, -1): print("*", end = '') print("") k -= 2 for i in range(3, 2 * n, 2): for j in range(k): print(" ", end = '') k -= 1 for j in range(i): print("*", end = '') print("") 별 개수를 줄여나가려면 range를 역순으로 만들어야겠다고 생각했다. 그러니 n이나 i로는 공백을 찍기가 곤란해서 k라는 문자를 더 ..
(파이썬)백준 4673.셀프 넘버
문제 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, 이 수를 시작해서 n, d(n), d(d(n)), d(d(d(n))), ...과 같은 무한 수열을 만들 수 있다. 예를 들어, 33으로 시작한다면 다음 수는 33 + 3 + 3 = 39이고, 그 다음 수는 39 + 3 + 9 = 51, 다음 수는 51 + 5 + 1 = 57이다. 이런식으로 다음과 같은 수열을 만들 수 있다. 33, 39, 51, 57, 69, 84, 96, 111, 114, 120, 123, 129, 141, ... n을 d(n)의 생성자라..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0NQcs%2FbtqFbCeNMvC%2Fsaj9LheSUZNHwAzexkWKtk%2Fimg.png)
(C언어, 파이썬)프로젝트 오일러(Project Euler)16.2^1000의 각 자리수를 모두 더하면?
215 = 32768 의 각 자리수를 더하면 3 + 2 + 7 + 6 + 8 = 26 입니다. 21000의 각 자리수를 모두 더하면 얼마입니까? 1. 파이썬 a = str(2**1000) sum = 0 for i in range(len(a)): sum += int(a[i]) print(sum) 파이썬으로 구현하면 정말 쉬워진다. 21000을 문자열 형태로 저장하고, 문자열의 길이만큼 인덱스를 정수형태로 변환해 더하면 끝난다. 2. C언어 #define SIZE 400 #include int main(void) { int num[SIZE] = { 0 }; num[SIZE - 1] = 1; int i, j, sum = 0; for (i = 1; i = 10) { num[j - 1] = num[j - 1] +..