コードは次のとおりです。
double r = Double.parseDouble(radius.getText().toString());
double del = Double.parseDouble(delta.getText().toString());
double dm = ((int)((del - ((int)del)) * 100));
double rads = (((int)del) + (dm / 60) + (((((del - ((int)del)) * 100) - ((int)((del - ((int)del)) * 100))) * 100) / 3600)) * (Math.PI / 180);
String t = String.valueOf(r * (Math.tan(rads / 2)));
String c = String.valueOf(2* r* (Math.sin((rads/2))));
String m = String.valueOf(r*(1- Math.cos((rads/2))));
String a = String.valueOf(2*Math.PI*r*((((int)del) + (dm / 60) + (((((del - ((int)del)) * 100) - ((int)((del - ((int)del)) * 100))) * 100) / 3600))/360));
tangent.setText(t);
arc.setText(a);
chord.setText(c);
mid.setText(m);
私の目的は、プログラムで使用している変数の数を減らして、プログラムを少しきれいにすることです。私が投稿した方法で座っているので、式は機能します。ダブル「rads」の「dm」を現在の値「((int)((del - ((int)del)) * 100))」に置き換えると、数式が機能しなくなります。「/60」と関係があります。さまざまなブラケットの状況を試しましたが、うまくいかないようです。式の他の部分で「dm」を置き換えましたが、その1つの場所だけですべて機能します。何か案は?