728x90
반응형
포인터란?
포인터는 실행 중 메모리의 주소 값
주소를 이용하여 메모리에 직접 값을 쓰거나 메모리로부터 값을 읽어올 수 있다.
포인터 변수
포인터, 즉 주소를 저장하는 변수
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;
}
재밌다!!!
728x90
반응형
'Archive > Develop' 카테고리의 다른 글
[ CodeUp ] Python 기초 100제 | 6008 번 풀이 (0) | 2021.03.10 |
---|---|
[ CodeUp ] Python 기초 100제 | 6007 번 풀이 (0) | 2021.03.10 |
[ C++ ] 객체지향 언어 C++ | C++ 주석, namespace 예제, 데이터 타입, C++ 출력하기 (0) | 2021.03.09 |
[ Oracle ] 변환함수 (to_char, to_number, to_date) (0) | 2021.03.08 |
[ 인공지능 ] Google Colab 이란? | Colab 사용하기 | Colab 기초 사용법 (3) | 2021.03.08 |