Computing">
BMA15O - PC4 (11-07-22) - Medina Vasquez Andrea Noelia
BMA15O - PC4 (11-07-22) - Medina Vasquez Andrea Noelia
BMA15O - PC4 (11-07-22) - Medina Vasquez Andrea Noelia
Output:
Código:
package fiee.indicemasacorporal;
import javax.swing.*;
import java.awt.event.*;
/**
*
* @author FIEE
*/
public class IndiceMasaCorporal extends JFrame {
private JTextField campoAltura;
private JTextField campoPeso;
private JTextField campoIMC;
public IndiceMasaCorporal(){
// declaracion de etiquetas fijas en la ventana
JLabel etiquetaAltura = new JLabel("Altura (metros)");
JLabel etiquetaPeso = new JLabel("Peso(kg)");
JLabel etiquetaIMC = new JLabel("Índice Masa Corporal");
// button
JButton calcular = new JButton("Calcular IMC");
campoAltura = new JTextField(6); // 6 columnas de espacio
campoPeso = new JTextField(6);
campoIMC = new JTextField(6);
// comp
campoIMC.setEditable(false); // resultado es inalterable
// crea panel
JPanel panel = new JPanel();
add(panel);
Código:
package ayaya.joyanes107;
import javax.swing.*;
import java.awt.event.*;
/**
*
* @author anmv_
*/
public class Joyanes107 extends JFrame {
private final double TASACAMBIO = 166.386;
private double cambioEfectivo = TASACAMBIO;
// jtext are camps to b filled with input
// jlabels are just tags with instructions
private JTextField campoCantidad;
private JTextField campoResultado;
public Joyanes107(){
// declaracion de etiquetas fijas
JLabel etiquetaConvertir = new JLabel("Cantidad a convertir");
//JLabel etiquetaCantidad = new JLabel("Cantidad a convertir");
JLabel etiquetaResultado = new JLabel("Resultado");
campoCantidad = new JTextField("0.0" ,6);
campoResultado = new JTextField("0.0", 6);
campoResultado.setEditable(false);
// button
JToggleButton moneda= new JToggleButton("Euros a Pesetas");
moneda.addActionListener(new OyenteBotonConmutador());
JButton cambiar= new JButton("Cambiar");
cambiar.addActionListener(new OyenteCambio());
// crear panel
JPanel panel = new JPanel();
// adding
panel.add(etiquetaConvertir);
panel.add(campoCantidad);
panel.add(etiquetaResultado);
panel.add(campoResultado);
panel.add(moneda);
panel.add(cambiar);
add(panel);
}
// Problema 3: (9 - Joyanes)
Output:
Código:
package ayaya.ykwim;
import java.util.*;
/**
*
* @author anmv_
*/
public class Irlydont {
// 9.20
public static <T extends Operable <T>> void elevaCuadrado(List<T> lista){
for(int i=0;i<lista.size();i++){
T resultado = lista.get(i).producto(lista.get(i));
lista.set(i,resultado);
}
}
// 9.19
public static <T extends Operable <T>> T sumaTodos(List<T> lista){
T resultado = lista.get(0);
for(int i=1;i<lista.size();i++){
resultado = resultado.suma(lista.get(i));
}
return resultado;
}
// 9.17
public static <T> T mayor(List<T> lista, Comparator <? super T> comparador){
T mayor = lista.get(0);
for(T elemento: lista){
if(comparador.compare(mayor, elemento)<0){
mayor = elemento;
}
}
return mayor;
}
// 9.14 (9.12++)
public static double sumaPerimetros(List<? extends Poligono> lista){
double suma = 0;
for(Poligono p: lista){
suma += p.perimetro();
}
return suma;
}
}
// clase Poligono
package ayaya.ykwim;
/**
*
* @author anmv_
*/
public class Poligono {
private Punto[] vertices;
// clase Racional
package ayaya.ykwim;
/**
*
* @author anmv_
*/
public class Racional implements Operable<Racional> {
private int num;
private int den;
// CC
public Racional(int num, int den){
if(den == 0){
throw new IllegalArgumentException();
}
this.num = num;
this.den = den;
}
public int getNumerador(){
return num;
}
public int getDenominador(){
return den;
}
public Racional suma(Racional r){
int numRes = num*r.getDenominador() + r.getNumerador()*den;
int denRes = den*r.getDenominador();
return new Racional(numRes, denRes);
}
public Racional resta(Racional r){
int numRes = num*r.getDenominador() - r.getNumerador()*den;
int denRes = den*r.getDenominador();
return new Racional(numRes, denRes);
}
public Racional producto(Racional r){
int numRes = num*r.getNumerador();
int denRes = den*r.getDenominador();
return new Racional(numRes, denRes);
}
public Racional division(Racional r){
int numRes = num*r.getDenominador();
int denRes = den*r.getNumerador();
if(denRes == 0){
throw new ArithmeticException();
}
return new Racional(numRes, denRes);
}
public String toString(){
return num + "/" + den;
}
}
package ayaya.ykwim;
import java.util.*;
/**
*
* @author anmv_
*/
public class ComparadorPoligonos implements Comparator<Poligono> {
public int compare(Poligono p1, Poligono p2){
if(p1.perimetro()<p2.perimetro()){
return -1;
}else if(p1.perimetro()>p2.perimetro()){
return 1;
}else{
return 0;
}
}
}
// interfaz operable
package ayaya.ykwim;
/**
*
* @author anmv_
*/
public interface Operable <E>{ // con todos los metodos de la clase Racional
E suma(E obj);
E resta(E obj);
E producto(E obj);
E division(E obj);
}
package ayaya.ykwim;
import java.util.*;
/**
*
* @author anmv_
*/
public class YKWIM {
racionales.add(r1);
racionales.add(r2);
racionales.add(r3);
// show parameters
System.out.println("Numeros racionales:");
System.out.println(racionales);
// llamada al metodo del 9.19
System.out.println("-->(implementacion del metodo 9.19)\nSuma:
"+Irlydont.sumaTodos(racionales));
// llamada al metodo 9.20
Irlydont.elevaCuadrado(racionales);
System.out.println("-->(implementacion del metodo 9.20)\nElementos al cuadrado: "+racionales);
///////////////////////////////////////////////////////
Punto[] vertices1 = {new Punto(0,0), new Punto(0,1), new Punto(1,1), new Punto(1,0)};
Punto[] vertices2 = {new Punto(0,0), new Punto(0,3), new Punto(4,0)};
Punto[] vertices3 = {new Punto(1,1), new Punto(1,4), new Punto(5,4), new Punto(6,1)};
}
}