로또생성기 만들기
로또 생성기를 만들어보자
먼저 로또번호를 생성하기 위해서는 무엇이 필요한지 나열한다.
- 로또번호는 랜덤함수로 생성해야한다.
- 보너스번호 가 존재한다면, 일반번호 와 보너스번호를 나누어 주어야 한다.
- 모든 코드가 순환하며, 내가 입력한 번호가 랜덤 생성한 번호와 같은지 검사해야한다.
예시를 보자.
이렇게 작성할 수 있다.
만약, 복권번호를 작은수 부터 나열한다고 가정하면, Sort함수를 사용해서 값들을 정렬해야 한다.
재귀함수 를 사용한 파보나치 수열
재귀함수를 사용한 피보나치를 출력한다.
코드는 매우 간단하다. 예시를 보자.
단 3줄만 들어가면 출력할 수 있다.
쉽게 이해가 가지 않는다면, 풀어서 이해해보자.
파보나치 수열의 5번째 수를 출력하려고 한다고 가정한다.
파보나치 수열의 5번 째 수는 0 1 1 2 3 임으로 3이다. 어째서 3이 나오는지를 풀어서 해석해보면,
n5 = [n4 + n3] = [n3 + n2] + [n2 + n1] = [n2 + n1] + 1 + 1 + 0 = 1 + 0 + 1 + 1 + 0 = 3
n4 = [n3 + n2] = [n2 + n1] + 1 = 1 + 0 + 1 = 2
n3 = [n2 + n1] = 1 + 0 = 1
n2 = 1
n1 = 0
위와같이 나타난다.
정리하면, 파보나치 수열은 수많은 n1+n2로 이루어져 있고, 그것을 밑부터 전부 더해서 결과값을 도출하게 된다.
이렇게 재귀함수를 풀어서 계산하거나 어떠한 함수의 규칙성을 찾아내면 쉽게 코드로 구현할 수 있다.
출력 예시는 다음과 같다.
각 학생의 평균점과 합점, 그리고 총점을 구하는 코드
각각 학생의 평균점과 합점 그리고 총점을 구하는 2차원배열과 코드를 만들어본다.
먼저 필요한 데이터 산출을 나열해보자.
- 학생들의 점수를 받아올 배열이 필요하다.
- 배열값들의 총점을 구해야한다.
- 배열값들의 평균점을 구해야한다.
- 배열값들의 합점을 구해야 한다.
변수 간의 저장범위 와 조정범위
변수간의 저장범위와 조정범위를 알아보자.
변수는 전역변수, 지역변수 가 있다. 각각의 특징을 코드 예시로 살펴보면서 알아본다.
전역변수
쉽게 풀어쓰자면, 전역변수는 말 그대로 전(체 영)역 변수 라고 이해하면 된다.
int main()코드 이외의 부분에 작성되는 모든 데이터는 전역 변수 라고 한다.
자기자신 위에 선언된 모든 전역변수는 참조할 수 있다.
C++임으로, 순서에 유의해서 작성하도록 하자.
지역변수
쉽게 풀어쓰자면, 지역변수는 일정 지역에서만 활용할 수 있는 변수 라고 이해하면 된다.
{} 괄호 안에 넣은 변수는 {} 괄호를 벗어나면 사용할 수 없다. 초기화되어 사라지기 때문이다.
그렇기 때문에, { } 지역 안에서 사용한다. 한정된 지역에서 사용한다고 하여 지역변수 이다.
'서울게임아카데미 교육과정 6개월 C++ ~ DirectX2D' 카테고리의 다른 글
9일차 19.stream and buffer 20.Pointer 21.Pointer2 (0) | 2023.03.16 |
---|---|
8일차. 16.Variable_scope 17.memory_structure (0) | 2023.03.15 |
6일차 13.Array, 14.Array_sort, 15. 2D_array (0) | 2023.03.09 |
5일차 11,12.function 13. Array (0) | 2023.03.08 |
4일차 08.RandomNumber(무작위 난수), 09.while, 10.for (0) | 2023.03.03 |