목록2024/04 (18)
우당탕탕 개발일지
1. 이메일 중복체크 1-1. saveMember.htmlhtml 파일의 일부만 들고 왔다. 이메일을 작성하는 input 태그에 onkeyup 속성을 사용하여 emailCheck 함수를 호출한다. onkeyup 속성을 사용하면 사용자가 작성할 때마다 함수를 불러올 수 있다. (아래 1-2. 참고) emailCheck 함수1. ajax 사용이를 사용하기 위해서는 head 태그에 작성해야 하는 scrpit가 있다.해당 내용은 jQuery CDN 홈페이지에서 찾아서 head에 붙여넣는다.2. 서버 측에 사용자가 입력하는 이메일을 전송 url : /member/email-checkmethod : post data : memberEmail 이름으로 사용자가 입력한 값 3. 서버 측에서 받은 Boolen 값에 ..
문제총점 = 중간(35) + 기말(45) + 과제(20)10개의 평점"A+", "A0", "A-", "B+", "B0", "B-", "c+", "C0", "C-", "D0" 10 개의 평점을 총점이 높은 순서대로 부여하는데, 각각의 평점은 같은 비율로 부여할 수 있다.예를 들어, N 명의 학생이 있을 경우 N/10 명의 학생들에게 동일한 평점을 부여할 수 있다. [ 입력값 ]1. 입력으로 각각의 학생들의 중간, 기말, 과제 점수가 주어짐2. 학점을 알고싶은 K 번째 학생의 번호 주어짐 K번째 학생의 평점을 구하여라 입출력 예 풀이 코드Scanner sc = new Scanner(System.in); int tc = sc.nextInt(); String[] str_fina..
문제N * N 퍼즐 모양에서 특정 길이 K를 갖는 단어가 들어갈 수 있는 자리의 수를 출력하는 프로그램 그림과 같은 5 * 5 퍼즐 모양이 있다고 가정한다. K = 3 일 때, 자리는 2가지( 1번 가로, 4번 가로 ) 경우이다. 퍼즐의 모양은 2차원 배열로 제공된다. 이때 흰색 부분은 1, 검은색 부분은 0 입출력 예 풀이먼저, 연속된 흰색 칸의 개수와 k 값과 동일해야 한다. 1이 몇번이나 반복하는지 알기 위해서는 2가지로 판별한다.1. 0이 나오기 전까지 1이 몇번 연속되는지 2. 마지막 인덱스가 1이며 1이 몇번 연속했는지 또한, 0이 나올 경우에는 1이 연속되는 값을 초기화 하여 1이 나올 부분을 위해 대기한다. 1. 가로 [ 첫번째 if문 ]1인지 확인 후, 연속된 횟수를 ..
문제"level" 과 같이 거꾸로 읽어도 제대로 읽은 것과 같은 문장이나 낱말을 회문(回文, palindrome)이라 한다.단어를 입력 받아 회문이면 1을 출력하고, 아니라면 0을 출력하는 프로그램 구현 입출력 예 풀이단어의 가운데 있는 문자를 기준으로 양쪽이 동일한지 확인하면 된다. level의 경우, {0번 문자와 4번 문자}, (1번 문자와 3번문자} 가 동일한지 확인하면 된다. 따라서 가운데 문자의 인덱스를 구한 후, 양쪽을 비교한다. 양쪽 문자 비교는 for문을 문자의 인덱스까지 반복한다. 코드Scanner sc = new Scanner(System.in); int tc = sc.nextInt(); for (int t = 0; t tc; t++) { ..
이전 게시물 : 2024.04.19 - [개발/회원제] - 회원제 프로젝트(3) 1. 회원정보 수정해당 화면에서 '내 정보 수정하기' 버튼 누르면 회원정보 수정 화면 나옴 1-1. updateMember.html회원 정보 수정 화면 '정보수정' 버튼 클릭 시, post 방식으로 수정한 데이터 서버에게 전송 1-2. MemberController.javaupdateForm 함수1. Get 방식 (화면 렌더링)2. session에서 로그인 정보 들고 옴loginEmail이라는 이름으로 회원의 이메일 주소를 가지고 있음. 3. memberService의 updateForm 함수를 통해서 회원 정보 가져옴. 4. 가져온 회원정보를 model에 담아서 전송함. 5. updateMember.html (1번) ..
문제 1. 숫자 1부터 순서대로 차례대로 말하되, “3” “6” “9” 가 들어가 있는 수는 말하지 않는다.2. "3" "6" "9"가 들어가 있는 수를 말하지 않는대신, 박수를 친다. 이 때, 박수는 해당 숫자가 들어간 개수만큼 쳐야 한다. 예를 들어 숫자 35의 경우 박수 한 번, 숫자 36의 경우 박수를 두번 쳐야 한다. 입력으로 정수 N 이 주어졌을 때, 1~N 까지의 숫자를 게임 규칙에 맞게 출력하는 프로그램을 작성하라.박수를 치는 부분은 숫자 대신, 박수 횟수에 맞게 “-“ 를 출력한다.여기서 주의해야 할 것은 박수 한 번 칠 때는 - 이며, 박수를 두 번 칠 때는 - - 가 아닌 -- 이다. 입출력 예 풀이1부터 확인하면서 n까지 숫자인지 박수인지 확인한다. 1. 하나의 숫자에 박수 ..
문제다음과 같은 조건 하에서 사재기를 하여 최대한의 이득 구하기 1. 원재는 연속된 N일 동안의 물건의 매매가를 예측하여 알고 있다. 2. 당국의 감시망에 걸리지 않기 위해 하루에 최대 1만큼 구입할 수 있다. 3. 판매는 얼마든지 할 수 있다.예를 들어 3일 동안의 매매가가 1, 2, 3 이라면 처음 두 날에 원료를 구매하여 마지막 날에 팔면 3의 이익을 얻을 수 있다. 입출력 예 풀이해당 문제는 주어진 판매가 배열의 마지막 원소에서부터 풀면 된다. 구매한 가격보다 판매가가 최고로 큰 경우에만 팔아야 하기 때문이다. 따라서 아래와 같은 방식으로 움직인다. 1. 마지막 원소를 가장 큰 수라고 가정한다. 2. 마지막 원소와 하나 앞의 원소의 크기를 비교 한다. 2-1. 마지막 ..
1. 회원 목록 1-1. MemberController.java 1. 회원목록 구하여 memberDTOList에 저장 >> memberService의 findAll 함수 호출 2. memberDTOList를 model에 담아 클라이언트에 전송 3. listMember.html 불러냄 @GetMapping public String findAll(Model model) { List memberDTOList = memberService.findAll(); // view에 가져갈 데이터를 model에 담아서 사용 model.addAttribute("memberList", memberDTOList); return "listMember"; } 1-2. MemberService.java findAll 함수 1. me..