You are on page 1of 5

Problemas Lp2

Problema_1: Disee un programa que genere aleatoriamente los sueldos de n empleados de una empresa con valores en el intervalo de S/. 800 a S/. 1700 y determine: El sueldo promedio. El sueldo mximo. El sueldo mnimo. El nmero de empleados ganan un sueldo inferior a S/. 1000.

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

public class Problema_1 extends JApplet implements ActionListener{ // Declaracin de variables miembro JButton btnProcesar, btnBorrar; JTextArea txtS; JLabel lblNumero; JTextField txtNumero; JScrollPane scpScroll;

//-------------------------------------------------------------------------// Crea la interfaz grfica de usuario public void init() { getContentPane().setLayout(null);

txtNumero = new JTextField(); txtNumero.setBounds(105, 15, 100, 23); getContentPane().add(txtNumero);

btnProcesar = new JButton("Procesar"); btnProcesar.setBounds(321, 15, 100, 23); btnProcesar.addActionListener(this); getContentPane().add(btnProcesar);

btnBorrar = new JButton("Borrar"); btnBorrar.setBounds(220, 15, 100, 23); btnBorrar.addActionListener(this); getContentPane().add(btnBorrar);

lblNumero = new JLabel("Numero"); lblNumero.setBounds(15, 15, 90, 23); getContentPane().add(lblNumero);

txtS = new JTextArea(); txtS.setFont(new Font("monospaced", 0, 12));

scpScroll = new JScrollPane(txtS); scpScroll.setBounds(15, 53, 406, 250); getContentPane().add(scpScroll); } //-------------------------------------------------------------------------// Procesa eventos de tipo ActionEvent public void actionPerformed( ActionEvent e ){ if(e.getSource() == btnProcesar) procesar(); if(e.getSource() == btnBorrar) borrar(); } //-------------------------------------------------------------------------void borrar(){ txtNumero.setText(""); txtS.setText(""); txtNumero.requestFocus(); } //-------------------------------------------------------------------------int getN(){ return Integer.parseInt(txtNumero.getText()); } //-------------------------------------------------------------------------void procesar(){ int n;

n= getN(); //funcion con valor de retorno sueldosAleatorios(n); //procedimiento

void sueldosAleatorios(int n) { int sueldo,suma_suel=0,suel_max=800,suel_min=1700,cont_emp=0; double prom_suel; txtS.setText(""); for(int i=1;i<=n;i++) { sueldo = (int) ((1700-800+1)*Math.random()+800); // (int) ((MAX - MIN + 1)*Math.random()+MIN)

txtS.append(sueldo+"\n"); suma_suel += sueldo; if(sueldo>suel_max) suel_max = sueldo; if(sueldo<suel_min) suel_min = sueldo; if(sueldo<1000) cont_emp++;

} prom_suel = suma_suel/(n*1.0);

txtS.append("El sueldo promedio de los "+n+" empleados es: S/."+prom_suel+"\n"); txtS.append("El sueldo maximo es: S/."+suel_max+"\n"); txtS.append("El sueldo minimo es: S/."+suel_min+"\n"); txtS.append("El numero de empleados que ganan menos de S/.1,000 es: "+cont_emp+"\n"); } }

Problema_2: Disee un programa que genere nmeros aleatorios en el intervalo de 10 a 99 hasta obtener un nmero cuya suma de sus cifras sea igual a 4 6. Muestre los nmeros conforme se vayan generando y muestre al final: La cantidad de nmeros generados. El mayor nmero generado. El menor nmero generado. import java.awt.event.*; import java.awt.*; import javax.swing.*;

public class Problema_2 extends JApplet implements ActionListener{ // Declaracin de variables miembro JButton btnProcesar, btnBorrar; JTextArea txtS; JLabel lblNumero; JScrollPane scpScroll;

//-------------------------------------------------------------------------// Crea la interfaz grfica de usuario public void init() { getContentPane().setLayout(null);

btnProcesar = new JButton("Procesar"); btnProcesar.setBounds(321, 15, 100, 23); btnProcesar.addActionListener(this); getContentPane().add(btnProcesar);

btnBorrar = new JButton("Borrar"); btnBorrar.setBounds(220, 15, 100, 23); btnBorrar.addActionListener(this); getContentPane().add(btnBorrar);

lblNumero = new JLabel("Numero"); lblNumero.setBounds(15, 15, 90, 23); getContentPane().add(lblNumero);

txtS = new JTextArea(); txtS.setFont(new Font("monospaced", 0, 12));

scpScroll = new JScrollPane(txtS); scpScroll.setBounds(15, 53, 406, 250); getContentPane().add(scpScroll); } //-------------------------------------------------------------------------// Procesa eventos de tipo ActionEvent public void actionPerformed( ActionEvent e ){ if(e.getSource() == btnProcesar) procesar(); if(e.getSource() == btnBorrar) borrar(); } //-------------------------------------------------------------------------void borrar(){ txtS.setText("");

//-------------------------------------------------------------------------void procesar(){

numerosAleatorios(); //procedimiento }

void numerosAleatorios() { int num,cont_num=0,num_may=10,num_men=99,sum_cif,coc,res;

do { sum_cif = 0;

num = (int)((99-10+1)*Math.random()+10); txtS.append(num+"\n"); // ver numeros aleatorios en pantalla cont_num++; if(num > num_may) num_may = num; if(num < num_men) num_men = num; while(num>0) // descomposicion de un numero de n cifras { coc = num/10; res = num%10; sum_cif += res; num = coc; }

}while(!(sum_cif==4 || sum_cif==6)); //(!)---> negar su proposicion para lograr valor falso

txtS.append("La cantidad de numeros generados es: "+cont_num+"\n"); txtS.append("El mayor maximo es: "+num_may+"\n"); txtS.append("El menor minimo es: "+num_men+"\n"); } }

You might also like