알고리즘과 자료구조! 수학 공식을 이용한다면 프로그램의 속도가 더 빨라지니깐 활용하면 당연히 좋아요. 저도 학교다닐때 배우긴했는데 정말 문제 풀다보면 알고리즘이랑 자료구조를 활용하면 되겠다 생각나는 코드가 있어요! 근데 생각만 남 쓸줄 모름ㅎ 공부하자..
재능을 이기려면 노력이....아주...많이..필요...
for( 초기식 ; 조건식 ; 증감식 ){ 본문 }
본문을 반복수행할 때 사용하는 반복문으로 for문은 초기값을 증감시켜서 조건식이 false가 될때까지 본문을 출력합니다. 초기식->조건식->본문->증감식 순으로 실행됩니다.
같은 결과여도 코드가 다를 수 있어요. 더 좋은 코드는 존재하지만 무조건 이렇게 해야하는 건 적어요 아직은 내가 이해하기 가장 쉬운방법으로 만들자!
1) for(int x=0;x<=10;x+=2) {System.out.println(x);}
2) for(int x=0;x<=5;x++) {System.out.println(2*x);}
3) for(int x=0;x<=10;x++) {if(x%2==0) {System.out.println(x);}}
이 세개는 모두 같은 결과 0 2 4 6 8 10을 출력합니다. 다만 if문을 사용한건 반복횟수가 11번이에요. 효율성을 따지면 반복횟수가 적은 나머지 두개가 효율적이지만 이 문제의 경우고 평소 활용도는 if문을 사용하는게 좋아요. 반복문으로 전체를 그리고 조건문으로 전체에서 공통점을 찾아 필터링 할 때 사용하는 방식에 익숙해집시다
정수 a,b를 입력받고 둘 사이의 정수 나열하기
1. 정수 a, b 입력
2. a가 b보다 크면 a부터 b까지의 수 출력
3. b가 a보다 크면 b부터 a까지의 수 출력
4. a와 b가 같다면 정수 하나만 출력
Scanner sc=new Scanner(System.in);
int a=sc.nextInt(), b=sc.nextInt();
sc.close();
if(a<b) {
for(int i=a;i<=b;i++) {
System.out.print(i+" ");
}
}else if(a>b) {
for(int i=b;i<=a;i++) {
System.out.print(i+" ");
}
}else {// a==b
System.out.println(a);
}
- println() : 문자열 마지막에 줄바꿈(\n)이 포함된 출력함수
- print() : 문자열을 나열하는 출력함수