본문 바로가기

전체 글75

1-1. SLAM이란? 💡 SLAM (Simultaneous Localization And Mapping): 동시적 위치 추정 및 지도 작성 - 위치 추정 : 지도가 주어졌을 때, 자신의 위치를 추정하는 문제ex) 처음 가보는 놀이동산에 방문했다고 가정함. 이 놀이동산에서, 내가 있는 위치를 정확하게 파악하려면 놀이동산에서 제공하는 지도를 펼쳐놓고 내가 있는 주변 환경을 살펴본 다음, 지도와 매칭을 함. 내 오른쪽에 회전 목마가 있고, 왼쪽에 롤러코스터가 있다면 지도상에서 이와 비슷한 곳을 찾아서 내 위치를 정확하게 알아낼 수 있음.✅ '내가 어디에 있지?'✅ 주어진 지도와 실제 내 주변 정보를 비교해, 내 위치를 파악하는 과정이라고 볼 수 있음. - 지도 작성 : 자신의 위치를 알고 있을 때, 주변 환경에 대한 지도를 생성.. 2024. 12. 10.
Q&A (continue, goto, null) 📌 6.1 단원에서 나온 루프 말예요, "> 0" 검사를 빼면 좀 더 루프가 짧아지지 않나요? i가 0이 되면 루프는 멈출거고, 원래 사용했던 루프랑 동일하게 작동하잖아요.while (i > 0) { printf("T minus %d and counting\n", --i);}while (i) { printf("T minus %d and counting\n", --i);} - 간결해보이지만, 몇 가지 단점이 존재함.① 가독성이 떨어짐. 새 코드를 보면 i가 0이 되면 종료할 거라는 건 알겠지만, i를 통해 숫자를 증가하면서 수를 세고 있는 건지, 감소갛면서 수를 세고 있는 건지 불명확함.② 새 코드는 만약 i가 루프가 실행될 때, 음수라도 되는 순간 원래 코드에서 의도한 방식대로 작동하지 않음. 원래.. 2024. 9. 11.
[6-5] null문 - 구문은 null의 형태를 띨 수 있음. 즉, 세미콜론을 제외하고 아무 기호도 없는 구문을 의미함.- null문은 단 1가지의 용도로 거의 쓰임. '본문이 비어있는 루프'for (d = 2; d   ✅ if문에서 괄호 이후에 세미콜론을 놓게 되면 if문의 본문이 if문의 제어식의 결과값과 무관하게 작동됨.if (d == 0); /*** WRONG ***/ printf("Error: Division by zero\n");  ✅ while문의 경우 무한루프가 될 수도 있음.i = 10;while (i > 0) ; /*** WRONG ***/{ printf("T minus %d and counting\n", .. 2024. 9. 11.
[6-4] 루프에서 벗어나기 프로그래밍을 하다보면 루프를 중간에 종료시켜야하는 때, 혹은 아예 종료되는 지점이 여러개인 반복문을 작성해야 할 때가 발생함.➡ break문을 통해 이 2가지 상황을 모두 만족시킬 수 있음. 📌 break문- break문은 같은 방식으로 while문, for문, do문과 같은 반복문에도 사용됨. 🌐 자연수 n이 소수인지 판별하는 프로그램for (d = 2; d break문은 종료점이 루프의 시작이나 끝이 아닌 도중에 있을 때, 상당히 유용함. for (;;) { printf("Enter a number (enter 0 to stop): "); scanf("%d", &n); if (n == 0) { break; } printf("%d cubed is %d\n", .. 2024. 9. 11.
[6-3] for문 - for문은 숫자를 세야하는 변수가 있을 때, 상당히 유용한 반복문임. 💡 for문 구조for ( expr1 ; expr2 ; expr3 ) statement// 예제for (i = 10; i > 0; --i) { printf("T 빼기 %d, 세는 중\n", i);}예제의 for문이 실행이 되면 변수 i는 10으로 초기화가 되고, i가 0보다 큰지 판별한다. 10은 0보다 크므로 T 빼기 %d, 세는 중 메세지가 출력되고, i는 감소된다. 그 다음 다시 i > 0을 판별한다. 여기서 i는 10부터 1까지 지속되므로 예제의 루프본문은 총 10번 실행된다. 📌 for문 관용적 표현- 일정 횟수 or 구간에서 변수를 증감시키는 동안 반복할 때 매우 유용한 반복문임.-.. 2024. 9. 5.
[6-2] do문 - do문은 사실상 while을 얘기할 때, 빼놓을 수 없을 정도로 관련 깊은 구문임.- do문은 while문과 거의 동일하다고 할 수 있음. 다만, 제어식을 루프 본문 실행 이후에 판별할 뿐임.do statement while ( expression ) ;while문과 동일하게 do의 본문 또한 한 개의 표현식으로 이루어져 있고, 제어식 또한 괄호로 감싸야함.do문이 실행되면, 우선 루프 본문이 먼저 실행되고 나서 제어식이 평가됨. 만약, 표현식이 0이 아닌 값을 갖는다면, 루프 본문은 다시 실행되고 표현식은 다시 한 번 더 평가됨. 루프 본문이 실행된 이후 제어식의 값이 0이라면, do문은 종료됨. 🌐 [프로그래밍] 정수의 자릿수 계산하기🌐 numdigits.c/* 한 정수의 자.. 2024. 9. 5.