kh 정보 교육원 9,10 일차
이상하다 어제 분명 9일차를 쓴 것 같은데.. 아님말고
반복문!!!!!!!
for문
// 실행문장을 원하는 횟수만큼 반복해줌
// 문법
// for(초기식 ; 조건식 ; 증감식) { 실행문장; }
1부터 10까지 출력하는 프로그램 작성하기
for ( int i = 1; i <= 10; i++) {
System.out.print(i + " ");
}
예상 출력 결과
0 1 2 3 4 5 6 7 8 9 10
정답
while문
// 문법
// 초기식;
// while(조건식) { 실행문장; 증가식; }
같은 문제
int i = 0;
while(i <= 10) {
System.out.print(i + " ");
i++;
}
예상 출력 결과
0 1 2 3 4 5 6 7 8 9 10
정답
do while문
// 문법
// 초기식;
// do {
// 실행문장; 증감식;
// } while (조건식)
int i = 0;
do {
System.out.print(i + " ");
i++
} while(i < 10);
예상 출력 결과
0 1 2 3 4 5 6 7 8 9
정답
반복문을 배우고 내주신 문제는 기초문제 제외하고 전부 어려웠지만 훨씬 어려웠던 문제를 꼽아서 적자면
정수를 입력받아 해당 정수의 단 부터 9단까지 출력 하시오 단, 9이상의 숫자는 입력 x 였다
갑자기 중첩 for문이 나와서 당황한것도 있지만 반복문의 동작은 이해하였지만 문제를 풀어나가는 응용이 부족했다
위에 문제는 이런식으로 풀었다
Scanner sc = new Scanner(System.in); // 스캐너 임폴트
int dan = sc.nextInt(); //정수형 변수 dan에 입력받기
if (dan <= 9) { // 9이상일 경우 반복 안함
for (int i = dan; i <= 9; i++) { // 시작할 단 9단까지
for (int j = 1; j <= 9; j++) { // 곱해지는 값 1~9
System.out.println(i + " x " + j + " = " + i * j); // 입력받은 dan을 i로 대입하여 i로 적었다
}
}
}
길다 길어 학원에서 같이 풀어보고 집에서 혼자 해봤다
이건 문제 풀이가 기억이 나는건지 내가 풀어버린건지 모르겠다..
다음 날 반복문 배운지 하루?이틀만에 바로 배열로 들어간다...
int [] nums; // 배열의 선언
nums = new int [10] // 배열의 생성(할당)
nums[0] = 1; // 배열의 초기화
배열이 10개 생성 됐다면 각각의 배열의 주소값은 0 ~ 9 로 총 10개다
int [] nums = new int[10]; // 배열의 선언과 생성 동시에 가능!
길이가 10인 배열을 선언하고 1부터 10까지의 값을 반복문을 이용하여
순서대로 배열 인덱스에 넣은 후 그 값을 출력하세요.
int [] nums = new int[10];
for (int i = 0; i < 10; i++) { // 10 자리에 nums.length를 넣어도 된다 위쪽 for 문이 초기화 식이다
nums[i] = i + 1;
}
for (int i = 0; i < 10l i++) {
System.out.print(nums[i] + " ");
}
출력 결과
역순으로 출력하기
int [] nums = new int [10];
for (int i = 0;i < nums.length; i++) { // 일단 초기화
num[i] = i + 1;
}
for (int i = nums.length-1; i >= 0; i-- ) {
System.out.print(nums[i] + " ");
}
어려운 문제가 너무 많아서 복습하고 잠 잘 시간도 부족하다 파이팅