Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- ES6
- 깃허브
- 자바스크립트 jQuery
- 보안뉴스한줄요약
- 자바스크립트 객체
- 자바스크립트 기본 문법
- python
- 자바스크립트
- numpy
- 오라클
- 카카오프로젝트100
- 파이썬
- 자바스크립트 API
- 보안뉴스 한줄요약
- 랜섬웨어
- 보안뉴스 요약
- oracle db
- javascript
- 자바스크립트 node
- 보안뉴스
- Oracle SQL
- 카카오프로젝트 100
- GIT
- 보안뉴스요약
- php
- 다크웹
- 자바스크립트 prototype
- 자바스크립트 element api
- 카카오프로젝트
- oracle
Archives
- Today
- Total
FU11M00N
[ C++ ] C++ 포인터 | C++ 로또 , 랜덤 숫자, 최대값 구하기 본문
- 포인터
포인터는 실행 중 메모리의 주소 값
주소를 이용하여 메모리에 직접 값을 쓰거나 메모리로부터 값을 읽어올 수 있음.
- 포인터 변수
포인터, 즉 주소를 저장하는 변수
int n=5;
int *p; // 포인터 변수 p 선언
p = &n; // p 에는 n의 주소값이 들어가게 된다.
*p 를 출력하면, n 의 값 5가 출력되는 것을 알 수 있습니다.
#include <iostream>
using namespace std;
int main() {
int n = 5;
int* p;
p = &n;
cout << p << endl << *p;
return 0;
}
실행결과는 아래와 같습니다.
- C++ 랜덤 숫자 출력
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
int main() {
srand(time(NULL));
cout << rand() % 100 + 1 << endl; // 1-100 사이의 임의의 숫자 출력
}
- C++ 로또 프로그램 (중복 고려 x)
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
int main() {
srand(time(NULL));
for (int i = 0; i < 6; i++) {
cout << rand() % 45 + 1 << endl;
}
}
중복을 고려 한다면, 배열을 써서 값이 같으면 i 를 하나 감소시키고 다시 랜덤을 돌리면 된다.
- C++ 배열을 이용해 합과 최대값 구하기
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
void getMax() {
int arr[10];
int sum = 0, max=0;
for (int i = 0; i < 10; i++) {
arr[i] = rand() % 100 + 1;
sum += arr[i];
if (arr[i] > max) {
max = arr[i];
}
}
cout << "합 :" << sum << "최대값 : " << max;
}
int main() {
srand(time(NULL));
getMax();
}
- C++ 을 이용한 오름차순 / 내림차순 정렬
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
void up(int* arr){
int tmp = 0;
for (int i = 0; i < 9; i++) {
for (int j = i; j < 9; j++) {
if (arr[i] > arr[j]) {
tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
cout << arr[i] << " ";
}
}
void down(int* arr) {
int tmp = 0;
for (int i = 0; i < 9; i++) {
for (int j = i; j < 9; j++) {
if (arr[i] < arr[j]) {
tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
cout << arr[i] << " ";
}
}
void getMax() {
int arr[10];
int sum = 0, max = 0, tmp =0;
for (int i = 0; i < 10; i++) {
arr[i] = rand() % 100 + 1;
sum += arr[i];
if (arr[i] > max) {
max = arr[i];
}
}
cout << "합 :" << sum << "최대값 : " << max <<endl;
cout << "오름차순 정렬 ===> ";
up(arr);
cout <<endl<< "내림차순 정렬 ===> ";
down(arr);
}
int main() {
srand(time(NULL));
getMax();
return 0;
}
'Programming > C++' 카테고리의 다른 글
[ C++ ] 임의의 문자 알아맞추기 게임 (행맨) (0) | 2021.04.13 |
---|---|
[ C++ ] C++ 으로 구현한 은행프로그램 (feat. 동적할당) (0) | 2021.03.30 |
[ C++ ] 재밌는 티비 놀이 (0) | 2021.03.30 |
[ C++ ] C++ 객체 , 클래스 만들기 (0) | 2021.03.23 |
[ C++ ] namespace 예제, 데이터 타입, C++ 출력 (0) | 2021.03.10 |
Comments