jueves, 11 de agosto de 2011

Generación de Series



import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class Series extends JApplet implements ActionListener{
                // Declaración de variables globales
                JButton btnProcesar, btnBorrar;
                JTextArea txtS;
                JLabel lblNumero ;
                JTextField txtNumero ;
                JScrollPane scpScroll;
               
                // Crea la interfaz gráfica de usuario     
                public void init() {
                               getContentPane().setLayout(null);

                               lblNumero = new JLabel("Numero");
                               lblNumero.setBounds(15, 15, 140, 23);
                               getContentPane().add(lblNumero);
                              
                              
                               txtNumero = new JTextField();
                               txtNumero.setBounds(155, 15, 120, 23);
                               getContentPane().add(txtNumero);
                              
               
                               btnProcesar = new JButton("Procesar");
                               btnProcesar.setBounds(365, 15, 100, 23);
                               btnProcesar.addActionListener(this);
                               getContentPane().add(btnProcesar);

                               txtS = new JTextArea();
                               txtS.setFont(new Font("monospaced", Font.PLAIN, 12));
                              
                               scpScroll = new JScrollPane(txtS);
                               scpScroll.setBounds(15, 77, 450, 150);
                               getContentPane().add(scpScroll);
                }

                // Procesa eventos de tipo ActionEvent
                public void actionPerformed( ActionEvent e ){

                               // Si se hizo clic en Procesar
                               if( e.getSource() == btnProcesar ){
                                              
                                               //Series 01
                                               txtS.setText("Series 01\n");
                                               for(int i =1; i<=30 ;i++){
                                                               txtS.append(i+",");                                                     
                                               }
                                              
                                               //Series 02
                                               txtS.append("\n\nSeries 02\n");
                                               for(int i =5; i<=30 ;i+=2){
                                                               txtS.append(i+",");                                                     
                                               }
                                              
                                               //Series 03
                                               txtS.append("\n\nSeries 03\n");
                                               for(int term =5, c=1; c<=30 ; term+=2, c++){
                                                               txtS.append(term+",");                                                             
                                               }
                                              
                                               //Series 04
                                               // 2/5,  4/8, 6/11, 8/14 ........30terminos
                                               txtS.append("\n\nSeries 04\n");
                                               for(int num =2, den=5, c=1; c<=30 ; num+=2, den+=3, c++){
                                                               txtS.append( num+"/" + den + ",");                                                    
                                               }
                                              
                                               //Series 05
                                               // - Imprima la serie en n terminos
                                               // - Suma la serie
                                               // - El ultimo no termine en coma, sino en punto
                                              
                                               // -2/3,  +6/8, +10/13,  - 14/18,  + 18/23 ........nterminos
                                              
                                               int cantidad = Integer.parseInt(txtNumero.getText());
                                               double suma = 0;
                                               txtS.append("\n\nSeries 05\n");
                                              
                                               for(int num =2, den=3, c=1 ; c<=cantidad ; num+=4, den+=5, c++){
                                                               //signo
                                                               if( (c-1)%3==0 ){
                                                                              txtS.append("-");                                                         
                                                               }else{
                                                                              txtS.append("+");                                                        
                                                               }

                                                               //imprime le numero
                                                               txtS.append( num+"/" + den);                                               

                                                               //la separacion
                                                               if( c == cantidad ){
                                                                              txtS.append(".");                                                         
                                                               }else{
                                                                              txtS.append(",");                                                         
                                                               }

                                                               //signo
                                                               if( (c-1)%3==0 ){
                                                                              suma =  suma  - (1.0)*num/den;
                                                               }else{
                                                                              suma =  suma   +(1.0)*num/den;
                                                               }
                                                              
                                               }
                                              
                                               txtS.append("\nLa suma es : " + suma);
                               }
                              
               
                }
}



No hay comentarios:

Publicar un comentario