📢 Nuovo Corso Laravel API disponibile!

Progetto Calcolatrice in Java

Descrizione del Progetto

In questo progetto, creerai una calcolatrice in Java utilizzando Swing per l’interfaccia grafica. La calcolatrice sarà in grado di eseguire le operazioni base: addizione, sottrazione, moltiplicazione e divisione.

Requisiti

  1. Librerie Java: Utilizzare le librerie standard di Java.
  2. Interfaccia Utente: Creare un’interfaccia grafica utilizzando Swing.
  3. FunzionalitĂ  della Calcolatrice:
    • Eseguire le operazioni di base: addizione, sottrazione, moltiplicazione e divisione.
    • Visualizzare il risultato sul display della calcolatrice.
  4. Gestione degli Errori: Gestire divisioni per zero e altri possibili errori.

Struttura del Progetto

calcolatrice/
├── src/
│ ├── Main.java
│ └── Calcolatrice.java
└── README.md

Codice di Esempio

Main.java: Questo file contiene il punto di ingresso dell’applicazione.

public class Main {
public static void main(String[] args) {
Calcolatrice calcolatrice = new Calcolatrice();
calcolatrice.setVisible(true);
}
}

Calcolatrice.java: Questo file contiene l’implementazione della calcolatrice.

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Calcolatrice extends JFrame {
private JTextField display;
private double primoNumero;
private double secondoNumero;
private String operazione;
public Calcolatrice() {
setTitle("Calcolatrice");
setSize(400, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setLayout(new BorderLayout());
display = new JTextField();
display.setFont(new Font("Arial", Font.PLAIN, 24));
display.setHorizontalAlignment(JTextField.RIGHT);
display.setEditable(false);
add(display, BorderLayout.NORTH);
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(4, 4));
String[] buttonLabels = {
"7", "8", "9", "/",
"4", "5", "6", "*",
"1", "2", "3", "-",
"0", "C", "=", "+"
};
for (String label : buttonLabels) {
JButton button = new JButton(label);
button.setFont(new Font("Arial", Font.PLAIN, 24));
button.addActionListener(new ButtonClickListener());
panel.add(button);
}
add(panel, BorderLayout.CENTER);
}
private class ButtonClickListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
switch (command) {
case "C":
display.setText("");
primoNumero = 0;
secondoNumero = 0;
operazione = "";
break;
case "=":
secondoNumero = Double.parseDouble(display.getText());
double risultato = 0;
switch (operazione) {
case "+":
risultato = primoNumero + secondoNumero;
break;
case "-":
risultato = primoNumero - secondoNumero;
break;
case "*":
risultato = primoNumero * secondoNumero;
break;
case "/":
if (secondoNumero != 0) {
risultato = primoNumero / secondoNumero;
} else {
JOptionPane.showMessageDialog(null, "Errore: Divisione per zero");
}
break;
}
display.setText(String.valueOf(risultato));
break;
case "+":
case "-":
case "*":
case "/":
primoNumero = Double.parseDouble(display.getText());
operazione = command;
display.setText("");
break;
default:
display.setText(display.getText() + command);
break;
}
}
}
}

Istruzioni per l’Esecuzione

  1. Compilare il Progetto:

    Terminal window
    javac src/Main.java src/Calcolatrice.java -d out
  2. Eseguire l’Applicazione:

    Terminal window
    java -cp out Main

Estensioni Possibili

  1. FunzionalitĂ  Avanzate: Aggiungere funzionalitĂ  come il calcolo delle radici quadrate, potenze, ecc.
  2. Storico delle Operazioni: Implementare una funzionalitĂ  per tenere traccia delle operazioni eseguite.
  3. Tema Personalizzabile: Permettere agli utenti di cambiare il tema della calcolatrice (colori, font, ecc.).