소개
유튜브에서 코딩 교육 채널을 운영하고 있는 나도코딩입니다.
누구나 쉽고 재미있게 코딩을 공부하실 수 있도록 친절한 설명과 쉬운 예제로 강의합니다.
코딩, 함께 하실래요? 😊
🧡 유튜브 나도코딩
🎁 코딩 자율학습 나도코딩의 파이썬 입문
📚 코딩 자율학습 나도코딩의 C 언어 입문
강의
전체11로드맵
전체1수강평
- 반복적인 연습이 필요하겠죠
brain0022
2024.05.02
0
- 기초문제로 좋아요, 반복적인 코딩이 필요하겠죠
brain0022
2024.05.02
0
- 진짜 쉽게 알려주시네요! 감사해요! 심화강의도 만들어주시면 좋겠어요!
yoongomtang
2024.04.23
0
게시글
질문&답변
2024.05.04
강의 스트리밍 에러
안녕하세요? 먼저 학습에 불편드려 대단히 죄송합니다. 인프런에서 스트리밍 끊김 현상은 과거에 비해 많이 개선이 된 것으로 알고 있지만 Q&A 를 찾아보니 여전히 일부 수강생 분들은 최근에도 불편을 겪고 계신 것으로 파악이 됩니다. 그런데 시크릿 모드에서는 정상적으로 스트리밍이 잘 되고, 일반 모드에서 학습하실 때 문제가 되고 있는지요? 만약 그렇다고 하시면 어쩌면 사용하시는 브라우저의 설정을 일부 건드려 보는 것으로 개선이 될 수 있는지 확인해보는 것도 좋을 것 같습니다. 자꾸 끊기는 현상으로 스트레스가 많으시겠지만, 도움이 될 수 있어 보이는 링크를 다음과 같이 공유해드리니 시간이 된다면 한 번 시도를 부탁 드립니다. 크롬 기준으로 설명이 되어 있습니다. 👉 https://funissu.com/chrome-youtube-stuck-lag-stuttering/ 또는 사용하시는 브라우저의 종류를 다른 것으로, 가령 크롬을 사용하신다면 엣지로 변경해 보시는 것도 방법이 될 수 있습니다. 스트리밍이 잘 되기만 한다면 기존 시크릿 모드에 비해서는 로그인에 대한 부담을 크게 덜어드릴 수 있어 보입니다. 벌써 강의를 70% 이상 수강 하셨는데, 그간 많이 불편하셨을 것으로 생각됩니다. 부디 위 방법으로 조금이나마 개선이 될 수 있기를 바랍니다. 감사합니다.
- 0
- 4
- 73
질문&답변
2024.04.25
14 출력이 강의와 다릅니다.
안녕하세요? 바로 윗줄에서 %n 을 누락하여 발생한 현상입니다. System.out.printf("%6.2s", "Java"); // 수정 전 System.out.printf("%6.2s%n", "Java"); // 수정 후 윗줄에서 %n 이 없으니 줄바꿈이 되지 않았으며, 6자리 공간을 확보하고 우측 정렬하여 2글자인 Ja 를 먼저 출력하지요. (1) _ _ _ _ J a System.out.printf("%-6.2s%n", "Java"); 그런 다음에 이어서 위 코드를 실행하게 되니, 6자리 공간을 확보하고 좌측 정렬하여 2글자인 Ja 를 출력하게 됩니다. 즉 (2) J a _ _ _ _ 가 되겠네요. 그런데 둘 사이에 줄바꿈이 없으므로 (1) _ _ _ _ J a (2) J a _ _ _ _ 가 합쳐져서 실제로 보기에는 _ _ _ _ J a J a _ _ _ _ 이렇게 보여지게 된 거에요. 보다 더 확실히 차이를 확인하고 싶다면 이렇게 해보시면 되겠네요. System.out.printf("%6.2s", "ABCD"); // 처음 두 글자 AB System.out.printf("%-6.2s%n", "EFGH"); // 처음 두 글자 EF 위 예제에서는 각각 출력 문장이 (1) _ _ _ _ A B (2) E F _ _ _ _ 이렇게 될텐데, %n 에 해당하는 줄바꿈이 없으니 둘이 합쳐져서 _ _ _ _ A B E F _ _ _ _ 이렇게 출력이 되겠네요 😊 감사합니다. 덧) 첫 번째 스크린샷 이미지는 코드가 잘려서 정확한 확인은 어렵지만 아마도 동일하게 코드 윗줄에서 %n 을 누락하신 것 같아요 😋
- 0
- 1
- 43
질문&답변
2024.04.25
7장에서 메소드 영상을 보다가 궁금한 점이 있어서 연락드립니다.
안녕하세요? 문의주신 내용은 아마도 아래 코드에 대한 질문인 것 같군요 😀 int getVideoFileCount(int type) { if (type == 1) { // 일반 영상 return 9; } else if (type == 2) { // 이벤트 영상 return 1; } return 10; } 말씀하신 것처럼 첫 번째 if 문의 조건을 확인하여 참이면 if 문 내의 문장이 실행되고, 그 이후에는 if 문 밖으로 빠져나와서 이어서 계속하여 코드가 실행되는 것은 맞습니다. void printColor(int color) { if (color == 1) { System.out.println("파란색"); } else if (color == 2) { System.out.println("빨간색"); } System.out.println("색을 출력했어요"); } 만약 위와 같이 코드가 되어 있었고 전달 받은 color 변수가 1 이라면 파란색 색을 출력했어요 color 변수가 2라면 빨간색 색을 출력했어요 그 외의 값이라면 색을 출력했어요 가 출력될 것입니다. 하지만 문제는 바로 return 이에요. 메소드 내에서 return 을 만나면 그 즉시 메소드를 탈출하게 됩니다. 이후에 실행될 코드가 더 있건 말건 상관 없이 말이죠! 마치 아래 코드처럼 생각하시면 됩니다. 이 코드를 작성해보면 void printColor(int color) { return; System.out.println("파란색"); System.out.println("빨간색"); System.out.println("색을 출력했어요"); } 아래와 같이 Unreachable statement 라며 에러가 발생하게 됩니다. 첫 줄의 return; 에 의해 바로 메소드를 탈출하게 되므로 이후에 있는 print 구문들은 실행조차 되지 않으니 확인해보라는 의미인 것이죠. (사진) 다시 원래 코드로 돌아와서, int getVideoFileCount(int type) { if (type == 1) { // 일반 영상 return 9; } else if (type == 2) { // 이벤트 영상 return 1; } return 10; } type 이 만약 1인 경우에는 return 9; 의 동작이 실행되면서 메소드를 바로 탈출하게 되고 이와 동시에 9 를 반환하게 됩니다. 그래서 if 문 밖에 있는 코드인 return 10 은 아예 실행이 되지 않는 것이랍니다. 궁금증 해결에 도움되길 바라겠습니다 😊 감사합니다.
- 0
- 1
- 47
질문&답변
2024.03.31
퀴즈 13 질문입니다.
안녕하세요? 새로운 질문을 작성하시기 전에 작성된 질문이 올바로 삭제되지 않은 문제가 있었던 것 같습니다 😅 아래 링크에 답변을 작성하고 새로운 질문을 확인 중인데 제가 말씀드린 소스코드가 이번 질문에서는 순서가 올바로 작성되었네요! 👉 https://www.inflearn.com/questions/1223648 결과적으로 코드를 잘 작성해주셨습니다. 파일의 내용을 읽어와서 어떤 작업을 할 때 일반적으로는 while (true) { ... } 와 같은 무한 반복문 보다는 작성해주신 것처럼 while ((line = br.readLine()) != null) { ... } 와 같은 코드를 많이 사용합니다. 혹시 어떤 문제로 반복문을 올바로 탈출하지 못하고 계속 반복하는 경우를 방지하기 위해서 그렇습니다. 그리고 (속담 퀴즈입니다 ~ 수고하셨습니다) 부분을 try catch 문 외부에 넣거나 내부에 넣거나 큰 차이는 없습니다. 다만 (수고하셨습니다) 부분이 try catch 외부에 있게 되면 try 문 내에서 어떤 문제가 발생하여 퀴즈가 올바로 진행되지 않았을 경우에도 (수고하셨습니다) 라는 문장이 출력되는 경우가 발생할 수 있겠네요. 사용자는 퀴즈를 하나도 풀지 못했는데 수고했다는 메시지를 출력하면 프로그램의 동작이 다소 매끄럽지 않을 수 있습니다. 이런 경우에는 try catch 내에서 (수고하셨습니다) 라는 메시지를 출력하되, 예상치 못한 오류에 대비하여 catch 문 내에서 (문제가 발생하여 퀴즈가 올바로 진행되지 않았습니다) 정도의 메시지를 출력하면 더 좋을 것 같습니다 😊 감사합니다.
- 0
- 2
- 86
질문&답변
2024.03.31
퀴즈13 질문입니다.
안녕하세요? 작성해주신 코드를 그냥 실행했을 때는 퀴즈가 바로 제시되지 않고 사용자 입력을 기다리는 문제가 있었습니다. 그래서 다음과 같이 while 문 내에서 주석으로 1, 2 작성한 부분의 코드를 수정해봤어요. while ((line = br.readLine()) != null) { System.out.println(line); // 2. 이 곳으로 이동하여 문제 먼저 출력 String answer = br.readLine(); String input = sc.next(); // System.out.println(line); // 1. 이 곳에 있던 코드를 System.out.print("정답 입력 ==> "); if (input.equals(answer)) { System.out.println("정답입니다!!!"); } else { System.out.println("틀렸습니다. 정답은 " + answer); } } 이렇게 했을 때 다음과 같이 올바로 퀴즈를 진행할 수 있었네요. 속담 퀴즈입니다. 빈 칸에 알맞은 말을 입력하시오. (주관식) ------------------------------------------------- (문제) 세 살 __ 여든까지 간다 정답 입력 => 버릇 정답입니다!!! (문제) 소 잃고 ___ 고친다 정답 입력 => 화장실 틀렸습니다. 정답은 외양간입니다. (문제) 천 리 길도 한 __부터 정답 입력 => 끼니 틀렸습니다. 정답은 걸음입니다. ------------------------------------------------- 모든 퀴즈가 완료되었습니다. 수고하셨습니다. ^^ 결과적으로 코드를 잘 작성해주셨습니다. 파일의 내용을 읽어와서 어떤 작업을 할 때 일반적으로는 while (true) { ... } 와 같은 무한 반복문 보다는 작성해주신 것처럼 while ((line = br.readLine()) != null) { ... } 와 같은 코드를 많이 사용합니다. 혹시 어떤 문제로 반복문을 올바로 탈출하지 못하고 계속 반복하는 경우를 방지하기 위해서 그렇습니다. 그리고 (속담 퀴즈입니다 ~ 수고하셨습니다) 부분을 try catch 문 외부에 넣거나 내부에 넣거나 큰 차이는 없습니다. 다만 (수고하셨습니다) 부분이 try catch 외부에 있게 되면 try 문 내에서 어떤 문제가 발생하여 퀴즈가 올바로 진행되지 않았을 경우에도 (수고하셨습니다) 라는 문장이 출력되는 경우가 발생할 수 있겠네요. 사용자는 퀴즈를 하나도 풀지 못했는데 수고했다는 메시지를 출력하면 프로그램의 동작이 다소 매끄럽지 않을 수 있습니다. 이런 경우에는 try catch 내에서 (수고하셨습니다) 라는 메시지를 출력하되, 예상치 못한 오류에 대비하여 catch 문 내에서 (문제가 발생하여 퀴즈가 올바로 진행되지 않았습니다) 정도의 메시지를 출력하면 더 좋을 것 같습니다 😊 감사합니다.
- 0
- 3
- 83