💻dev

문제 설명 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩 센다. 입력 첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 '-', '='로만 이루어져 있다. 단어는 크로아티아 알파벳으로 이루..
문제 설명 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. 입력 5 출력 * *** ***** ******* ********* ******* ***** *** * 풀이 n = int(input()) for i in range(1,n): answer=(2*i-1)*"*" print(" "*(n-i)+answer) for i in range(n,0,-1): answer=(2*i-1)*"*" print(" "*(n-i)+answer)
문제 설명 인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치훈이의 전공평점을 계산해주는 프로그램을 작성해보자. 전공평점은 전공과목별 (학점 × 과목평점)의 합을 학점의 총합으로 나눈 값이다. 인하대학교 컴퓨터공학과의 등급에 따른 과목평점은 다음 표와 같다. A+ 4.5 A0 4.0 B+ 3.5 B0 3.0 C+ 2.5 C0 2.0 D+ 1.5 D0 1.0 F 0.0 P/F 과목의 경우 등급이 P또는 F로 표시되는데, 등급이 P인 과목은 계산에서 제외해야 한다. 과연 치훈이는 무사히 졸업할 수 있을까? 입력 20줄에 걸쳐 치훈이가 수강한 전공과목의 과목명, 학점, 등급이 공..
인터페이스는 코드로만 이해하려고 하면 모호하고 이상하게 머리에 잘 안 들어온다. 그러나 포기는 금물. 어떤 개념이라도 예시를 들면 비교적 쉽게 이해가 된다. 이 글에서는 내가 남은 일생동안(?) 더이상 헷갈리지 않기 위해 기억에 남을 만한 예제를 만들어 작성해보려고한다. 1. 인터페이스는 왜 필요한가? 나는 뮤지컬 공연장의 티켓판매를 맡고 있다. 관객이 예매내역을 보여주면 나는 티켓을 준다. 인터파크 예매내역이면 인터파크 티켓을 준다. 예스24 예매내역이면 예스24 티켓을 준다. 이러한 케이스를 코드로 담아보자. 일단 Ticket, Interpark, Yes24, Manager 클래스를 작성하자. class Ticket { String name; void setName(String name) { this..
문제 설명 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 갈색으로 색칠된 격자의 개수는 기억했지만, 전체 카펫의 크기는 기억하지 못했습니다. Leo가 본 카펫에서 갈색 격자의 수 brown, 노란색 격자의 수 yellow가 매개변수로 주어질 때 카펫의 가로, 세로 크기를 순서대로 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 갈색 격자의 수 brown은 8 이상 5,000 이하인 자연수입니다. 노란색 격자의 수 yellow는 1 이상 2,000,000 이하인 자연수입니다. 카펫의 가로 길이는 세로 길이와 같거나, 세로 길이보다 ..
JUit 개발한 기능을 실행해서 테스트 할 때 자바의 main 메서드를 통해서 실행하거나, 웹 애플리케이션의 컨트롤러를 통해서 해당 기능을 실행한다. 이러한 방법은 준비하고 실행하는데 오래 걸리고, 반복 실행하기 어렵고 여러 테스트를 한번에 실행하기 어렵다는 단점이 있다. 자바는 JUnit이라는 프레임워크로 테스트를 실행해서 이러한 문제를 해결한다. import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.*; ... @AfterEach public void afterEach() { repository.clearStore(); } @Test pub..
자바빈(JavaBean) 일반적으로 데이터를 표현하고 관리하는 데 사용되는 클래스입니다. 자바빈은 특정한 규칙을 따르는 클래스로서, 클래스 내부에 프로퍼티(Property)를 정의하고, 이 프로퍼티에 접근할 수 있는 Getter/Setter 메소드를 제공해야 합니다. 자바빈의 프로퍼티는 일반적으로 데이터를 저장하고 반환하는 용도로 사용됩니다. 자바빈 등록 방법 public class Person { private String name; private int age; public Person() {} public String getName() { return this.name; } public void setName(String name) { this.name = name; } public int getA..
Spring Framework에서는 @ResponseBody와 @RequestBody 어노테이션을 사용하여 HTTP 요청과 응답을 처리할 수 있습니다. 이러한 어노테이션을 사용하면 Spring MVC 컨트롤러에서 데이터를 읽고 쓰는 것이 간단해집니다. @ResponseBody : 해당 메소드가 HTTP 응답 본문을 반환 @RequestBody : 해당 메소드가 HTTP 요청 본문을 반환 이때 본문에 담기는 데이터 형식 중 가장 대표적인 것은 JSON이다. @ResponseBody Spring MVC 컨트롤러에서 @ResponseBody 어노테이션을 사용하면 해당 메소드가 HTTP 응답 본문의 내용을 반환한다는 것을 나타냅니다. 반환된 데이터는 자동으로 HTTP 응답 본문에 직렬화되고, 클라이언트로 전송됩..
쁜새
'💻dev' 카테고리의 글 목록 (15 Page)