PROGRAMMING EXERCISE(p.117)
9번. 반복문을 이용하여 화씨 온도 0도부터 100까지의 구간에 대하여 10도 간격으로 섭씨 온도로 환산하는 표를 작성하라. c = (f-32.0) * 5.0 / 9.0; 수식으로 화씨 온도를 섭씨 온도로 변환할 수 있다.
코드
#include<iostream>
using namespace std;
int main() {
int f = 0; //화씨온도
double c = 0; //섭씨온도
for (f; f < 100; f++) {
if (f % 10 == 0 ) { //10도 간격으로 구하기
c = (f - 32.0) * 5.0 / 9.0;
cout << f <<"°F == " << c << "°C" << endl;
}
}
}
실행 화면

PROGRAMMING EXERCISE(p.118)
13번. 피보나치 수열을 계산하는 프로그램을 작성해보자. 피보나치 수열은 0과 1부터 시작하며 앞의 두 수를 더하여 뒤의 수를 만든다.
[ 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, … ]
코드
#include <iostream>
using namespace std;
int Fibonacci(int n);
int main()
{
int num, i;
cout << "몇 항까지 구할까요: ";
cin >> num;
for (i = 0; i < num; i++)
cout << Fibonacci(i) << "\t" ;
}
int Fibonacci(int n)
{
if (n < 2)
return n;
else
return Fibonacci(n - 1) + Fibonacci(n - 2);
}
실행화면

PROGRAMMING EXERCISE(p.119)
16번. 라스베가스에서 50달러를 가지고 도박을 하는 사람이 있다. 한 번의 도박에 1달러를 건다고 가정하자. 돈을 따거나 잃을 확률은 0.5로 동일하다고 가정하자. 도박사는 가진 돈을 다 읽거나 목표 금액인 250달러에 도달하면 도박을 중지한다. 도박사가 목표 금액에 도달하는 확률이 얼마나 되는지를 계산해 보자.
코드
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int bets = 0;//배팅 횟수
int betFun();
int main() {
int betSuccessCnt = 0;
cout << "초기 금액 : $50" << endl;
cout << "초기 금액 : $250" << endl;
for (int i = 0; i < 1000; i++) {
int a = betFun();
if (a == 1) {
betSuccessCnt++;
//cout << betSuccessCnt;
}
}
cout << "1000번 중에 " << betSuccessCnt << "번 승리" << endl;
cout << "이긴 확률 = " << ((double)betSuccessCnt / 1000) *100<< endl;
cout << "평균 배팅 횟수 : " << ((double)bets / 1000);
}
int betFun() { //도박의 성공과 실패를 구하는 함수
int cash = 50; //금액
srand((unsigned int)time(NULL)); //seed값으로 현재시간 부여
while (1) { //금액이 0 또는 250이 될때까지 도박을 반복함.
bets++;
if (cash == 250 || cash == 0) break;
else {
if ((double)rand() / RAND_MAX < 0.5)cash++; //0.5보다 작을 경우 이겼다고 간주
else cash--; //그 외에 경우 졌다고 간주
}
}
//cout << cash << endl;
if (cash == 0) return 0; //돈을 전부 잃었을 경우 '0'을 리턴
else if (cash == 250) return 1; //250원을 얻었을 경우 '1'을 리턴
}
실행화면

'대학 > 어서와 C++은 처음이지!' 카테고리의 다른 글
[어서와 C++은 처음이지!] chapter 04. 연습문제 (0) | 2022.10.09 |
---|---|
[어서와 C++은 처음이지!] chapter 03. 연습문제 (0) | 2022.10.04 |
[어서와 C++은 처음이지!] chapter 01. 연습문제 (0) | 2022.09.20 |