728x90

전체 글 331

(Python) 반복문 예제 3

1. 리스트에서 20 보다 작은 3의 배수를 출력하라 리스트 = [13, 21, 12, 14, 30, 18] 12 18 정답확인 -> 하나 이상의 조건을 비교할 때는 논리 연산자를 사용해야겠죠? 두 조건이 모두 참일 때만 실행돼야 하므로 and 연산자를 사용합니다. 또한 코드의 가독성 향상을 위해 두 조건을 괄호로 구분했습니다. 괄호가 없어도 코드는 같은 동작을 합니다. 리스트 = [13, 21, 12, 14, 30, 18] for 변수 in 리스트: if (변수 < 20) and (변수 % 3 == 0): print(변수) and, or, not이 기억나지 않으신 분들은 3장 분기문을 복습해주세요. 2. 리스트에서 세 글자 이상의 문자를 화면에 출력하라 리스트 = ["I", "study", "pytho..

알고리즘 2022.03.30

(Python) 반복문 예제 2

1. 리스트에는 세 개의 숫자가 바인딩돼 있다. 리스트 = [1, 2, 3] for문을 사용해서 다음과 같이 출력하라. 3 x 1 = 3 3 x 2 = 6 3 x 3 = 9 정답확인 -> 어려워 보인다면, for문을 사용하지 않고 풀어서 코드를 작성해야 합니다. 핵심은 print() 함수에서 3 * 변수 부분입니다. 변수를 활용해서 원하는 값을 만들어 냈습니다. 변수 = 1 print("3 x ", 변수, "=", 3 * 변수) 변수 = 2 print("3 x ", 변수, "=", 3 * 변수) 변수 = 2 print("3 x ", 변수, "=", 3 * 변수) 값만 변하고 있기 때문에 쉽게 for문으로 작성할 수 있습니다. 리스트 = [1, 2, 3] for 변수 in 리스트: print("3 x ",..

알고리즘 2022.03.29

(Python) for 반복문 예제 5문제

1. 다음 코드를 for문으로 작성하라. 변수 = 10 print(변수) 변수 = 20 print(변수) 변수 = 30 print(변수) 정답확인 -> for문은 동일한 루틴을 반복해서 실행하는 문법이었습니다. 우선 문제에서 변하지 않고 반복되는 코드를 찾아보세요. print(변수) 부분이죠? 변하는 부분은 변수에 값을 대입하는 코드입니다. 변수 = 10 print(변수) 변수 = 20 print(변수) 변수 = 30 print(변수) 반복되는 코드는 들여쓰기로 표현하고 for문에서 변하는 부분을 기술해 줍니다. for 변수 in [10, 20, 30]: print(변수) 다음과 같이 리스트 변수에 데이터를 바인딩하고, 변수를 for문의 자료구조 자리에 넣어줘도 됩니다. 리스트 = [10, 20, 30]..

알고리즘 2022.03.28

(Java) 로그관리! Logger 사용 이유 및 설정 방법

개발자라면 꼭 필요한 Logger를 통한 로그관리 방법과 사용하는 이유 및 설정방법을 알아보자 ! 먼저 사용방법은 간단하다. 로깅 라이브러리는 @slf4j 을 사용하여 내가 로그를 남길 컨트롤러 클래스에 선언을 해주고 메소드 내에서 사용하면 된다. @slf4j public class MainController(){ private final Logger LOGGER = LoggerFactory.getLogger(MainController.class.getName()); public void moveMainPage(){ LOGGER.info("Hello world!"); } } 그럼 다음과 같이 콘솔창에 찍힐 것이다(자세한 정보가 함께 출력!!) (참고로 로그 레벨은 TRACE > DEBUG > INFO >..

JAVA 2022.03.27

(파이썬)분기문(if) 예제 3 with Dictionary (2문제만)

1. 아래와 같이 fruit 딕셔너리가 정의되어 있다. 사용자가 입력한 값이 딕셔너리 키 (key) 값에 포함되었다면 "정답입니다"를 아닐 경우 "오답입니다" 출력하라. fruit = {"봄" : "딸기", "여름" : "토마토", "가을" : "사과"} >> 제가좋아하는계절은: 봄 정답입니다. 정답확인 -> fruit = {"봄" : "딸기", "여름" : "토마토", "가을" : "사과"} user = input("제가좋아하는계절은: ") if user in fruit: print("정답입니다.") else: print("오답입니다.") 2. 아래와 같이 fruit 딕셔너리가 정의되어 있다. 사용자가 입력한 값이 딕셔너리 값 (value)에 포함되었다면 "정답입니다"를 아닐 경우 "오답입니다" 출력하..

알고리즘 2022.03.27

(JPA) Error attempting to apply AttributeConverter 에러 관련 글(feat. @Converter 사용시)

컬럼에서 DB에 데이터를 변환하는 @Converter 어노테이션을 쓰다가 아래와 같은 에러와 마주치게 되었다. JpaSystemException: Error attempting to apply AttributeConverter 이를 해결하기 위해 Converter를 구현하는 인터페이스를 살펴보기로 했다. JpaAttributeConverter 인터페이스와 구현체 JpaAttributeConverterImpl 는 JpaAttributeConverter 인터페이스의 표준 구현체이다. attributeConverterBean 이라는 멤버변수에 AttributeConverter인터페이스를 구현한 커스텀 컨버터들을 가지고 있다가 경우에 따라서 관계형 값을 도메인 값으로, 도메인 값을 관계형 값으로 변환을 해준다...

JPA 2022.03.26

(파이썬)분기문(if) 예제 2

1. 사용자로부터 하나의 숫자를 입력 받고 짝수/홀수를 판별하라. >> 30 짝수 정답확인 -> user = input("") if int(user) % 2 == 0: print("짝수") else: print("홀수") 2. 사용자로부터 값을 입력받은 후 해당 값에 20을 더한 값을 출력하라. 단 사용자가 입력한 값과 20을 더한 계산 값이 255를 초과하는 경우 255를 출력해야 한다. >> 입력값: 200 출력값: 220 >> 입력값: 240 출력값: 255 정답확인 -> user = input("입력값: ") num = 20 + int(user) if num > 255: print(255) else: print(num) 3. 사용자로부터 하나의 값을 입력받은 후 해당 값에 20을 뺀 값을 출력하라..

알고리즘 2022.03.26

파이썬 분기문(if문) 예제

1. 아래 코드의 출력 결과를 예상하라 if 4 조건을 만족하지 않기 때문에 아무 결과도 출력되지 않습니다. 2. 아래 코드의 출력 결과를 예상하라 if 4 조건을 만족하지 않기 때문에 else에서 들여쓰기 된 문장이 실행됩니다. Hi, there. 3. 아래 코드의 출력 결과를 예상하라 if True : print ("1") print ("2") else : print("3") print("4") 정답확인 -> 1 2 4 4. 아래 코드의 출력 결과를 예상하라 if True : if False: print("1") print("2") ..

알고리즘 2022.03.25

(Python 자료형) 딕셔너리(Dictionary) 내장 메서드 활용

1. 다음의 딕셔너리에서 values 값으로만 구성된 리스트를 생성하라. icecream = {'탱크보이': 1200, '폴라포': 1200, '빵빠레': 1800, '월드콘': 1500, '메로나': 1000} 정답확인 -> icecream = {'탱크보이': 1200, '폴라포': 1200, '빵빠레': 1800, '월드콘': 1500, '메로나': 1000} price = list(icecream.values()) print(price) 2. icecream 딕셔너리에서 아이스크림 판매 금액의 총합을 출력하라. icecream = {'탱크보이': 1200, '폴라포': 1200, '빵빠레': 1800, '월드콘': 1500, '메로나': 1000} 출력 예시: 6700 정답확인 -> icecream..

알고리즘 2022.03.23

[디자인 패턴]Builder pattern 이란?

빌더 패턴(Builder pattern) Builder 패턴은 인스턴스를 생성할 때 생성자(Constructor)만을 통해서 생성하는데는 어려움이 있어서 고안된 패턴이다. 클래스에 생성자 인자가 많다면 Builder 패턴을 사용하면 좋다. 왜냐하면 생성자 인자가 너무 많다면 어떠한 인자가 어떠한 값을 나타내는지 알기 어렵기 때문이다. 코드를 보면서 이해해보자. public class User { private int userIdx; // 선택 private String name; // 필수 private String part; // 필수 private int age; // 선택 private String email; // 선택 } 위와 같은 User 클래스에서 필수적으로 받아야 하는 정보, 선택적으로 받..

JAVA 2022.03.22
728x90