CC10A06 COMPUTACION I 10 del 2003

Anuncio
CC10A06
COMPUTACION I
class Pieza{
int fila,col;
Pieza(int x, int y){
fila = x;
col = y;
}
boolean amenaza(int x, int y){
return false;
}
int getFila(){
return fila;
}
int getCol(){
return col;
}
}
class Torre extends Pieza{
int valor;
// definimos esta variable adicional
Torre(int x, int y){
// constructor particular de la subclase Torre
super(x,y);
valor = 5;
}
boolean amenaza(int x, int y){ // metodo amenaza re-escrito para Torres
if((x==fila || y==col) & !(x!=fila && y!=col))
return true;
return false;
}
}
class Caballo extends Pieza{
int valor;
// definimos esta variable adicional
Caballo(int x, int y){
// constructor particular de la subclase Caballo
super(x,y);
valor = 3;
}
boolean amenaza(int x, int y){ // metodo amenaza re-escrito para Caballos
if(Math.abs(x-fila)==1 && Math.abs(y-col)==2 ||
Math.abs(x-fila)==2 && Math.abs(y-col)==1)
return true;
return false;
}
}
class EjemploUso{
static public void main(String[] args){
Pieza p1 = new Torre(2,2);
c.println("p1:" + p1.amenaza(4,4));
c.println("p1:" + p1.amenaza(2,4));
Pieza p2 = new Caballo(4,3);
c.println("p2:" + p2.amenaza(6,5));
c.println("p2:" + p2.amenaza(6,4));
}
}
// ejemplo mula :)
// entrega false
// entrega true
// entrega false
// entrega true
10 del 2003
CC10A06
COMPUTACION I
class Figura{
public Figura(){
}
public double perimetro(){
return 0;
}
}
class Circulo extends Figura {
double cx, cy;
double r;
public Circulo(double x, double y, double z) {
super();
cx = x;
cy = y;
r = z;
}
public double perimetro() {
return 2 * Math.PI * r;
}
}
class Cuadrado extends Figura {
double cx, cy;
double l;
public Cuadrado(double x, double y, double z) {
super();
cx = x;
cy = y;
l = z;
}
public double perimetro() {
return 4 * l;
}
}
class ProgramaEjemplo {
public static double sumaPerimetros(Figura[] fig){
double suma = 0;
for (int i=0; i<fig.length; i++)
suma += fig[i].perimetro();
return suma;
}
public static void main(String[] args) {
Console c = new Console();
c.println("FIGURAS");
c.print("# de Figuras?"); int n = c.readInt();
Figura[] fig = new Figura[n];
// Creamos el arreglo de Figuras (generico)
for (int i=0; i<n; i++) {
c.print("(c)irculo o c(u)adrado?"); String a = I.readLine();
c.println("Ingrese CENTRO");
c.print("x?"); double cx = c.readDouble();
c.print("Y?"); double cy = c.readDouble();
c.print("Radio/Lado?"); double x = c.readDouble();
if (a.equals("c"))
fig[i] = new Circulo(cx, cy, x);
// fig[i] referenciara a un Circulo
else if (a.equals("u"))
fig[i] = new Cuadrado(cx, cy, x);
// fig[i] referenciara a un Cuadrado
}
c.println("La suma de los perimetros es: " + sumaPerimetros(fig));
}
}
10 del 2003
Descargar