일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- CSS
- JSP/Servlet
- ChatGPT
- 순환신경망
- 컴퓨터비전
- 데이터베이스
- JDBC
- rnn
- 딥러닝
- 혼공머신
- 머신러닝
- 파이썬
- 자바스크립트
- SQL
- 연습문제
- 데이터분석
- 자바스크립트심화
- 디버깅
- 중학수학
- 상속
- 개발일기
- JSP
- 중학1-1
- c언어
- 컴퓨터구조
- 자바
- 정보처리기사실기
- html/css
- 정보처리기사필기
- 자바 실습
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
메서드 5 - 메서드 실습 문제 풀기 : 두 수의 나눗셈 , 큰 수 비교하기 본문
3교시부터는 응용문제를 많이 풀어보았다. 선생님께서 문제를 풀 시간을 주시는데 오늘은 나도 상당히 많은 문제들을 혼자서 풀기도 했다. 함수가 뭔지 조금 알 것 같았다.
4교시 때 풀었던 약수 구하기부터는 정말 어려웠지만 사칙연산을 만들 수 있다는 것으로 정말 뿌듯했던 시간이었다.
그럼 풀었던 문제를 한번 살펴보자! 조금 전에 캡쳐하려고 보니 조금 틀린 코드가 있어서 고치기도 했다. 이젠 이런 부분도 잘 보이는 것이 참 신기했다. 자바에 조금씩 익숙해지고 있는 걸 느꼈다.
메서드 실습 문제 풀어보기
1. 두 수의 나눗셈 구하기
지난번에 학습일지를 쓸 때 이 부분은 내용을 쓰지 않아서 추가해본다. 3과 5를 나누는 문제인데 0으로만 출력이 되어 하나의 함수를 하나 더 써보았다.
이렇게 잘 출력이 되고 있다.
2. 덧셈, 뺄셈, 나눗셈, 곱셈이 가능한 메서드 만들기
덧셈, 뺄셈, 곱셈, 나눗셈을 출력하려면 어떤 메서드가 필요한지 생각해야 한다. 출력만 하면 되니 반환값은 필요 없고 매개변수는 있어야 한다. 이 문제는 혼자서 풀었는데 다 풀고 나서 정말 뿌듯했다.
이렇게 값이 잘 출력되었다.
이 문제는 약간 이해가 되지 않는다. 왜 % 연산을 했는데 5 % 2가 1이 되어야 하는데 0이 되는지 잘 모르겠다. 그 이유는 다음과 같다. % 연산을 처리하는 로직이 cal 메서드에 포함되지 않았기 때문이다. 현재 cal 메서드는 -, +, *, / 연산만 처리하도록 작성되어 있다. % 연산에 대한 처리가 없으므로, 코드가 실행될 때 기본값 0이 반환된다. 만약 % 연산을 하도록 처리하고 싶으면 코드를 다음과 같이 수정하면 될 것이다.
이제 1이 잘 출력이 되었다. 앞에서 난 + 연산자로 바꾸어보았는데 그때는 7이 잘 나왔다. 그건 조건문에 + 연산자가 있었기 때문이다. 이렇게 배운 내용을 하나하나 점검해보며 이해가 되지 않는 부분을 써보고 정리해보는 건 정말 중요한 것 같다. 이제 확실히 이해가 되었다.
3. 2개의 숫자 중 더 큰 수를 반환하는 메서드
2개의 숫자 중 더 큰 수를 반환해야 하므로 반환값이 있고 매개변수는 int여야 한다. 이 문제도 if문을 사용해서 같은지 다른지를 비교하는 문제였다. 앞의 문제와 비슷하지만 다른 점이 있다면 등호를 사용해서 푸는 문제라는 것이다.
처음에는 이 조건을 생각하는 것이 조금 어려웠다.
두 수를 10으로 해주면 큰 수가 0으로 나온다. 하지만 값을 바꾸어주면 괜찮아진다. 그 이유가 무엇일까?
이 코드는 두 수가 같으면 0을 반환하기로 되어 있기 때문이었다.
학습을 마치며
생각보다 어려운 문제들이 많았는데 잘 이해할 수 있어서 참 기뻤다. 근데 오늘 학습일지를 쓰면서 정리해보니 아직은 부족한 부분이 많이 보였다. 아마도 조건문과 반복문 학습을 아직 하지 않아서 그럴 것 같다. 앞의 수업도 처음부터 듣고 정리하다보면 분명 지금보다 이해력이 높아질 것 같다. 내일의 수업을 위해 오늘 배운 것을 꼭 기억해볼 것이다.
전에는 매개변수와 리턴값에 대해 생각해본 적이 없었는데, 문제를 풀 때 가장 먼저 무엇을 생각해야 하는지 알게 되었다. 선생님을 정말 잘 만난 것 같아 감사하다. 이처럼 자세하고 알기 쉽게 설명해주시는 분은 처음이었다.
지난번에 쓴 학습일지를 고치기도 하고 필요 없는 부분은 삭제하기도 했다. 이해력이 높아져서 그때는 이해하지 못했던 예제들도 모두 이해했다.
'프로그래밍 언어 > 자바' 카테고리의 다른 글
메서드 7 - 기존 메서드 호출하기 (0) | 2024.08.13 |
---|---|
메서드 6 - 완전수를 구하는 5단계 과정 실습 (0) | 2024.08.13 |
메서드 4 - 매개변수과 리턴값의 타입 4가지 (0) | 2024.08.13 |
메서드 3 - 함수의 정의와 호출, 사용방법에 대하여 (0) | 2024.08.13 |
메서드 2 - 다양한 메서드 유형 실습해보기 (0) | 2024.08.13 |