1. 1주차 수업 회고 ¶
JS와 JAVA 사이에 접점이 있을 것이라 생각하고 JAVA를 배우겠다고 투표했다.
오늘 둘 사이에 별로 큰 접점이 없다는 것을 알았지만 상관없다.
어차피 JAVA도 처음 해보는 것이니 분명 새로운 것을 많이 배울 수 있을 것이다.
오늘 둘 사이에 별로 큰 접점이 없다는 것을 알았지만 상관없다.
어차피 JAVA도 처음 해보는 것이니 분명 새로운 것을 많이 배울 수 있을 것이다.
2.1. assignment 1 ¶
1부터 100까지의 정수 중에서 짝수들의 합을 계산하여 결과값을 출력하는 프로그램을 구현한다.
조건 : while문을 사용하고, if 문은 사용하지 않도록 한다.
조건 : while문을 사용하고, if 문은 사용하지 않도록 한다.
package start_java; public class Hello { public static void main(String[] args) { int i=1, sum=0; while(i<=100) { sum += i; i++; } System.out.print(sum); } }
2.2. assignment 2 ¶
주어진 10진수를 2진수로 변환하는 프로그램을 구현한다.
2번에서 12345같은 꽤 큰 수를 입력하면 이상한 값이 출력되는 것을 방지하기 위해 long 형을 사용했다. 하지만 그래도 표현상 한계가 있다.
배열을 사용하는 풀이가 가장 편한 것 같다. 자바에도 스택이 있는 지 모르겠다. 2번 풀이를 추가해야 함.
package start_java; import java.util.Scanner; public class Hello { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); long digit=1, sum=0; while(n!=0) { sum += n%2 * digit; n /= 2; digit *= 10; } System.out.print(sum+"(2)"); scanner.close(); } }문법 자체는 c++과 많이 다르지 않은 것 같다.
2번에서 12345같은 꽤 큰 수를 입력하면 이상한 값이 출력되는 것을 방지하기 위해 long 형을 사용했다. 하지만 그래도 표현상 한계가 있다.
배열을 사용하는 풀이가 가장 편한 것 같다. 자바에도 스택이 있는 지 모르겠다. 2번 풀이를 추가해야 함.
3.1. assignment 1 ¶
주어진 배열의 항목에서 최댓값 구하기
int[] array = {1, 5, 3, 8, 2}
int[] array = {1, 5, 3, 8, 2}
package start_java; public class Hello { public static void main(String[] args) { int[] array = {1, 5, 3, 8, 2}; int max = 0; for(int i=0; i<5; i++) { max = ((max < array[i]) ? array[i] : max); } System.out.print(max); } }삼항연산자를 써서 풀어봤다.
4. 4주차 수업 회고 ¶
자바에서도 매개변수에 디폴트값을 넣는 게 가능한지 궁금했는데, 물론 그냥 필드를 선언할 때 값을 지정해주면 그만이다.
근데 자바나 C에선 new function()으로 함수를 생성할 때 매개변수의 입력 경우의 수에 따라 함수를 재정의해주어야 한다.
C에서는
같은 형태로 매개변수에 디폴트값을 넣어 하나의 함수로도 매개변수가 2개, 3개일 때 동시에 사용할 수 있다.
이런 형태가 java 클래스의 생성자에서도 쓰일 수 있는지 시험해봐야겠다.
근데 자바나 C에선 new function()으로 함수를 생성할 때 매개변수의 입력 경우의 수에 따라 함수를 재정의해주어야 한다.
C에서는
void Function(char param1, int param2, double param3=9.8);
같은 형태로 매개변수에 디폴트값을 넣어 하나의 함수로도 매개변수가 2개, 3개일 때 동시에 사용할 수 있다.
이런 형태가 java 클래스의 생성자에서도 쓰일 수 있는지 시험해봐야겠다.