



















Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Numero complesso in java con grafica, java
Tipologia: Esercizi
1 / 27
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!




















● Reale jTextFielda jTextFieldc ● Immaginario jTextFieldb jTextFieldd
● Bottoni jButtonModulo jButtonSomma jButtonConiugato jButtonMoltiplicazione jButtonTrigoniometria
jButtonEsponenziale Stampa risultato jTextFieldRisultato Elenco operazioni PROBLEMATICHE Volevo implementare queste funzioni nella classe NumComplesso, ma non sono riuscita a esportare i dati da NewJFrameComplesso alla classe, per questo ho fatto tutto nel JFrame. Modulo Prende input a e b attraverso interfaccia grafica risultato=Math.sqrt(Math.pow(a,2)+Math.pow(b,2)); cioè radice di (a^2 + b^2) Coniugato prende input reale(a) e immaginario(b) di A jTextFieldRisultato.setText(Double.toString(reale)+" -i"+Double.toString(immaginario)); stampo il reale - i immaginario Somma prende input a, b, c, d;
if(a>0){ se a è maggiore di 0 theta= Math.atan(b/a); } else{ se a è minore di 0 theta=Math.atan(b/a) + Math.PI; //pigreco } double reale= Math.sin(theta); //faccio il seno di Theta double immaginario= Math.cos(theta); //faccio il coseno di Theta jTextFieldRisultato.setText("A= "+Double.toString(reale)+"+i"+Double.toString(immagi nario)); Stampa il risultato di A= R(sen(theta)+i cos(theta)) Esponenziale prendo in input a, b; if(a>0){ se a è maggiore di 0 theta= Math.atan(b/a); } else{ se a è minore di 0 theta=Math.atan(b/a) + Math.PI; //pigreco }
assegno reale= theta e immaginario= Math.E+theta; //esponenziale jTextFieldRisultato.setText("A= "+Double.toString(reale)+"+e"+Double.toString(immagi nario)); NumComplesso -a : double; -b : double; +NumeroComplesso() : double; +Modulo() : double; +Coniugato() : double; +Somma(NumeroComplesso Z) : double; +Prodotto(NumeroComplesso Z) : double; +Trigoniometria(): double; +Esponenziale():double;
[non ho capito bene come farlo e non so se sia giusto] NewClass.java /*
double d; /**
/ public NewJFrameComplesso() { this.complessi = new NumComplesso(a,b); this.z = new NumComplesso(a,b); initComponents(); this.setVisible(true); this.jTextFieldRisultato.setEditable(false); } /*
jLabel4.setText("Reale"); jLabel5.setText("Immaginario"); jTextFielda.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTextFieldaActionPerformed(evt); } }); jTextFieldc.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTextFieldcActionPerformed(evt); } }); jTextFieldb.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTextFieldbActionPerformed(evt); } }); jTextFieldd.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTextFielddActionPerformed(evt); } }); jLabel6.setText("+ i"); jLabel7.setText("+ i"); jButtonTrigoniometria.setText("Trigoniometria"); jButtonTrigoniometria.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonTrigoniometriaActionPerformed(evt); } }); jButtonEsponenziale.setText("Esponenziale"); jButtonEsponenziale.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonEsponenzialeActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout);
layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(12, 12, 12) .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 157, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jTextFieldRisultato) .addGap(16, 16, 16)) .addGroup(layout.createSequentialGroup() .addGap(91, 91, 91) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(54, 54, 54) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(jTextFielda) .addComponent(jTextFieldc, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(32, 32, 32) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTextFieldd, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLabel1) .addComponent(jTextFieldRisultato, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(35, 35, 35) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel4) .addComponent(jLabel5)) .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jTextFielda, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addComponent(jLabel2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jLabel3)) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel6) .addComponent(jTextFieldb, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup() .addGap(27, 27, 27) .addComponent(jLabel7)) .addGroup(layout.createSequentialGroup() .addGap(34, 34, 34) .addComponent(jTextFieldd, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addGroup(layout.createSequentialGroup() .addGap(64, 64, 64) .addComponent(jTextFieldc, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGap(25, 25, 25) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButtonModulo) .addComponent(jButtonConiugato) .addComponent(jButtonTrigoniometria))
.addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButtonSomma) .addComponent(jButtonMoltiplicazione) .addComponent(jButtonEsponenziale)) .addContainerGap(42, Short.MAX_VALUE)) ); pack(); }// </editor-fold>//GEN-END:initComponents private void jTextFieldaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextFieldaActionPerformed }//GEN-LAST:event_jTextFieldaActionPerformed private void jTextFieldRisultatoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextFieldRisultatoActionPerformed }//GEN-LAST:event_jTextFieldRisultatoActionPerformed private void jTextFieldbActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextFieldbActionPerformed }//GEN-LAST:event_jTextFieldbActionPerformed private void jTextFieldcActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextFieldcActionPerformed }//GEN-LAST:event_jTextFieldcActionPerformed private void jTextFielddActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextFielddActionPerformed }//GEN-LAST:event_jTextFielddActionPerformed private void jButtonModuloActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonModuloActionPerformed double risultato; a =Double.parseDouble(jTextFielda.getText()); b=Double.parseDouble(jTextFieldb.getText()); risultato=complessi.modulo(a, b); jTextFieldRisultato.setText(Double.toString(risultato)); }//GEN-LAST:event_jButtonModuloActionPerformed
private void jButtonTrigoniometriaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonTrigoniometriaActionPerformed a=Double.parseDouble(jTextFielda.getText()); b=Double.parseDouble(jTextFieldb.getText()); String risultato=complessi.trigonometria(a, b); jTextFieldRisultato.setText(risultato); /A= R(sen(theta)+i cos(theta)) dove R= |A| e theta= arcttan(b/a) se a > 0 o theta=arcttan(b/a) + PIGRECO se a < 0 / }//GEN-LAST:event_jButtonTrigoniometriaActionPerformed private void jButtonEsponenzialeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonEsponenzialeActionPerformed a=Double.parseDouble(jTextFielda.getText()); b=Double.parseDouble(jTextFieldb.getText()); String risultato=complessi.esponenziale(a, b); jTextFieldRisultato.setText(risultato); /A= Re^theta dove R= |A| e theta= arcttan(b/a) se a > 0 o theta=arcttan(b/a) + PI se a < 0/ }//GEN-LAST:event_jButtonEsponenzialeActionPerformed /**
java.util.logging.Logger.getLogger(NewJFrameComplesso.class.getName()).log(java.util.log ging.Level.SEVERE, null, ex); } catch (InstantiationException ex) { java.util.logging.Logger.getLogger(NewJFrameComplesso.class.getName()).log(java.util.log ging.Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { java.util.logging.Logger.getLogger(NewJFrameComplesso.class.getName()).log(java.util.log ging.Level.SEVERE, null, ex); } catch (javax.swing.UnsupportedLookAndFeelException ex) { java.util.logging.Logger.getLogger(NewJFrameComplesso.class.getName()).log(java.util.log ging.Level.SEVERE, null, ex); } //</editor-fold> /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new NewJFrameComplesso().setVisible(true); } }); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.ButtonGroup buttonGroup1; private javax.swing.JButton jButtonConiugato; private javax.swing.JButton jButtonEsponenziale; private javax.swing.JButton jButtonModulo; private javax.swing.JButton jButtonMoltiplicazione; private javax.swing.JButton jButtonSomma; private javax.swing.JButton jButtonTrigoniometria; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JTextField jTextFieldRisultato; private javax.swing.JTextField jTextFielda; private javax.swing.JTextField jTextFieldb; private javax.swing.JTextField jTextFieldc; private javax.swing.JTextField jTextFieldd; // End of variables declaration//GEN-END:variables }