본문 바로가기

전체 글48

야구 숫자 게임 2 2.정답을 맞추기 위해 숫자를 입력하기서로 다른 3자리 수를 입력할 수 있다.동일한 숫자는 사용될 수 없다. 즉 숫자는 중복되지 않아야 한다.숫자만 입력 가능하며, 문자는 작성할 수 없다.3. 결과값 출력 및 게임 로직 적용하기정답과 입력값을 비교해 힌트를 "볼,스트라이크,아웃" 으로 표시한다.스트라이크 : 입력값과 정답을 비교해 같은 자리에 같은 숫자가 있는 경우볼 : 숫자는 같지만, 자리는 다른 경우아웃 : 숫자도 자리도 다른 경우3스트라이크의 경우 정답에 해당하고, 게임이 종료됨정답일 때, 표시하고 싶은 메세지를 지정할 것.올바르지 않은 입력값에 대해서는 오류 문구를 출력입력값이 문자, 중복되는 값처럼 요구사항과 맞지 않을 경우EX) 숫자를 입력하세요 (정답이 456인경우) -> 435 -> 1스트.. 2024. 9. 19.
야구 숫자 게임 lv0 - 야구 숫자 게임 규칙 3자리 숫자와 위치가 모두 맞으면 STRIKE 출력숫자는 1-9까지만 구성하기. 각 숫자는 한 번씩만 사용 가능.숫자와 자리의 위치가 맞으면 스트라이크 (S) 숫자만 맞으면 볼(B)숫자가 하나도 맞지 않을 경우 아웃 (OUT) 으로 표시 lv1 - 정답 숫자 생성하기 고려사항 3가지숫자 끼리의 중복 x  3자리 숫자.1-9 사이의 숫자. 두 가지 떠오른 방법.1. Collections. shuffle(list)를 이용할 것인지2. 정수의 난수 배열 생성과 크기 배열 생성  변수를 세팅할 지. (math.random()*9 +1) 사용   # 1번public class Main { public static void main(String[] args) { /.. 2024. 9. 13.
자바 예외 처리 (Exception Handling) 개념 정리 및 활용 예외와 오류 오류 (Error)는 일반적으로 회복이 불가능한 문제이다. 이는 시스템 레벨에서, 또는 주로 환경적인 이유로 발생. 코드의 문제로 발생하는 경우도 있지만, 일단 발생하는 경우 일반적으로 회복이 불가능하다. 에러가 발생한 경우 우리는 어떠한 에러로 프로그램이 종료되었는지를 확인하고 대응하다. 예외(Exception) 는 일반적으로 회복이 가능한 문제이다. 회복이 가능하다는 전제는 우리가 "그 예외가 발생할 수 있다는 것을 인지하고 대응" : checked 현실적으로 코드레벨에서 할 수 있는 문제상황에 대한 대응은 " 예외처리" 에 속한다.  예외의 종류 컴파일 에러(예외).java 파일을 .class 파일로 컴파일할때 발생하는 에러 대부분 여러분이 자바 프로그래밍 언어의 규칙을 지키지 않았기 .. 2024. 9. 12.
Trouble Shooting 계산기 과제 계산기 만들기 요구 조건 Lev1. 클래스 없이 기본적인 연산을 수행할 수 있는 계산기 만들기양의 정수(0 포함)를 입력받기사칙연산 기호(➕,➖,✖️,➗)를 입력받기 위에서 입력받은 양의 정수 2개와 사칙연산 기호를 사용하여 연산을 진행한 후 결과값을 출력하기 반복문을 사용하되, 반복의 종료를 알려주는 “exit” 문자열을 입력하기 전까지 무한으로 계산을 진행할 수 있도록 소스 코드를 수정하기 예외 처리 : 0으로 나누기와 같은 오류를 어떻게 처리할지 결정합니다.  Lev2. 클래스를 적용해 기본적인 연산을 수행할 수 있는 계산기 만들기 사칙연산을 수행 후, 결과값 반환 메서드 구현 & 연산 결과를 저장하는 컬렉션 타입 필드를 가진 Calculator 클래스를 생성Lv 1에서 구현한 App 클래스의 .. 2024. 9. 11.
캡슐화에 관한 고찰 #Getter, Setter캡슐화 encapsulation 객체 지향 프로그래밍에서 다음 2가지 측면이 있다. 객체의 속성(data fields)과 행위(메서드, methods)를 하나로 묶고,실제 구현 내용 일부를 외부에 감추어 은닉한다.  ?????? 뭐라는건가 싶다 ?????? 다음 학생성적관리를 자바 코드로 짜보자성적관리는 은닉이 필요하기에 적합하다고 판단했다.학생 클래스를 생성해 보자public class Student { #인스턴스 변수 private static int serialNum = 0; #모든 Student 객체에서 공유되는 학생 ID를 위한 정적 변수 private int studentId; #개별 학생의 고유 ID private int grade; .. 2024. 9. 10.
계산기 만들기 ver 1. 계산기의 기능을 먼저 생각해보았다. 기본적인 계산기 기능을 만들꺼기 때문에 사칙연산 기능이 필요했다.근데, 사칙연산 할때 나누기에서 문제가 발생했다.기본적으로 0을 나누지 못하기 때문이다. 그래서 if 문을 통해 사칙연산을 구성해 보았다if (operator, equlas("+")) { # 더하기 return num1 + num2;} else if (operator, equals("-")){ # 빼기 return num1 - num2;} else if (operator, equals("*")){ # 곱하기 return num1 * num2;} else if (operator, equals("/")) { # 문제의 나누기 if(num2 == 0) { return 0; } return .. 2024. 9. 9.