Tämä laskee kolmesta luvusta aritmeettisen keskiarvon tai summan sekä suurimman luvun. Ohjelmaa voi muuttaa esimerkiksi laittamalla luvut itse eikä satunnaisesti.
import java.awt.*; import javax.swing.*; import java.awt.event.*; import java.util.Random; public class GUI_Luvut extends JApplet implements ActionListener { //Luodaan objektit. //Rivi 1 JPanel rivi1 = new JPanel(); JLabel teksti_1 = new JLabel("0"); JLabel teksti_2 = new JLabel("0"); JLabel teksti_3 = new JLabel("0"); //Rivi 2 JPanel rivi2 = new JPanel(); JLabel tulos = new JLabel("0"); JLabel tulos_2 = new JLabel("0"); //Rivi 3 JPanel rivi3 = new JPanel(); JRadioButton rb1 = new JRadioButton("Summa"); JRadioButton rb2 = new JRadioButton("Keskiarvo"); JButton nappain = new JButton("Paina"); public void init(){ //Asetellaan objektit. GridLayout appletinAsettelu = new GridLayout(5,1,10,10); Container ruutu = getContentPane(); ruutu.setLayout(appletinAsettelu); //Rivi 1. FlowLayout asettelu1 = new FlowLayout(FlowLayout.CENTER,10,10); rivi1.setLayout(asettelu1); rivi1.add(teksti_1); rivi1.add(teksti_2); rivi1.add(teksti_3); ruutu.add(rivi1); //Rivi 2 FlowLayout asettelu2 = new FlowLayout(FlowLayout.CENTER,10,10); rivi2.setLayout(asettelu2); rivi2.add(tulos); rivi2.add(tulos_2); ruutu.add(rivi2); //Rivi 3 FlowLayout asettelu3 = new FlowLayout(FlowLayout.CENTER, 10,10); rivi3.setLayout(asettelu3); rivi3.add(nappain); ButtonGroup bg = new ButtonGroup(); bg.add(rb1); bg.add(rb2); rivi3.add(rb1); rivi3.add(rb2); ruutu.add(rivi3); setContentPane(ruutu); //Lisätään kuuntelija. nappain.addActionListener(this); } @Override public void actionPerformed(ActionEvent e) { String komento = e.getActionCommand(); //Suoritetaan toiminto. if (komento.equals("Paina")){ Random sattuma = new Random(); //Luodaan muuttujat. int a = 0; int b = 0; int c = 0; int sm = 0; //Summa double ka = 0; //Keskiarvo //Arvotaan luvut. a = sattuma.nextInt(100); b = sattuma.nextInt(100); c = sattuma.nextInt(100); //Näytetään luvut. teksti_1.setText(String.valueOf(a)); teksti_2.setText(String.valueOf(b)); teksti_3.setText(String.valueOf(c)); //Lasketaan summa tai keskiarvo valinnan mukaan. if (rb1.isSelected()){ //Lasketaan summa. sm = a+b+c; tulos.setText("Summa: " + String.valueOf(sm)); } else if (rb2.isSelected()){ //Lasketaan aritmeettinen keskiarvo. ka = (a+b+c)/3.0; tulos.setText("Keskiarvo: " + String.valueOf(ka)); } //Etsitään suurin luku. if (a > b && a > c){ tulos_2.setText("Suurin luku: " + a); } else if (b > a && b > c){ tulos_2.setText("Suurin luku: " + b); } else if (c > a && c > b){ tulos_2.setText("Suurin luku: " + c); } else { tulos_2.setText("Suurinta lukua ei ole."); } } } }
Aihe on jo aika vanha, joten et voi enää vastata siihen.