everything works except i need to add the polynomials numbers that a user writes
ID: 3655714 • Letter: E
Question
everything works except i need to add the polynomials numbers that a user writes on the GUI in my addAction class?
and i dont know how and how to multiply them and get a total for both waysas the answer in my multiplAction class?
please reply fast asap.
import java.awt.*;
//import libraries import java.awt.event.*;
import javax.swing.*;
import java.util.LinkedList;
import java.util.StringTokenizer;
public class PolynomialProgram extends JFrame{
private JTextField JTextField("Enter one polynomial value" , 30);
private JTextField nextPolynomialField = new JTextField("Enter last polynomial value" , 30);
private JButton multiplyonePolynomialButton = new JButton("Multiply by"); private JButton multiplynextPolynomialButton = new JButton("Multiply by");
private JTextField JTextField(5); //4 textfield private JTextField nextPolynomialMultiplyField = new JTextField(5);
private JButton addDigitButton = new JButton("Add Polynomials"); //5 buttons private JButton closeButton = new JButton("CLOSE");
private JButton helpButton = new JButton("HELP");
public static void main(){ PolynomialProgram digit = new PolynomialProgram(); digit.setDefaultCloseOperation(EXIT_ON_CLOSE);
digit.setTitle("Polynomials testing");
digit.buildGUI();
digit.setVisible(true);
digit.setSize(440,320); }
public void buildGUI(){
JPanel onePolyPanel, nextPolyPanel, controlPanel;
Container window = getContentPane();
window.setLayout(new BoxLayout(window,BoxLayout.Y_AXIS)); multiplyonePolynomialButton.addActionListener(new MultiplyAction()); multiplynextPolynomialButton.addActionListener(new MultiplyAction()); addDigitButton.addActionListener(new AddDigitAction()); //create a separate class to use this helpButton.addActionListener(new HelpAction());
closeButton.addActionListener(new ExitAction());
window.add(Box.createRigidArea(new Dimension(0,30)));
onePolyPanel = new JPanel();
onePolyPanel.setLayout(new BoxLayout(onePolyPanel,BoxLayout.X_AXIS)); //box shape layout onePolyPanel.add(Box.createRigidArea(new Dimension(10,0)));
onePolynomialField.setMaximumSize(new Dimension(200,20));
onePolyPanel.add(onePolynomialField); //add first field to window pane onePolyPanel.add(Box.createRigidArea(new Dimension(20,0))); onePolyPanel.add(multiplyonePolynomialButton); //add button to window onePolynomialMultiplyField.setMaximumSize(new Dimension(60,20)); //mutiply field for first value onePolyPanel.add(Box.createRigidArea(new Dimension(5,0)));
onePolyPanel.add(onePolynomialMultiplyField);
onePolyPanel.add(Box.createHorizontalGlue());
window.add(onePolyPanel);
window.add(Box.createRigidArea(new Dimension(0,10)));
nextPolyPanel = new JPanel();
nextPolyPanel.setLayout(new BoxLayout(nextPolyPanel,BoxLayout.X_AXIS)); nextPolyPanel.add(Box.createRigidArea(new Dimension(10,0)));
nextPolynomialField.setMaximumSize(new Dimension(200,20));
nextPolyPanel.add(nextPolynomialField); //add second field to the window nextPolyPanel.add(Box.createRigidArea(new Dimension(20,0))); nextPolyPanel.add(multiplynextPolynomialButton);
nextPolynomialMultiplyField.setMaximumSize(new Dimension(60,20)); //multiply field for second value nextPolyPanel.add(Box.createRigidArea(new Dimension(5,0)));
nextPolyPanel.add(nextPolynomialMultiplyField);
nextPolyPanel.add(Box.createHorizontalGlue());
window.add(nextPolyPanel);
window.add(Box.createRigidArea(new Dimension(0,40)));
controlPanel = new JPanel();
controlPanel.setLayout(new BoxLayout(controlPanel,BoxLayout.X_AXIS)); controlPanel.add(Box.createRigidArea(new Dimension(10,0)));
controlPanel.add(addDigitButton); //add both polynomials together controlPanel.add(Box.createHorizontalGlue());
controlPanel.add(Box.createRigidArea(new Dimension(60,0)));
controlPanel.add(helpButton);
controlPanel.add(Box.createRigidArea(new Dimension(15,0)));
controlPanel.add(closeButton);
controlPanel.add(Box.createRigidArea(new Dimension(10,0)));
window.add(controlPanel);
window.add(Box.createRigidArea(new Dimension(0,40)));
window.add(Box.createVerticalGlue()); }
private class MultiplyAction implements ActionListener
{ public void actionPerformed(ActionEvent event)
{ float coefficient; int exponent; // Term term; // Polynomial poly1, poly2; String s = new String(), token; if (event.getSource().equals(multiplyonePolynomialButton))
{ //poly1 = new Polynomial(); s = onePolynomialField.getText();
} else if (event.getSource().equals(multiplynextPolynomialButton))
{ //poly2 = new Polynomial(); s = nextPolynomialField.getText(); }
StringTokenizer st = new StringTokenizer(s);
try { // get polynomial
while (st.hasMoreTokens())
{
token = st.nextToken();
coefficient = Float.parseFloat(token);
if (!st.hasMoreTokens()) {
exponent = 2;
} else if (!(st.nextToken().equals("x"))) {
throw new Exception();
} else {
token = st.nextToken(" +");
exponent = Integer.parseInt(token);
}
JOptionPane.showMessageDialog(null, "Term = " + coefficient + "x" + exponent);
/* * term = new Term(coefficient,exponent);
*if (event.getSource().equals(multiplyFirstButton)) { *
poly1.add(term); * } *
else if (event.getSource().equals(multiplySecondButton)) { *
poly2.add(term); * } * */ } /* get the multiplication value from appropriat field, multiply & then display new polynomial
* if (event.getSource().equals(multiplyFirstButton)) {
* result = poly1.multiply(value); * result.display(); * } *
else if (event.getSource().equals(multiplySecondButton)) { *
result = poly2.multipoly(value); * result.display(); * } */ } catch (Exception e) { JOptionPane.showMessageDialog(null,"Invalid Polynomial","Error",JOptionPane.ERROR_MESSAGE); } } }
private class AddDigitAction implements ActionListener{
public void actionPerformed(ActionEvent event)
{ } }
private class HelpAction implements ActionListener {
public void actionPerformed(ActionEvent event){
String s = new String (); s = "Enter Polyonomials as: 13 x 7 + 4.5 x 2 + 65.2 " + "There must be a space between all entries "; JOptionPane.showMessageDialog(null, s, "Polynomial Instructions", JOptionPane.INFORMATION_MESSAGE); } }
private class ExitAction implements ActionListener { public void actionPerformed(ActionEvent event) { System.exit(0); } } }
Explanation / Answer
I am working on this ! Question is clear here !! :)
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.