반응형

42Seoul 27

[TIL] 20230718

오늘 공부한 내용📓 - C++ 개념 공부 신발끈 공식 삼각형의 넓이를 구하는 공식 중 하나 (다각형도 가능) 삼각형의 반시계 방향으로 점 P1, P2, P3 이 있을 때, 붉은 화살표로 이어진 것끼리 곱한 뒤 모두 더하고, 초록 화살표로 이어진 것끼리 곱한 뒤 뺀 후, 절댓값을 구하면 그것이 넓이가 됨 위 내용으로 정리한 수식 참고자료 https://chemicals1234.tistory.com/18 제가 공부한 내용을 기록하고 있습니다. 혹시 수정이 필요한 부분이 있다면, 댓글로 지적 부탁드립니다! 선한 관심과 도움 감사드립니다😊

TIL::Today I Learn 2023.07.28

[TIL] 20230708

오늘 공부한 내용📓 - C++ 개념 공부 고정소수점 정수를 표현하는 비트 수와 소수를 표현하는 비트 수를 미리 정해두고, 해당 비트만 사용하여 숫자를 표현하는 방식 한정된 비트에 정수와 소수를 표현해야하기 때문에, 나타낼 수 있는 범위가 한정적인 문제 아래 처럼 32비트를 쪼개 실수를 표현 [ 1 ][ 15 ][ 16 ] [sign][integer part][fractional part] 처음 1 비트는 sign(부호) 이며, 양수는 0 음수는 1 다음 15 비트를 integer(정수부) 다음 15 비트를 fractional(소수부) 정수부에 정수값을 2진수로 바꾸어 넣고, 소수부에 소수값을 2진수로 바꾸어 넣은 후, 남은 자리는 0으로 채움 부동소수점 소수점의 위치를 고정하지 않고, 그 위치를 나타내는..

TIL::Today I Learn 2023.07.18

[TIL] 20230707

오늘 공부한 내용📓 - C++ 개념 공부 Orthodox Canonical Form OCCF 란, 클래스의 기본적인 형식 또는 일반적인 형식을 따르는 규칙 집합 이 규칙들은 클래스의 일관성과 호환성을 유지하고, 예기치 않은 동작을 방지하는데 도움을 줌 C++ 98 버전의 OCCF 는 아래 규칙을 포함함 기본 생성자(Default Constructor) 복사 생성자(Copy Constructor) 소멸자(Destructor) 대입 연산자(Assignment Operator) 동등 연산자(Equality Operator) 복사 할당 연산자(Copy Assignment Operator) ostream 연산자(’’) 오버로딩 42 과제에서는 위 규칙들 중 기본 생성자, 복사 생성자, 복사 할당 연산자, 소멸자만..

TIL::Today I Learn 2023.07.08

[TIL] 20230705

오늘 공부한 내용📓 - C++ 개념 공부 if/else 문 사용하지 않고 분기 처리하기 ex05 문제에서 if/else 문을 사용하지 않고 분기하여, 멤버 함수 포인터 배열을 통해 함수를 실행 시켜야 한다. if/else 문을 사용하지 말라는 점이, 분기가 엄청 많아질 경우에는 if/else 문은 관리가 힘드니 사용하지 말라는 것으로 이해하여, 대안인 switch 문은 사용하지 않고 코드를 짜보려고 한다. complain 함수의 인자로 level이 들어오면, 그 level 에 맞는 함수를 실행시켜야 하기 때문에, levels 배열을 만들어 find 로 level 을 찾고, 그 인덱스를 사용하여 멤버 함수 포인터 배열에서 함수를 실행시킨다. void Harl::complain(std::string leve..

TIL::Today I Learn 2023.07.06

[TIL] 20230704

오늘 공부한 내용📓 - C++ 개념 공부 함수 포인터와 멤버 함수 포인터 함수 포인터 함수의 주소를 저장하고 호출하는 포인터 int add (int a, int b) { return a + b; } int subtract (int a, int b) { return a - b; } int main() { int (*funcPtr)(int, int); //함수 포인터 선언 funcPtr = add; // add 함수를 가리키도록 초기화 int result = funcPtr(5, 3); //함수 포인터를 통한 함수 호출 std::cout

TIL::Today I Learn 2023.07.06

[TIL] 20230621

오늘 공부한 내용📓 - C++ 함수 공부 new 포인터 변수명 = new 타입; //int *ptr = new int; 포인터 변수명{new 타입}; //int *ptr{new int}; //초기화 같이 하는 방법 포인터 변수명 = new 타입(초기화 값); //int *ptr = new int(10); 포인터 변수명{new 타입}; //int *ptr{new int(10)}; 메모리 공간 할당하는 연산자이며, 생성자를 호출하고, 할당하고자 하는 자료형에 맞게 형 변환 new 는 바로 초기화가 가능함 메모리 할당 실패 시, malloc 과는 다르게 bad_alloc 이라는 익셉션을 리턴함. try - catch 문을 사용해서 확인해야 한다. #include int main() { try { int *pt..

TIL::Today I Learn 2023.06.22

[TIL] 20230620

오늘 공부한 내용📓 - 네트워크 개념 공부 Netpractice 문제풀이 Level 8 우선 인터넷 I의 목적지가 고정되어 있다. D와 C가 이 목적지와 같은 네트워크를 사용하여야 통신이 가능한 점을 염두에 두어야 한다. Goal 1 C 와 D 가 통신해야 한다. I의 네트워크는 146.245.236.0/26 이니 호스트 id가 1 ~ 62 까지 가능하고, D1의 Mask 는 /28 로 고정되어 있기 때문에, D1 - R23은 첫번째 네트워크(1 ~ 14), C1 - R22는 두번째 네트워크(17 ~ 30)로 설정해준다. (편의상 C 도 D와 동일한 마스크로 맞춰주었다) D의 경로는 R23의 IP를, C의 경로는 R22의 IP를 넣어준다. R2의 목적지는 0.0.0.0/0 을 넣어준다. Goal 2, G..

TIL::Today I Learn 2023.06.21

[TIL]20230619

오늘 공부한 내용📓 - 네트워크 개념 공부 Netpractice 문제 풀이 Level 7 A1 과 C1이 라우터를 통해 통신해야 함 라우터는 다른 네트워크와의 통신을 위한 장비이기 때문에, 연결된 장비끼리는 같은 네트워크를, 다른 연결과는 다른 네트워크로 변경해준다. R11과 R12 가 다른 네트워크여야 하는데, IP가 고정되어 있으니 Mask를 /25로 설정하여 네트워크를 분리시켜준다. 분리시킨 네트워크에 맞추어 R11과 동일한 네트워크로 A1에 넣어주고, R12와 동일한 네트워크로 R21에 넣어준다. R22도 R21과 다른 네트워크여야 하기 때문에, R22의 IP를 다른 네트워크로 변경해주고, C1도 동일한 네트워크로 넣어준다. 궁금한 내용 / 부족한 내용🧐 1. Netpractice Level6에서..

TIL::Today I Learn 2023.06.20
반응형