5일차 22.09.26
Quiz 09
두 수를 입력 받아 두 수 사이의 합을 구하는 문제.
max, min이라는 변수를 통해서 작은 수 부터 차근차근 +1씩 더해가며 sum 에 더한 값을 계속 쌓아주면 최종적으로
두 수 사이의 합을 구할 수 있다.
Quiz 10
입력 값: 돈 ex) 17780
출력 값:
1000원의 개수 17 , 500원의 개수 1 , 100원의 개수 2 , 50원의 개수 1, 10원의 개수 3
반복문 안에 나누기를 사용하여 각각의 돈이 얼마가 나오는지 확인 할 수 있다.
Quiz 11
처음 정수를 입력 받아 배열의 크기를 정하고, 그 후에 반복문을 통해 배열에 값을 할당해준다.
최종적으로 값을 출력.
반복문 for
while과 사용법은 똑같지만 조금 더 가독성이 좋다.
for(초기값; boolean형 조건식; 반복 표현식) {
반복할 실행문;
}
for(int i = 0; i < 11; i++){} 와
int i =0;
while(i<11){ i++}과 같은 식이다.
수를 입력 받아 그 수가 소수인지 판별하는 코드.
수를 입력 받고 1~그 수까지 반복문을 통해 약수의 개수를 카운팅해준다.
카운트를 했을 때 1포함 자기자신만 약수로 가지는 소수는 약수의 개수가 2개이다.
최종적으로 약수의 개수가 2개인 경우 소수라고 출력, 아닌 경우 소수가 아님 이라고 출력을 한다.
크기가 100인 배열을 만들어, 그 안에 3배수만 넣어주는 코드.
실제 3씩 증가하는 변수를 만들어 배열 안에 할당해주면 편리하다.
Quiz 12
1 . 7~100 정수 중 7의 배수 출력
실제 조건문을 활용해서 7의 배수일 경우 출력을 하였으나, 더 간단하게 7씩 변수를 증가 시켜준다면 효율성을 높일 수 있다는 것을 배웠다.
2. 1~200 사이 9의 배수의 개수는 1씩 증가하는 i를 9로 나눴을 때 개수를 세어주는 count 변수를 하나씩 더해주면서 최종적으로 출력을 해주면 배수의 개수를 출력 할 수 있다.
3. 50~100까지의 합
4. 알파벳 A~ Z까지 출력
for문을 활용하여 초기값을 지정하고 원하는 수만큼 까지 조건을 걸어준 후 출력을 해주는 식
5. 구구단
원하는 숫자를 입력한 후 그 숫자에 대한 구구단을 출력해준다.
while문 활용 했던 것과 같은 방식으로 출력을 해준다.
Quiz 13
크기가 15인 배열에 1~15까지의 숫자를 할당해준다.
반복문 안에서 배열 안의 값들을 랜덤하게 치환해주어, 절대로 중복되지 않는 숫자 3개를 출력한다.
랜덤한 값을 통해 배열 안의 값을 바꿔주고, (temp라는 변수를 통해서 값을 치환 할 수 있다)
3개짜리 배열에 초기 3개의 값을 넣어주면 겹칠일이 없다.
중첩 반복문
for(int i = 1; i < 10; i++){
for(int j = 1; j < 10; j++){
}
}
반복문 안에 반복문을 통해 실제 한 번의 반복문으로 해결 할 수 없는 문제들을 해결 할 수 있다.
위의 예시를 보면 i =1 -> j = 1 ~ 9까지 반복 하고 i가 1씩 증가하면서 j = 1 ~ 9까지 계속 반복을 할 수 있는 코드이다.
거의 대부분의 문제를 해결하는데 필수적으로 사용이 되는 식이다.
Quiz 14
구구단을 만들기
2단부터~9단까지 이중 반복문을 사용하여 기존에 하나만 출력이 가능했던 구구단을 한 번에 출력을 할 수 있도록 만들어주는 좋은 수단이다.
오늘은 반복문 while 복습 및 반복문 for문을 배웠다. 아직까지 기본 이론을 아는 내용이라 수업을 쫓아가는데 있어서 어려움은 크지 않았다. 중간 중간 변수 값 변경에 대한 부분, 조금 더 생각을 할 수 있는 부분에 있어서 한층 더 배울 수 있는 하루 였고, 앞으로는 배우는 내용들이 익숙하지 않은 내용일 거 같아 조금 더 노력을 해야한다는 필요성을 느낀다. 기본적으로 반복문까지는 기본 중에 기본이기 때문에 이를 활용하여 더 딥하게 문제를 해결할 수 있어야 할 것 같다.