분류 전체보기
-
[springBoot]스프링부트 시작하기(김영한/ 스프링 입문)SpringBoot 2021. 1. 21. 00:44
인텔리J www.jetbrains.com/ko-kr/idea/download/#section=windows 다운로드 IntelliJ IDEA: 우수성과 인체 공학이 담긴 JetBrains Java IDE 최신 버전 다운로드: IntelliJ IDEA (Windows, macOS, Linux) www.jetbrains.com 다운로드에 가서 커뮤니티 버젼을 다운받아주면 된다. 스프링이 지원 안된다는 줄 알았지만, 자동완성같은 기능이 안되는 것이지 스프링 프로젝트를 하지 못하는 것이 아니다. 스프링 설정하기 start.spring.io/ Maven으로 할지 , Gradle로 할지 선택해준다. (현재 Maven보다 Gradle을 많이 사용하는 추세이고, 현재 진행해야할 프로젝트로 Gradle로 할 예정이라 G..
-
[python_Algorithm]배열 개념 알아보기(자료구조와 함께 배우는 알고리즘 입문)Python/Algorithm 2021. 1. 20. 21:05
배열의 필요성 # 학생 5명의 시험 점수를 입력받아 합계와 평균을 출력하기 print('학생 그룹 점수의 합계와 평균을 구합니다.') score1 = int(input('1번의 학생의 점수를 입력하세요.:')) score2 = int(input('2번의 학생의 점수를 입력하세요.:')) score3 = int(input('3번의 학생의 점수를 입력하세요.:')) score4 = int(input('4번의 학생의 점수를 입력하세요.:')) score5 = int(input('5번의 학생의 점수를 입력하세요.:')) total = 0; total += score1 total += score2 total += score3 total += score4 total += score5 print(f'합계는 {tota..
-
[Python_Algorithm] 다중 루프 알아보기(자료구조와 함께 배우는 알고리즘 입문)Python/Algorithm 2021. 1. 17. 15:33
단순 반복문이 아닌 반복문 안에 반복문이 들어갈 수도 있다. # 구구단 곱셈표 출력하기 print('-'*27) for i in range(1,10): for j in range(1,10): print(f'{i*j:3}',end='') print() print('-'*27) 구구단의 알고리즘의 모습은 이렇다. # 왼쪽 아래가 직각인 이등변 삼각형으로 * 출력하기 print('왼쪽 아래가 직각인 이등변 삼각형을 출력합니다.') n=int(input('짧은 변의 길이를 입력하세요.:')) for i in range(n): for j in range(i + 1): print('*', end='') print() # 행 변경 i는 0에서 부터 시작하므로 *을 출력하는 횟수인 j는 i 보다 1이 + 된 수만큼 출..
-
[Python_Algorithm]반복문 건너뛰기와 여러 범위 스캔하기(자료구조와 함께 배우는 알고리즘 입문)Python/Algorithm 2021. 1. 15. 23:53
# 1~12까지 8을 건너뛰고 출력하기1 for i in range(1,13): if i == 8: continue print(i,end='') print() 위의 결과는 8은 출력되진 않지만 range 범위만큼 반복을 해야하므로 효율적이지진 않다. # 1부터 12까지 8을 건너뛰고 출력하기2 for i in list(range(1,8))+list(range(9,13)): print(i,end='') print() 여기선 8을 건너뛰고 리스트를 만들어 출력하였다. 하지만 이도 for문에서 리스트의 내용을 하나씩 꺼내서 반복하기에 반복은 여전히 발생한다. # 2자리 양수(10~99) 입력받기 print('2자리 양수를 입력하세요.') while True: no = int(input('값을 입력하세요.:')..
-
[Python_Algorithm]직사각형 넓이로 변의 길이 구하기(자료구조와 함께 배우는 알고리즘 입문)Python/Algorithm 2021. 1. 12. 20:48
조건문의 종료 # 가로, 세로 길이가 정수이고 넓이가 area인 직사각형에서 변의 길이 나열하기 area= int(input('직사각형의 넓이를 입력하세요:')) for i in range(1,area+1): # 1부터 사각형의 넓이 계산 if i * i > area : break if area % i :continue print(f'{i}X{area//i}') i * i > area 일 때 break 문을 걸어줌으로써 조건문이 종료된다. 예시) 넓이가 30인데 i는 5인경우 5 X 5는 25로 가능 하지만 6인 경우는 6 X 6이 나와 안된다. continue 는 밑의 부분을 실행하지 않고 다시 조건문으로 돌아간다. 넓이로 나누어 떨어지지 않는 수는 다시 조건문으로 올라가 다음 값을 실행한다. (나머지..
-
[Python_Algorithm]양수만 입력 받기(자료구조와 함께 배우는 알고리즘 입문)Python/Algorithm 2021. 1. 10. 21:57
사용자에게서 값을 입력받을 때 양수만을 입력받고 싶다면 어떻게 해야 될지 보자. # 1부터 n까지 정수의 합 구하기 (n은 양수만 입력받음) print('1부터 n까지 정수의 합을 구합니다.') while True: n = int(input('n값 입력하세요.:')) if n>0: break #n이 0보다 커질 때까지 반복 sum = 0 i = 1 for i in range(1,n+1): sum += i # sum에 i를 더함 i += 1 # i에 1을 더함 print(f'1부터 {n}까지 정수의 합은 {sum}입니다.') 위에서 보듯이 0이나 음수값이 입력되면 다시 입력창이 나와 양수의 입력값을 받을때 까지 반복한다는 것을 볼 수 있다. while 문에서 보면 값으로 True 를 지정해서 주고있음을 볼..
-
[Python_Algorithm]반복 과정에서 조건 판단하기 3(자료구조와 함께 배우는 알고리즘 입문)Python/Algorithm 2021. 1. 9. 11:43
*를 n개 출력하고 w마다 줄바꿈하는 두가지의 방법이 있다. 방법1. # *를 n개 출력하되 w개마다 줄바꿈하기1 print('*를 출력합니다.') n = int(input('몇개를 출력할까요?')) w = int(input('몇개마다 줄바꿈할까요?')) for i in range(n): print('*',end='') if i % w == w -1: print() if n % w: print() 방법1은 for 문안에 if가 들어가 있기에 for 문이 실행될 때마다 if문도 실행되게 된다 i는 0부터 시작하기에 i%W(나머지) 가 w-1과 같을때 줄바꿈을 하게 된다. 마지막 단락의 if 문은 n이 w의 배수가 아닌 수일때 나머지 부분의 계산을 하여 줄바꿈을 한다. :0을 제외한 숫자는 true 니까 맨..
-
[Java_Basic]자바의 메모리 모델과 Object 클래스(윤성우의 열혈 Java 프로그래밍)Java/Basic 2021. 1. 6. 22:34
finalize 메소드 이전에 인스턴트는 힙영역에 존재한다는 것과 가비지 컬렉션이라는 것을 알게 되었다. finalize 메소드는 이 가비지 컬렉션을 비워주는 역할을 하는 메소드이다. 자바 가상 머신에서는 굳이 이 메소드를 호출해주지 않아도 이 역할을 해주므로 굳이 사용할 필요는 없는 메소드이지만 가비지 컬렉션의 이해를 돕기 위한 개념으로 나오게 되었다. 임베디드 같이 작은 메모리 공간에서 작업할 때 사용하게 된다. class Person{ String name; public Person(String name){ this.name = name; } @Override protected void finalize() throws Throwable{ super.finalize();//상위 클래스의 finaliz..