[P4C] CodeUp 1093 : [기초-1차원배열] 이상한 출석 번호 부르기1
2021. 2. 25. 15:47
Programming Languages/C
문제 : 선생님은 출석부를 보고 번호를 부르는데, 학생들의 얼굴과 이름을 빨리 익히기 위해 번호를 무작위(랜덤)으로 부른다. 그리고 얼굴과 이름이 잘 기억되지 않는 학생들은 번호를 여러 번 불러 이름과 얼굴을 빨리 익히려고 하는 것이다. 출석 번호를 n번 무작위로 불렀을 때, 각 번호(1 ~ 23)가 불린 횟수를 각각 출력해보자. 정답 : #define _CRT_SECURE_NO_WARNINGS #include int main() { int arr[23] = {}; int n; int m; scanf("%d",&n); for (int i = 1; i
[P4C] CodeUp 1091 : [기초-종합] 수 나열하기3
2021. 2. 25. 15:41
Programming Languages/C
문제 : 시작 값(a), 곱할 값(m), 더할 값(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때, n번째 수를 출력하는 프로그램을 만들어보자. ( 본 문제에서 수열은 이전에 만든 수에 m을 곱한 다음 d를 더해 다음 수를 만든다.) 정답 : #define _CRT_SECURE_NO_WARNINGS #include int main() { long long int a; int m, d, n; scanf("%lld %d %d %d",&a,&m,&d,&n); for (int i=2; i
[P4C] CodeUp 1090 : [기초-종합] 수 나열하기2
2021. 2. 25. 15:36
Programming Languages/C
문제 : 등비 수열의 시작 값(a), 등비(r), 몇 번째인지를 나타내는 정수(n)가 입력될 때, n번째 수를 출력하는 프로그램을 만들어보자. 정답 : #include #include int main() { int a, r, n; long long int result; scanf("%d %d %d",&a,&r,&n); result = a * pow(r,n-1); printf("%lld", result); return 0; } 먼저 수열의 결과값(n 번째 수)인 result를 long long int 형으로 지정했다. (a,r,n에 따라 result가 커질 수 있어서) 그리고 r의 n-1승을 계산하기 위해 math.h 헤더 파일에 정의되어 있는 pow 함수를 이용했다.
[P4C] CodeUp 1085 : [기초-종합] 소리 파일 저장용량 계산하기
2021. 2. 25. 14:57
Programming Languages/C
문제 : 1초 동안 마이크로 소리강약을 체크하는 수를 h, 한 번 체크한 결과를 저장하는 비트 b, 좌우 등 소리를 저장할 트랙 개수인 채널 c, 녹음할 시간 s가 주어질 때, 필요한 저장 용량을 계산하는 프로그램을 작성해보자. 실제로 일반적인 CD 음질(44.1KHz, 16bit, 스테레오)로 1초 동안 저장하려면 44100 * 16 * 2 * 1 bit의 저장공간이 필요하다. 정답 : #define _CRT_SECURE_NO_WARNINGS #include int main() { long long int h, b, c, s; double result; scanf("%lld %lld %lld %lld", &h, &b, &c, &s); result = h * b * c * s; result = resul..
[P4C] CodeUp 1082 : [기초-종합] 16진수 구구단?
2021. 2. 25. 00:53
Programming Languages/C
문제 : A, B, C, D, E, F 중 하나가 입력될 때, 1부터 F까지 곱한 16진수 구구단의 내용을 출력해보자. (단, A ~ F 까지만 입력된다.) 정답 : #define _CRT_SECURE_NO_WARNINGS #include int main() { int ch; scanf("%X",&ch); for (int i = 1; i
[P4C] CodeUp 1079 : [기초-종합] 원하는 문자가 입력될 때까지 반복 출력하기
2021. 2. 25. 00:29
Programming Languages/C
문제 : 'q'가 입력될 때까지 입력한 문자를 계속 출력하는 프로그램을 작성해보자. 정답 : #define _CRT_SECURE_NO_WARNINGS #include int main() { char ch; do { scanf("%c ", &ch); printf("%c\n", ch); } while (ch != 'q'); return 0; } do while 반복문에 scanf와 printf를 넣어 'q'가 입력될 때까지 문자를 입력받고 출력하도록 한다. 단, while 문에 조건식을 지정해 q가 입력될 때 반복문을 빠져나오도록 한다.
[Assembly] 어셈블리 구구단 출력
2021. 2. 23. 12:37
Programming Languages/Assembly
실행 환경 - cpu : intel(32bit) - 컴파일러 : nasm - 리눅스 : ubuntu 20.04 LTS 설치방법 - sudo apt-get install build-essential gcc-multiplib nasm mul-test.c #include void mul(int n) { for (int i = 1; i < = 9; i++) printf("%d * %d = %d \n", n, i, n * i); return; } int main(void) { int num_array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}; for (int i = 1; i < 9; i++) mul(num_array[i]); return 0; } mul-test.asm extern pri..
[Assembly] 어셈블리 Hello world! 100번 출력
2021. 2. 23. 12:29
Programming Languages/Assembly
실행 환경 - cpu : intel(32bit) - 컴파일러 : nasm - 리눅스 : ubuntu 20.04 LTS 설치방법 - sudo apt-get install build-essential gcc-multiplib nasm 컴파일 - nasm -f elf32 파일명.asm -o --> 목적 파일을 만든다. - ld -m elf_i386 -o 파일명 파일명.o --> 실행 파일을 만든다. hello_100.c hello_100.asm hello_100.s