총알이 나가는데... 총알만 나가면 뭐합니까(...)
이제 수학부분으로 들어왔습닙다. 나름대로 공부좀 하고 프로그램에 적용을 하려고 연습을 하는데
이거 원, 실수가 인식이 안되는 겁니다!!!
그래서 연습을 다시 했습니다.
float d;
d = 5 / 2;
printf("%f", d);
이렇게 하면 2만 달랑 나오고
2번째 줄을
d = 5.0 / 2.0;
이렇게 하면 2.5가 나오는군요.-_-;; 이건 좀 난감한데(...)
비행기의 좌표값을 정수로 받게 되는 데 기울기를 구할려면 y의 변화량 나누기 X의 변화량 이죠? 그 변화량을 구하면 거즘 실수형으로 나오게 되는데
두번째 처럼 .0 .0을 붙여서 계산을 해야 하나요. 아니면 다른 방식이 있는건가요.
(전자의 경우는 없을거라고 생각합니다. 그 많은 게임들이 전부다 저랬겠습니까? 아마 후자의 방법이 있는 듯 한데요.)
...예전에는 잘 됬던것 같은데 .. 음음음-_-; 군대가 사람의 머리를 돌로 만들었습니다(자기변명중)
답변 부탁드립니다.
본론으로 들어가서
int / int = int 형으로 됩니다. 이것을 float로 결과를 내기 위해서
나누는 2개의 변수중에 하나를 강제로 float형으로 변환하시면, 결과는 float형이 됩니다. 예를 들어
int iX = 2; iY = 3;
iY/iX = 1이 나오지요
iY/(float)iX 이렇게 iX를 float형으로 강제로 형변환을 시키고 계산을 하면 결과는 1.5 float형으로 나옵니다.