// code by behzad torkian //java code for Divided Difference table and evaluate //behzad25241@yahoo.com //www.torkian.info //march/08 import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; public class Divi extends JFrame { private JButton jbtPoints = new JButton("Points"); private JButton jbtEnter = new JButton("Enter Data"); private JButton jbtEv = new JButton("Evaluate"); private JButton jbtHelp = new JButton("Help"); private JButton jbtReset = new JButton("Reset"); private JButton jbtDraw = new JButton("Draw"); int point=0; final double x[]=new double[200]; final double fx[]=new double[200]; final double data[][] = new double[200][200]; public Divi() { //setLayout(new FlowLayout()); setLayout(new GridLayout(5, 2, 20, 20)); add(jbtReset); add(jbtPoints); add(jbtEnter); add(jbtEv); add(jbtDraw); add(jbtHelp); add(new DrawX()); jbtDraw.setEnabled(false); jbtPoints.setEnabled(true); jbtEv.setEnabled(false); jbtEnter.setEnabled(false); jbtReset.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.out.println("The " + e.getActionCommand() + " button " + "is clicked at\n " + new java.util.Date(e.getWhen())); JOptionPane.showMessageDialog(null," Reset is done"); point=0; jbtPoints.setEnabled(true); jbtEv.setEnabled(false); jbtEnter.setEnabled(false); } }); jbtDraw.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.out.println("The " + e.getActionCommand() + " button " + "is clicked at\n " + new java.util.Date(e.getWhen())); // repaint(); // add(new DrawX()); } }); jbtPoints.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.out.println("The " + e.getActionCommand() + " button " + "is clicked at\n " + new java.util.Date(e.getWhen())); String spoint= JOptionPane.showInputDialog("Enter Number of points",3); point = Integer.parseInt(spoint); jbtPoints.setEnabled(false); jbtEnter.setEnabled(true); } }); jbtEnter.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.out.println("The " + e.getActionCommand() + " button " + "is clicked at\n " + new java.util.Date(e.getWhen())); String sx= JOptionPane.showInputDialog("Enter x (note: use , for each x)"); StringTokenizer sxt = new StringTokenizer(sx, ","); int i=0; jbtEnter.setEnabled(false); jbtEv.setEnabled(true); while(sxt.hasMoreTokens()){ String s=sxt.nextToken(); System.out.println(s+":"); x[i]= Double.parseDouble(s); i++; } String sfx= JOptionPane.showInputDialog("Enter F[x] (note: use , for each F[x])"); StringTokenizer sxft = new StringTokenizer(sfx, ","); i=0; while(sxft.hasMoreTokens()){ String ss=sxft.nextToken(); System.out.println(ss+":"); fx[i]= Double.parseDouble(ss); data[0][i]=fx[i]; i++; } // 2 one for matrix one for last data for(int count1=1;count1