Keuzestructuren if ..else

Keuze

Van drie getallen willen we de maximum waarde weten.

De Applet

De programmacode

// Dit programma bepaalt het maximum van 3 getallen 
// Maximum.java
import java.awt.*;
import java.awt.event.*;						
import java.applet.Applet;

public class Maximum extends Applet implements ActionListener{
	Label		vraag1, vraag2, vraag3; 
	TextField	invoer1, invoer2, invoer3; 
	int		getal1, getal2, getal3; 							
	int		maximum; 							
	

// Plaats de grafische componenten 
public void init() {
	vraag1  = new Label( "Geef het eerste getal: " );
	invoer1 = new TextField( 10 ); 
	vraag2  = new Label( "Geef het tweede getal: " );
	invoer2 = new TextField( 10 ); 
	vraag3  = new Label( "Geef het derde getal en druk op Enter: " );
	invoer3 = new TextField( 10 ); 
	add( vraag1 ); 							
	add( invoer1 );					
	add( vraag2 ); 							
	add( invoer2 );					
	add( vraag3 ); 							
	add( invoer3 );		
	invoer3.addActionListener(this);	// alleen invoer3 geeft een event			
    }

    // Verwerk het event
    public void actionPerformed ( ActionEvent e) {
	getal1 = Integer.parseInt( invoer1.getText() );
	getal2 = Integer.parseInt( invoer2.getText() );
	getal3 = Integer.parseInt( invoer3.getText() );
	repaint();
	
    }

    public void paint(Graphics g) {
	// als .. dan .. anders ..
	if (getal1 > getal2  ) 
	    maximum = getal1;
	else 
	    maximum = getal2;
	
	if (getal3 > maximum) 
	    maximum = getal3;

	g.drawString("Het maximum is " + maximum, 40, 100);	
    }
}

Analyse

deeltaken

  1. Vraag en lees drie getallen
  2. Bepaal de grootste van de drie
  3. Druk de grootste af

Ontwerp

Het algoritme om het maximum te bepalen in pseudocode is:

  1. Als het getal1 groter dan getal2 is, dan is getal1 het maximum
  2. Anders is getal2 het maximum
  3. Als het getal3 groter dan het maximum dan getal3 is het maximum

Stap 2, 3 en 4 in Java:

	if (getal1 > getal2 ) 
	   maximum = getal1;
	else 
	   maximum = getal2;
	if (getal3 > maximum) 
	   maximum = getal3;

De init methode
De vragen en invoervelden worden in de applet geplaatst. Het event van invoer3 wordt gekoppeld aan de actionPerformed methode, de andere twee niet.

De actionPerformed methode
Als in invoer3 de Entertoets wordt ingedrukt worden de drie invoervelden uitgelezen en geconverteerd naar een getal.

De paint methode
In de paint methode wordt het algoritme zoals die in de bovenstaande analyse is vastgesteld uitgevoerd.

copyright ® Little World 1998