有个函数如下
private float getFFF(int x, float y, boolean mI,boolean nI) {
yj = y * x * 0.0022;
if (yj < 5.0f) {yj = 5.0f;} if (nI) {ghf = (float) Math.ceil((double) x / 1000);}
else {ghf = 0;} if (mI == false) {yhs = y * x * 0.001}
else {yhs = 0;} total = yj + ghf + yhs;
return total;
}
现有方程式
0= flMo * 100 - 18 * 100- getFFF(100, 18, true, true)- getFFF(100, flMo, false, true); 请问如何求得flMo,即如何得出flMo=?
private float getFFF(int x, float y, boolean mI,boolean nI) {
yj = y * x * 0.0022;
if (yj < 5.0f) {yj = 5.0f;} if (nI) {ghf = (float) Math.ceil((double) x / 1000);}
else {ghf = 0;} if (mI == false) {yhs = y * x * 0.001}
else {yhs = 0;} total = yj + ghf + yhs;
return total;
}
现有方程式
0= flMo * 100 - 18 * 100- getFFF(100, 18, true, true)- getFFF(100, flMo, false, true); 请问如何求得flMo,即如何得出flMo=?
0= flMo * 100 - 18 * 100- getFFF(100, 18, true, true)- flMo的一次代数式,就得到关于flMo的式子了,然后用JAVA程序来计算值就行了。
public class Cal { private static float getFFF(int x, float y, boolean mI,boolean nI) {
float yj = y * x * 0.0022f;
float ghf=0.0f,yhs=0.0f,total=0.0f;
if (yj < 5.0f) {yj = 5.0f;} if (nI) {ghf = (float) Math.ceil((double) x / 1000);}
else {ghf = 0;} if (mI == false) {yhs = y * x * 0.001f;}
else {yhs = 0;} total = yj + ghf + yhs;
return total;
}
public static void main(String[] args) {
// TODO 自动生成方法存根
float flMo=0.0f;
flMo=(getFFF(100,18,true,true)+18*100+5.0f+(float) Math.ceil((double) 100 / 1000))/(100-100*0.001f);
System.out.println("flMo的值:"+flMo+"\nflMo * 100 * 0.0022f的值(是不是小于5.0f): "+(flMo * 100 * 0.0022f));
System.out.println( "将flMo值代入原式后计算的值(与0相比较):"+(flMo * 100 - 18 * 100- getFFF(100, 18, true, true)- getFFF(100, flMo, false, true)));
}}
程序运行结果:
flMo的值:18.138138
flMo * 100 * 0.0022f的值(是不是小于5.0f): 3.99039
将flMo值代入原式后计算的值(与0相比较):-9.2983246E-5
* 有个函数如下
private float getFFF(int x, float y, boolean mI,boolean nI) {
yj = y * x * 0.0022;
if (yj < 5.0f) {yj = 5.0f;} if (nI) {ghf = (float) Math.ceil((double) x / 1000);}
else {ghf = 0;} if (mI == false) {yhs = y * x * 0.001}
else {yhs = 0;} total = yj + ghf + yhs;
return total;
}
现有方程式
0= flMo * 100 - 18 * 100- getFFF(100, 18, true, true)- getFFF(100, flMo, false, true); */
public class Result {
private static float getFFF(int x, float y, boolean mI,boolean nI) {
float yj = y * x * 0.0022f;
float ghf, yhs;
if (yj < 5.0f)
yj = 5.0f; if (nI)
ghf = (float) Math.ceil((double) x / 1000);
else
ghf = 0; if (mI)
yhs = y * x * 0.001f;
else
yhs = 0; float total = yj + ghf + yhs;
return total;
}
public static void main(String args[]){
float temp = getFFF(100, 18, true, true);
float flMo;
//先假定yj<5.0f,也就是flMo < 5f/0.22f, 那我就可以假设flMo = 0;
flMo = 0f;
float temp1 = getFFF(100, flMo, false, true);
flMo = (18*100 + temp + temp1)/100;
if (flMo < 5f/0.22f)
System.out.println(flMo);
else{
//假设flMo = 30
flMo = 30f;
temp1 = getFFF(100, flMo, false, true);
flMo = (18*100 + temp + temp1)/100;
if (flMo >= 5f/0.22f)
System.out.println(flMo);
}
}
}结果:
18.138