[Java] 회원 관리 시스템 구현하기 - 2탄
·
☁️ 구름 x 카카오 Deep Dive 풀스택/Java
오늘은 지난번에 간단하게 구현했던 회원 관리 시스템에서 할인 정책을 추가할 거예요. 앞서 구현한 1탄 먼저 보고 와주세요! [Java] 회원 관리 시스템 구현하기 - 1탄오늘은 순수 자바 코드로 간단한 회원 관리 시스템을 구현해볼 거예요!저는 인텔리제이를 사용하고 있습니다. :) 📌 프로젝트 구조   📌 Grade.java (회원 등급) 회원 등급은 일반 등급과 VIP 등zero-talk.tistory.com   📌 프로젝트 구조    📌 DiscountPolicy.java (할인 정책 인터페이스)package hello.core.discount;import hello.core.member.Member;public interface DiscountPolicy { // @return 할인 대상..
[Java] 회원 관리 시스템 구현하기 - 1탄
·
☁️ 구름 x 카카오 Deep Dive 풀스택/Java
오늘은 순수 자바 코드로 간단한 회원 관리 시스템을 구현해볼 거예요!저는 인텔리제이를 사용하고 있습니다. :) 📌 프로젝트 구조   📌 Grade.java (회원 등급) 회원 등급은 일반 등급과 VIP 등급으로 나누었어요.왜냐하면 추후에 등급에 따른 할인 정책을 적용할 예정이기 때문이죠.package hello.core.member;public enum Grade { BASIC, VIP}   📌 Member.java (회원 객체) 회원은 간단하게 이름, id, 등급을 멤버 변수로 가질 거예요.Getter 및 Setter를 사용하여 값에 접근이 가능합니다.package hello.core.member;public class Member { private Long id; priva..
프로그래머스 0단계 순서쌍의 개수 (Java 자바)
·
💻 코딩테스트/programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr    📝 문제 설명순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.  🔎 해설1. 반복문을 사용하여 주어진 임의의 정수 n의 약수를 구한다.2. n의 약수로 나눈 나머지가 0일 경우 answer를 카운트한다.  ✅ 코드class Solution { public int solution(int n) { int answer = 0; for (i..
프로그래머스 0단계 제곱수 판별하기 (Java 자바)
·
💻 코딩테스트/programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr    📝 문제 설명어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.  🔎 해설1. Math.sqrt() 사용 (제곱근을 구하는 메소드)2. 삼항연상자를 사용하여 코드를 간결하게 작성3. 임의의 정수 n으로 나눈 나머지가 0이라면 1을 리턴하고4. 그렇지 않으면 2를 리턴한다.  ✅ 코드class Solution { public int solution(int n) { int answer = 0; ..
프로그래머스 0단계 분수의 덧셈 (Java 자바)
·
💻 코딩테스트/programmers
풀이분수의 덧셈 과정을 코드로 변환하는 것과 같다. 조건이 기약분수일 경우 최대공약수를 구하는 것을 기억할 것. 분모와 분자 중 어떤 게 더 큰 값인지 알 수 없으므로 && 연산자를 사용하여 max 값을 찾는다. max를 찾으면 최대공약수를 업데이트 하고 약분을 한다. 그 값을 배열에 넣으면 끝. 원래는 맨 위에 있던 int[] answer = { }; 를 아래쪽으로 옮겼다. 1. 분수의 덧셈을 위해 통분한다. 통분 결과를 저장할 변수 numer, denom을 생성한다.int numer = numer1 * denom2 + numer2 * denom1;int denom = denom1 * denom2;  2. 최대공약수를 구한다 for (int i=1; i  3. 약분한다.numer = numer/max;..
프로그래머스 0단계 양꼬치 (Java 자바)
·
💻 코딩테스트/programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr      풀이양꼬치 + 음료수 = 총합이므로 먼저 n * 12000 + k * 2000이다. 여기서 양꼬치를 10인분 먹었을 때 음료수 한 개가 공짜이므로 k에서 양꼬치 n을 10으로 나눴을 때 나머지가 0이 되는 것을 빼야 한다.  전체 코드 (오답) *아래에 정답 코드가 있다.class Solution { public int solution(int n, int k) { int answer = 0; if (n == 10) { answer = n * 12000 + (k-1) * 2000; ..
프로그래머스 1단계 약수의 합 (Java 자바)
·
💻 코딩테스트/programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr      풀이정수 n의 약수를 구하는 방법은 1부터 n까지 어떤 값으로 나눴을 때 나머지가 0이 되면 그 수는 정수 n의 약수임을 뜻한다. 예를들면 정수 10이 있다고 가정하자. 10을 1, 2, 5, 10으로 나누면 나머지가 0이고 1, 2, 5, 10은 곧 10의 약수라는 의미가 된다.  1. 정수 n의 약수를 구하는 방법은 1부터 n까지 어떤 값으로 나눴을 때 for (int i = 1; i   2. 나머지가 0이 되면 그 수는 정수 n의 약수 if (n % i == 0) { }  3. 약수의 합answer += i;  전체 코드class Solu..
프로그래머스 0단계 각도기 (Java 자바)
·
💻 코딩테스트/programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr      풀이해당 문제는 if문을 사용할 수 있느냐의 문제이다. 정확히는 if, else if, else문을. 1. 예각일 때if (0  2. 직각일 때else if (angle == 90) { answer = 2; }  4. 둔각일 때else if (90  5. 평각일 때else { answer = 4; }  전체 코드class Solution { public int solution(int angle) { int answer = 0; if (0