본문 바로가기

반응형

Coding

__thiscall : 외부 기호(참조 위치)에서 확인하지 못했습니다. 함수의 선언문만 있고 정의가 없는 경우 이러한 오류가 발생한다. 더보기
제네릭 함수 - reverseArray() 쉬운 ver. template void reverseArray(T arr[], int capacity) { T *tp = new T[capacity]; for (int i = 0; i < capacity; i++) tp[i] = arr[i]; for (int i = 0 ; i < capacity; i++) arr[i] = tp[capacity - 1 - i]; delete[] tp; } 효율적인 ver. template void reverseArray(T array[], int size) { T temp; for (int i = 0; i < size / 2; i++) { temp = array[i]; array[i] = array[(size - 1) - i]; array[(size - 1) - i] = .. 더보기
초기화가 'case' 레이블에 의해 생략되었습니다 switch-case의 case 문에서 변수를 선언한 경우에 오류가 발생한다. 각 case의 코드를 {}으로 묶어주면 해결된다. 더보기
system 함수 - system("pause") sytem 함수는 다음과 같은 헤더파일에 포함되어 있다. #include // C언어의 경우 #include // C++의 경우 system("pause"); 이 코드를 작성하게 되면 이 코드 이전까지의 실행 결과를 확인할 수 있어서 디버깅에 유용하다. 만약 그 이전에도 동일한 코드가 있었다면 그 사이의 실행 결과를 확인할 수 있다. 더보기
stoi() 함수 직접 구현하기 #include int myStoi(char str[]){ int len = strlen(str); int sum = 0; for (int i = len - 1, p = 1; i >= 0; i--, p *= 10) { str[i] -= 48; // ASCII 코드는 문자를 다루는 코드 // 문자 0의 ASCII 코드의 값은 48 // 숫자로 바꾸기 위해서는 48을 빼 주어야 한다. sum += str[i] * p; } return sum; } ASCII 코드는 문자를 다루는 코드이다. 문자 0의 ASCII 코드의 값은 48이다. 숫자로 바꾸어주기 위해서는 48을 빼 주어야 한다. 더보기
백준 온라인 저지 (Baekjoon Online Judge) - 10809번 : 알파벳 찾기 https://acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. www.acmicpc.net 각 알파벳을 표현하는 alpha 배열을 선언 후, 모두 -1로 초기화 시켜준다. 문자열을 입력 받은 후에, 문자별로 하나씩 a부터 z까지 각 문자와 같은지 비교를 하고, 만약 같은 경우이고, 그 이전에 값이 설정되지 않은 경우에 (발견되는 첫 번째 인덱스를 찾아야 하기 때문에) 현재의 인덱스 값을 alpha 배.. 더보기
백준 온라인 저지 (Baekjoon Online Judge) - 9325번 : 얼마? https://acmicpc.net/problem/9325 9325번: 얼마? 문제 해빈이는 학교를 다니면서 틈틈히 번 돈으로 자동차를 사려고 한다. 자동차에 여러 가지 옵션을 포함시킬 수 있는데 해빈이는 덧셈과 곱셈을 하지 못하기 때문에 친구 태완이에게 도움을 청했다. 하지만 태완이도 덧셈과 곱셈을 못한다. 불쌍한 이 두 친구를 위해 모든 옵션이 주어진 자동차를 구매하는데 필요한 액수를 계산해 주자. 입력 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스의 첫 줄엔 자동차의 가격 s가 주어진다. (1 ≤ s ≤ 100 www.acmicpc.net #include using namespace std; int main() { int test_case; cin >> test_case; int s.. 더보기
백준 온라인 저지 (Baekjoon Online Judge) - 16479번 : 컵라면 측정하기 https://acmicpc.net/problem/16479 16479번: 컵라면 측정하기 첫째 줄에 K의 값이 주어진다. 둘째 줄에는 D1과 D2의 값이 사이에 공백을 한 개 두고 차례대로 주어진다. 단, K, D1, D2의 값은 양의 정수이다. www.acmicpc.net 위의 문제에서 k, d1, d2의 값은 양의 정수라고 하였다. cmath 헤더 파일에 포함 되어 있는 pow 함수를 사용하여서 문제를 해결할 수 있다. #include #include using namespace std; int main() { int k, d1, d2; cin >> k >> d1 >> d2; double squareH; double temp = pow((d1 - d2) / 2.0, 2); squareH = pow(.. 더보기

반응형