본문 바로가기

언어12

[C++] rand() 21번 줄에 rand() % max + min을 하면 최솟값과 최댓값 사이 임의의 값을 얻을 수 있다. 근데 왜? 1) rand()는 0 ~ RAND_MAX 사이의 난수를 생성함 2) % 나머지 연산자는 rand()를 max로 나눌 때 나머지를 구함. 그럼 난수의 범위가 0 ~ max-1로 제한됨 3) +min을 하면 범위가 0~max-1 => min ~ max-1+min으로 범위 설정 2023. 9. 13.
[C++] cmath 라이브러리 #include 추가해야 한다. 제곱근 sqrt 중학생 이후로... 제곱근 처음 들어봐서 검색해봤는데 루트 씌운 애였다. 4 = 2*2 니까 4의 제곱근은 2, 스퀘어루트여서 sqrt임 POW(2,3) 2의 3승 또는 2의 세제곱 = 8 소수점! double bill_total {102.78}; int number_of_guests {5}; double individual_bill = bill_total/number_of_guests; double individual_bill_1 = ceil(individual_bill*100)/100; -> 마지막 코드는 소수점 이하 2자리까지 나타내는 줄이다. individual_bill = 20.556 20.556 * 100 = 2,055.6 올림하면 2,055 1.. 2023. 9. 13.
[C++] find() / npos s1 = "Welcome to the world of Potato"; string word{}; cout > word; size_t position = s1.find(word); if (position != string::npos) cout 2023. 9. 7.
[c++] 헷갈리던 vector, 다시 공부 이차원 벡터인 vector_2d에 vector1 과 vector2를 요소로 넣었다이후 vector1 0번째 요소를 바꿨다vector1의 요소를 변경했으니 과연 vector_2d에도 변화가 있을까? #include #include using namespace std; int main() { vector vector1; vector vector2; vector1.push_back(10); vector1.push_back(20); for (int i = 0; i < vector1.size(); i++) { cout 2023. 8. 30.
[C++] 2차원 배열을 X좌표 Y좌표로 생각하기! 국비지원으로 에티버스러닝에서 수업을 들은지도 이제 한달이 되었다. 한달의 절반을 C++수업을 듣고 있는데, 내일이 드디어 마지막 수업이고 오늘까지는 클래스로 체스 만들기를 하고있다. 체스 만들기 전 배운 개념인 이차원 배열을 정리해보고자 한다. 행렬로 보지 않고, X축 Y축으로 생각하는 게 꽤 많이 헷갈렸다. (체스판에서 말 옮길 때 X좌표, Y좌표로 계산해야 한다고..) 아래 콘솔 이미지처럼 출력 하려면 어떻게 해야할까? 그리드 사이즈 => 6*6 SizeX = 6, SizeY = 6 *출력 => (i, j) 라고 했을 때 j == 5일 때 (0,5) (1,5) (2,5) (3,5) (4,5) (5,5) i++ #출력 => i가 0일 때 1 (0,4) (0,3) (0,2) (0,1) (0,0) j-- .. 2023. 3. 24.
[C/CPP] 포인터 개념 국비지원으로 에티버스러닝에서 VR언리얼 과정을 듣고 있는데, 주 2회씩은 CPP 언어 수업을 듣고 있다. 저번주 포인터 수업을 듣고, 오늘(7번째 수업) 역참조에 대해 리뷰했다. 매번 내 발목을 잡았던 포인터에 대해 간단히 정리해보고자 한다! 먼저 알고 갈 내용! 포인터는 변수인데, 포인터는 주소를 담는 변수다 int money = 10000; // int타입의 money의 값은 10000, 주소값은 100번지 int* moneyP = &money; // int 타입의 주소(100)를 저장하는 포인터 moneyP *moneyP = 15000; // 역참조 cout 2023. 3. 17.