당신이 말하는 것은 Pi를 숫자 대신 개념으로 사용하는 것입니다. 나는 이런 식으로 뭔가를 할 거라고 :
class Fraction {
public int num;
public int den;
public Fraction(int n,int d) {
num=n;
den=d;
}
public Fraction() {
num=1;
den=1;
public double decValue() {
return ((double)num)/((double)den);
}
}
옹알, 옹알을 ....
public static Fraction someMethod(double decVal) {
Fraction f=new Fraction(1,1);
double howclose=0.0000001; //tiny amount of error allowed
while(abs((f.decValue()*Math.PI)-decVal)>howclose) {
if(f.decValue()*Math.PI>decVal) {
f.den++;
}
else {
f.num++;
}
}
return f;
}
기본적으로, 예상 답변 (decVal)의 비율이 점점 더 가까이 점점에서 작동합니다.
num*PI
------
den
는 기본적으로, 파이로 결과에서의 분율을 곱하면, 그것은 가까운 decVal에
매우해야한다 : 분수는의 형태로 될 것입니다.
왜 180도를 "180도"로 출력하지 않습니까? –
이것은 특정 값에 대한 용도로만 사용됩니다. 예를 들어 무엇을 표시하겠습니까? 179도? –
각도가 아닌 라디안 측정 값의 정확한 값을 계산하려고합니다. 비록 정확한 분수 값이 그러한 값에 존재하는지 감지 할 수있는 몇 가지 진술을 포함하고 있다고 가정합니다 ... – user610367