Diskuze: Double premenná
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Místo přiřazení =, tam máš porovnaní ==
1, prepáčte.
nechápem tej 2, veci.
tú chybu som si už všimol, ale aj tak to stále nefunguje.
Kliknem na číslo ,a potom na ^ a vypne sa .Ale nechápem prečo.
public class MainActivity extends AppCompatActivity {
char mOperacia;
float mCislo1;
double x;
double y;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView mTV = (TextView) findViewById(R.id.TextView);
Button mBT0 = (Button) findViewById(R.id.button5);
Button mBT1 = (Button) findViewById(R.id.button9);
Button mBT2 = (Button) findViewById(R.id.button10);
Button mBT3 = (Button) findViewById(R.id.button11);
Button mBT4 = (Button) findViewById(R.id.button13);
Button mBT5 = (Button) findViewById(R.id.button14);
Button mBT6 = (Button) findViewById(R.id.button15);
Button mBT7 = (Button) findViewById(R.id.button17);
Button mBT8 = (Button) findViewById(R.id.button18);
Button mBT9 = (Button) findViewById(R.id.button19);
Button mBTCiarka = (Button) findViewById(R.id.button6);
Button mBTRovnaSa = (Button) findViewById(R.id.button7);
Button mBTMinus = (Button) findViewById(R.id.button8);
Button mBTPlus = (Button) findViewById(R.id.button12);
Button mBTDeleno = (Button) findViewById(R.id.button16);
Button mBTKrat = (Button) findViewById(R.id.button20);
Button mBTZmena = (Button) findViewById(R.id.button22);
Button mBTSquare = (Button) findViewById(R.id.button23);
Button mBTPower = (Button) findViewById(R.id.button24);
Button mBTC = (Button) findViewById(R.id.button21);
mBT0.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('0', mTV);
}
});
mBT1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('1', mTV);
}
});
mBT2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('2', mTV);
}
});
mBT3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('3', mTV);
}
});
mBT4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('4', mTV);
}
});
mBT5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('5', mTV);
}
});
mBT6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('6', mTV);
}
});
mBT7.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('7', mTV);
}
});
mBT8.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('8', mTV);
}
});
mBT9.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('9', mTV);
}
});
mBTPower.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('^',mTV);
x= Double.valueOf(mTV.getText().toString());
y = Double.valueOf(mTV.getText().toString());
mOperacia='^';
mTV.setText("0");
}
});
mBTKrat.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV.getText().toString());
mOperacia = '*';
mTV.setText("0");
}
});
mBTDeleno.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV.getText().toString());
mOperacia = '/';
mTV.setText("0");
}
});
mBTMinus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV.getText().toString());
mOperacia = '-';
mTV.setText("0");
}
});
mBTPlus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV.getText().toString());
mOperacia = '+';
mTV.setText("0");
}
});
mBTC.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mTV.setText("0");
}
});
mBTCiarka.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String text = mTV.getText().toString();
if (!text.contains(".")) {
text = text + '.';
}
mTV.setText(text);
}
});
mBTSquare.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View v) {
pridajZnak('âš',mTV);
x= Double.valueOf(mTV.getText().toString());
mOperacia='âš';
mTV.setText("0");
}
});
mBTZmena.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String text = mTV.getText().toString();
if (!text.equals("0")) {
if (text.startsWith("-")) {
text = text.replace("-","");
}
else {
text = "-" + text;
}
}
mTV.setText(text);
}
});
mBTRovnaSa.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
float cislo2 = Float.valueOf(mTV.getText().toString());
y = Double.valueOf(mTV.getText().toString());
x= Double.valueOf(mTV.getText().toString());
float vysledok = 0;
if (mOperacia == '*') {
vysledok = mCislo1 * cislo2;
} else if (mOperacia == '/') {
vysledok = mCislo1 / cislo2;
} else if (mOperacia == '-') {
vysledok = mCislo1 - cislo2;
} else if (mOperacia == '+') {
vysledok = mCislo1 + cislo2;
} else if (mOperacia == 'âš') {
vysledok = (float) Math.sqrt(x);
} else if (mOperacia == '^') {
vysledok = (float) Math.pow(x, y);
}
mTV.setText("" + vysledok);
}
});
}
public void pridajZnak(char c, TextView mTV) {
String text = mTV.getText().toString();
if (text.equals("0")) {
text = "" + c;
} else {
text = text + c;
}
mTV.setText(text);
}}
Vkládej ten kód do toho tagu code jak už jsem ti psal! Tohle se fakt nedá číst! Je to to tlačítko </>. A taky používej tlačítko Odpovědět když na něco odpovídáš aby se o tom ten dotyčný dozvěděl.
Ale ako mám vložiť mocninu a exponent do tých double premenných.
Odhaduju, že to spadne, protože při stisknu ^ přidáš do mTV znak ^ a následně se pokusíš z mTV parsovat Double což ti samozřejmě nemůže projít, protožes tam přidal to ^ a tím pádem už to nemůže být double.
y= Double.parseDouble(mTV.getText());
x= Double.parseDouble(mTV.getText());
Zobrazeno 9 zpráv z 9.