ik heb de volgende code gemaakt; het is een applet om te leren reken. het genereerd twee random getallen en telt deze bij elkaar op. als de gebruiker het zelfde antwoord invult krijgt hij het bericht "goed gedaan!", zoniet "jammer probeer het nog een keer".
de code:
echter iedere keer dat ik een sommetje maak krijg ik de melding "jammer probeer het nog een keer". ongeacht of ik een goed of fout antwoord invul...
weet iemand waar de fout zit? na lang zoeken moet ik het toch maar eens vragen
de code:
Code:
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class java9 extends Applet
implements ActionListener{
//declaraties
int som1, som2, getal1, getal2, invoer, antwoord, antwoord1;
Button knop, antwoordknop;
TextField tekstvak1;
TextField tekstvak2;
TextField tekstvak3;
TextField tekstvak4;
TextField invoervak;
public void init() {
setLayout(null);
resize(300,300);
antwoordknop = new Button ( "antwoord" );
antwoordknop.addActionListener(this);
antwoordknop.setBounds( 20, 60, 90, 25 );
add( antwoordknop );
knop = new Button ( "volgende som" );
knop.addActionListener(this);
knop.setBounds( 20, 100, 90, 25 );
add( knop );
tekstvak1 = new TextField (5);
tekstvak1.setBounds( 20, 20, 30, 25 );
add( tekstvak1 );
tekstvak2 = new TextField (5);
tekstvak2.setBounds( 80, 20, 30, 25 );
add( tekstvak2 );
invoervak = new TextField (5);
invoervak.setBounds( 140, 20, 30, 25 );
add( invoervak );
tekstvak3 = new TextField (5);
tekstvak3.setBounds( 200, 20, 40, 25 );
add( tekstvak3 );
tekstvak4 = new TextField (5);
tekstvak4.setBounds( 20, 140, 100, 25 );
add( tekstvak4 );
}
// random getallen
int som1() {
double t;
int geefsom1;
t = Math.random();
t *= 10;
t += 1;
geefsom1 = (int) t;
return geefsom1;
}
int som2(){
double v;
int geefsom2;
v = Math.random();
v *= 10;
v += 1;
geefsom2 = (int)v;
return geefsom2;
}
public void actionPerformed(ActionEvent e) {
if( e.getSource() == knop){
//string declareren
String string1, string2, string3, string4;
//tekstvak legen
tekstvak3.setText( "" );
tekstvak4.setText( "" );
invoervak.setText( "" );
//getallen in de tekstvak zetten
int geefsom1;
geefsom1 = som1();
tekstvak1.setText( "" + geefsom1 );
int geefsom2;
geefsom2 = som2();
tekstvak2.setText( "" + geefsom2 );
//strings maken
string1 = tekstvak1.getText();
getal1 = Integer.parseInt( string1 ) ;
string2 = tekstvak2.getText();
getal2 = Integer.parseInt( string2 ) ;
string3 = invoervak.getText();
invoer = Integer.parseInt( string3 ) ;
string4 = tekstvak4.getText();
antwoord1 = Integer.parseInt( string4 ) ;
}
// optellen en uitkomst in tekstvak zetten
if ( e.getSource() == antwoordknop){
antwoord = getal1 + getal2;
tekstvak3.setText( "" + antwoord );
// controleren, en feedback geven
if( antwoord == invoer ){
tekstvak4.setText("goed gedaan!");
}
else{
tekstvak4.setText("jammer, probeerh het nog een keer");
}
}
}
public void paint(Graphics g)
{
// + en = in applet zetten
g.drawString( "+", 60, 40 );
g.drawString( "=", 120, 40 );
}
}
echter iedere keer dat ik een sommetje maak krijg ik de melding "jammer probeer het nog een keer". ongeacht of ik een goed of fout antwoord invul...
weet iemand waar de fout zit? na lang zoeken moet ik het toch maar eens vragen
Laatst bewerkt: