각종 변수형 - 모든 코딩에서 찾아볼 수 있는 '기본 자료형'
1) bool (1byte)
2) char (1byte)
3) int (4byte)
4) float (4byte)
5) double (8byte)
6) 왜 이런 자료형들이 있는 건가
연습문제)

sol)
헤더파일
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <ctime>
//사용자로부터 실수를 입력받는 함수
float getFloat();
//사용자로부터 문자를 입력받는 함수
char getChar();
cpp 파일
#include "Header.h"
int main() {
float value1;
float value2;
char oper;
float result;
bool valid = true;
value1 = getFloat();
value2 = getFloat();
oper = getChar();
switch (oper) {
case '+':
result = value1 + value2;
break;
case '-':
result = value1 - value2;
break;
case '/':
result = value1 / value2;
break;
case '*':
result = value1 * value2;
break;
case '%':
//형변환 int로
result = (int)value1 % (int)value2;
break;
default:
valid = false;
break;
}
if (valid) {
printf("결과는 %.3f 입니다.", result);
}
else {
printf("올바르지 않은 연산자 입니다.");
}
return 0;
}
float getFloat() {
float input;
fseek(stdin, 0, SEEK_END);
printf("실수를 입력해주세요:");
scanf_s("%f", &input);
return input;
}
char getChar() {
int input;
fseek(stdin, 0, SEEK_END);
printf("연산자를 입력해주세요: ");
scanf_s("%c", &input);
return input;
}
<아스키코드>

아스키 코드와 같은 숫자를 입력하면 숫자로도 영문이나 문자가 될 수도있다.
%c 는 문자열 불러올때 사용
%d 는 정수형
%f 는 실수형
정수형 %d
%d 사이에 0과 숫자를 넣어주게 되면 앞이 0으로 된 숫자를 출력 할 수 있다.
실수형 %f
%f 사이에 0과 숫자를 넣어주면 앞이 0으로 된 숫자를 출력 할 수 있다.
또한, 소숫점과 숫자를 입력하면 소숫점 몇자리 수까지 나타낼건지 표현 가능하다.
연습문제)

sol)
해더
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <ctime>
float getFloat();
char getChar();
cpp
#include "Header.h"
int main() {
float value1;
float value2;
char oper;
float result;
bool valid = true;
bool exit = false;
int w;
value1 = getFloat();
value2 = getFloat();
oper = getChar();
switch(oper){
case '+':
result = value1 + value2;
break;
case '-':
result = value1 - value2;
break;
case '*':
result = value1 * value2;
break;
case '/':
result = value1 / value2;
break;
case '%':
result = (int)value1 % (int)value2;
break;
case 'p':
result = pow(value1,value2);
break;
case 'x':
exit = true;
break;
case 'r':
srand(time(0));
w = rand() % 6;
if (w == 0) {
result = value1 + value2;
}
else if (w == 1) {
result = value1 - value2;
}
else if (w == 2) {
result = value1 * value2;
}
else if (w == 3) {
result = value1 / value2;
}
else if (w == 4) {
result = (int)value1 % (int)value2;
}
else if (w == 5) {
result = pow(value1, value2);
}
break;
default:
valid = false;
break;
}
if (valid == true) {
printf("결과는 %.3f 입니다.", result);
}
else if (exit == true) {
printf("프로그램을 종료합니다.");
}
else {
printf("올바르지 않은 연산자 입니다.");
}
return 0;
}
float getFloat() {
float input;
fseek(stdin, 0, SEEK_END);
printf("실수를 입력해주세요.: ");
scanf_s("%f", &input);
return input;
}
char getChar() {
int input;
fseek(stdin, 0, SEEK_END);
printf("연산자를 입력해주세요.: ");
scanf_s("%c", &input);
return input;
}