Mostrando entradas con la etiqueta inf-121. Mostrar todas las entradas
Mostrando entradas con la etiqueta inf-121. Mostrar todas las entradas

miércoles, 18 de marzo de 2015

Clases y Objetos

Main.java
public class Main {
 public static void main(String[] args) {
//  a) Inicialice el radio de la Rueda con el valor de 10.2
  Circunferencia Rueda= new Circunferencia();
  Rueda.ModificarRadio(10.2);
//  b) Inicialice el radio de la Moneda con el valor de 1.4
  Circunferencia Moneda = new Circunferencia();
  Moneda.ModificarRadio(1.4);
//  c) Imprima el área de la Rueda.
  System.out.println("Area rueda "+Rueda.CalcularArea());
//  d) Imprima el área de la Moneda.
  System.out.println("Area moneda "+Moneda.CalcularArea());
//  e) Imprima el perímetro de la Rueda.
  System.out.println("Perimetro Rueda "+Rueda.CalcularPerimetro());
//  f) Imprima el perímetro de la Moneda.
  System.out.println("Persimetro Moneda "+Moneda.CalcularPerimetro());
  
 }
}

Circunferencia.java
public class Circunferencia {
 private double radio;
 
 public double CalcularArea(){
  return Math.PI*radio*radio;
 }
 public double CalcularPerimetro(){
  return 2*Math.PI*radio;
 }  
 public void ModificarRadio(double r){
  this.radio=r;
 }
 public double ConsultarRadio(){
  return radio;
 } 
}

Retorno

Hola, hace tiempo q ya no actualizo el blog :( por falta de tiempo, pero ahora vamos con todo encontré unos pdf muy buenos de de México donde enseñan entorno gráfico uu el temor en cada semestre de los q esta en 121 no de todos, lo malo o bueno es q esta en C# y los resolvere en java para q puedan guiarse como se resuelve, es fácil en especial si manejan NetBeans solo hay que darse cuenta.

Los Links:

  1. Practica 2-1 - Clases y objetos.pdf
  2. Practica 3-1 - Herencia.pdf
  3. Practica 3-2 - Composicion.pdf
  4. Practica 3-3 - Agregacion.pdf
  5. Practica 4-1 - Polimorfismo.pdf
  6. Practica 4-2 - Interfaces.pdf
  7. Practica 5-1 - Excepciones.pdf
  8. Practica 6-1 - Altas en Bases de datos.pdf
  9. Practica 6-2 - Bajas en Bases de Datos.pdf
  10. Practica 6-3 - Consultas en Bases de Datos.pdf
  11. Practica 6-4 - Listado de Bases de Datos.pdf

miércoles, 24 de septiembre de 2014

Guia de Ejercicios No 2 Sol

Guia de Ejercicios No 2
 LAB121 Laboratorio de INF121 
Tema: Programacion Orientada a Objetos
 9 de septiembre de 2014
Hola después de mucho tiempo estoy volviendo a publicar algo decente, es la practica que les dieron a los q estan en  LAB 121, xD espero q este bien :D ;)  
public class Punto {
 protected int a1;
 protected int a2;
 protected int a3;
 //constructores
 public Punto() {
  a1=1;
  a2=1;
  a3=1;
 }
 public Punto(int a,int b, int z){
  this.a1=a;
  this.a2=b;
  this.a3=z;
 }
 public int getA1() {
  return a1;
 }
 public int getA2() {
  return a2;
 }
 public int getA3() {
  return a3;
 }
 
 public Punto suma(Punto b){
  Punto pun = new Punto(a1+b.a1, a2+b.a2, a3+b.a3);
  return pun; //retorna este punto
 }
 //fin constructores
 public Punto resta(Punto b) {
  Punto pun = new Punto(a1-b.a1, a2-b.a2, a3-b.a3);
  return pun;
 }
 public int prod_interno(Punto b) {
  return (a1*b.a1 + a2*b.a2 + a3*b.a3);
 }
 public double norma(){
  return (double)Math.sqrt(a1*a1 + a2*a2 + a3*a3);
 }
 public double cruz(Punto b){
  return (double)Math.abs((a2*b.getA3() - a3*b.getA2()) - 
        (a3*b.getA1() - a1*b.getA3()) + 
           (a1*b.getA2() - a2*b.getA1()));
 }
 public void mostrar(){
  System.out.println(a1+ " "+a2+" "+a3);
 }
}
AlgebraVectorial.java
public class AlgebraVectorial {
 Punto p;
 
 public AlgebraVectorial() {
  this.p.a1=1;
  this.p.a2=1;
  this.p.a3=1;
 }
 public AlgebraVectorial(Punto a) {
  this.p = a;
 }

 // a)
 public void Perpendicular(Punto b) {
  Punto x = p.suma(b);
  Punto y = p.resta(b);
  
  if (Math.abs(x.getA1()) == Math.abs(y.getA1())
    && Math.abs(x.getA2()) == Math.abs(y.getA2())
    && Math.abs(x.getA3()) == Math.abs(y.getA3())) {
   System.out.println("El punto a es ortogonal o perpendicular a b");
  } else {
   System.out.println("El punto a no ortogonal o perpendicular a b");
  }
 }

 // b)
 public void Perpendicular(Punto a, Punto b, Punto c, Punto d) {
  Punto x = a.resta(b);
  Punto y = b.resta(a);
  if (Math.abs(x.getA1()) == Math.abs(y.getA1())
    && Math.abs(x.getA2()) == Math.abs(y.getA2())
    && Math.abs(x.getA3()) == Math.abs(y.getA3())) {
   System.out.println("El vector a mutuamente ortogonal a b");
  } else {
   System.out.println("El vector a no es mutuamente ortogonal a b");
  }
 }

 // c)
 public void Perpendicular(Punto b, int cero) {
  cero=0;
  if(p.prod_interno(b) == cero){
   System.out.println("Vector es ortogonal a b");
  }else{
   System.out.println("Vector no es ortogonal a b");
  }
 }

 // d)
 public void Perpendicular(Punto a, Punto b) {
  Punto x=p.suma(a);
  double nx = x.norma();
  
  if(nx == (double)(a.norma() + b.norma())){
   System.out.println("Vector a es ortogonal a b");
  }else{
   System.out.println("Vector a no es ortogonal a b");
  }
 }

 // e)
 public void Paralela(Punto b) {
  //zzz
 }

 // f)
 public void Paralela(Punto a, Punto b) {
  if(a.cruz(b) == (double)0.0 ){
   System.out.println("AxB vector a  es paralela a b "+a.cruz(b));
  }else{
   System.out.println("AxB vector a  no es paralela a b "+ a.cruz(b));
  }
 }

 // g
 public void proy_de_a_en_b(Punto b) {
  System.out.println("Proyeccion es ");
  double numero = (double)p.prod_interno(b);
  double nomr=b.norma()*b.norma();
  System.out.println(" a1 = "+numero*b.getA1()+"/"+nomr);
  System.out.println(" a2 = "+numero*b.getA2()+"/"+nomr);
  System.out.println(" a3 = "+numero*b.getA3()+"/"+nomr);
 }

 // h)
 public void Componente_de_a_en_b(Punto a, Punto b) {
  System.out.println("Comp de a en direccion b ");
  System.out.println((double)Math.abs(a.prod_interno(b))+"/"+b.norma());
 }
}
Main.java
public class Main {

 /**
  * @author sam starsaminf@gmail.com
  */
 public static void main(String[] args) {
  Punto a=new Punto(1,-3,-2);
  Punto b=new Punto(-3,-4,0);
  AlgebraVectorial alg=new AlgebraVectorial(a);
  //a
  alg.Perpendicular(b);
  //b
  alg.Perpendicular(a,b,b,a);
  //c
  alg.Perpendicular(b, 0);
  //d
  alg.Perpendicular(a,b);
  //e
  alg.Paralela(b);
  //f
  alg.Paralela(a,b);
  //g
  alg.proy_de_a_en_b(b);
  //h
  alg.Componente_de_a_en_b(a, b);
 }

}

lunes, 17 de marzo de 2014

Agregación Composición ejer 1

Hola después de mucho tiempo estoy volviendo a publicar algo decente, esta ves publicare las soluciones en diferentes lenguajes estos serán: Java, c#, c++,QT puede que php también :D
Espesemos :
Código :
Para Java
Biblioteca.java

import java.util.Scanner;

public class Biblioteca {
 public String Nombre;
 public String Direccion;
 public int nroLibros;
 public Libro[] libro;

 public Biblioteca(String nombre, String direccion, int nrolib) {
  Nombre = nombre;
  Direccion = direccion;
  nroLibros = nrolib;
  libro = new Libro[30];
  for (int i = 0; i < nroLibros; i++) {
   libro[i] = new Libro("Aventuras de Gregor Samsa ", "Samsa", 100);
  }
 }

 public void solA(String autor) {
  System.out.println("Busqueda de libro de autor = " + autor);
  for (int i = 0; i < nroLibros; i++) {
   if (libro[i].autor.equals(autor)) {
    System.out.println("Libro " + libro[i].nombre);
   }
  }
 }

 public void solB(Biblioteca a, Biblioteca b) {
  for (int i = 0; i < a.nroLibros; i++) {
   for (int j = 0; j < b.nroLibros; j++) {
    if (a.libro[i].nombre.equals(b.libro[j].nombre)) {
     System.out.println("EL libro " + a.libro[i].nombre
       + " esta en las 2 bibliotecas");
     break; // como ya sabemos q esta saltamos la busqueda
    }
   }
  }
 }

 public void solC(int x) {
  System.out.println("Eliminando libros de nro pag = " + x);
  System.out.println("Antes de eliminar " + nroLibros);
  int nn = 0;
  for (int i = 0; i < nroLibros; i++) {
   if (libro[i].npag == x) {
    // inicio eliminacion
    // recorrer todos los elementos
    for (int j = i; j < nroLibros - 1; j++) {
     libro[j] = libro[j + 1];
    }
    nn++;
    // nroLibros--;
   }
  }
  nroLibros -= nn;
  System.out.println("Al terminar la eliminacion quedan = " + nroLibros);

 }

 public void solD(int k) {
  for (int i = 0; i < k; i++) {
   createbook();
  }
 }

 public void createbook() {
  Scanner sc = new Scanner(System.in);
  System.out.println("Datos libro");
  System.out.print("Titulo : ");
  String nlib = sc.nextLine();
  System.out.print("Autor :");
  String alib = sc.nextLine();
  System.out.print("Nro pag :");
  int plib = sc.nextInt();
  libro[nroLibros] = new Libro(nlib, alib, plib);
  nroLibros++;
 }
}

Libbro.java
public class Libro {
 public String nombre;
 public String autor;
 public int npag;

 public Libro(String n, String a, int np) {
  nombre = n;
  autor = a;
  npag = np;
 }
}

Main.java el famoso principal
public class Main {
 public static void main(String[] args) {
  Biblioteca a = new Biblioteca("Biblioteca CF", "Rusia", 5);
  System.out.println("Mostrando libros de la biblioteca :" + a.Nombre);
  for (int i = 0; i < a.nroLibros; i++) {
   System.out.println("  Nombre libro = " + a.libro[i].nombre);
   System.out.println("  Autor        = " + a.libro[i].autor);
   System.out.println("  Num paginas  = " + a.libro[i].npag);
   System.out.println("----------------------------");
  }
  // sol A
  a.solA("Samsa");
  System.out.println("----------------------------");
  // sol B
  Biblioteca b = new Biblioteca("Biblioteca TC", "EEUU", 5);
  b.solB(a, b);
  System.out.println("----------------------------");
  // sol C
  a.solC(100);
  for (int i = 0; i < a.nroLibros; i++) {
   System.out.println("  Nombre libro = " + a.libro[i].nombre);
   System.out.println("  Autor        = " + a.libro[i].autor);
   System.out.println("  Num paginas  = " + a.libro[i].npag);
   System.out.println("----------------------------");
  }
  System.out.println("----------------------------");
  a.solD(5);
  for (int i = 0; i < a.nroLibros; i++) {
   System.out.println("  Nombre libro = " + a.libro[i].nombre);
   System.out.println("  Autor        = " + a.libro[i].autor);
   System.out.println("  Num paginas  = " + a.libro[i].npag);
   System.out.println("----------------------------");
  }
 }

}

Descargar

martes, 26 de febrero de 2013

sábado, 4 de febrero de 2012

Iniciando en Programación Orientada a Objetos (POO)

Un ejemplo simple de POO.


Explicación


 Atributos  En la parte de atributos van las características del objeto en este caso nuestro objeto "PERRO".
Las características en común de todos los "PERROS " son : Nombre,Color,Raza,Sexo,..etc,

Como identifico los atributos ?¿ 
Un atributo es algo en común para este caso los perros tiene un Nombre, tienen una raza, color, etc. La programación orientada a objetos agarra a un objeto y
extrae sus características que hacen especial al objeto.

Métodos Son las acciones que realizara, entre ellos estaría el constructor o constructores, NuevoPerro mm mejor llamemos le Leer , Mostrar, etc.

Perro()
          Se crea un nuevo objeto con los datos que le demos,

 public Perro() {
  Nombre = "Toby";
  color = "Cafe";
  raza = "Chapi";
  sexo = "MAcho";
 }

Imagínate que en una de ellas el Docente nos pida instanciar (crear) 20 Perros uff tardarías full tiempo en leer los datos de cada objeto. Pero con los constructores nos ahorramos ese trabajito de estar llenando uno por uno  :xD.

Los otros dos metodos creo q no necesitan explicacion
NuevoPerro()
           mmmm mejor q se llame LeerPerro :), solo leemos los datos del objeto,

public void LeerPerro() {
  Scanner sc = new Scanner(System.in);
  System.out.println("Nombre del Perro :");
  Nombre = sc.nextLine();
  System.out.println("Su color :");
  color = sc.nextLine();
  System.out.println("Su raza :");
  raza = sc.nextLine();
  System.out.println("Su sexo :");
  sexo = sc.nextLine();
 }
Mostrar()
          Solo mostramos
 
public void Mostrar() {
  System.out.println("Nombre del Perro : " + Nombre);
  System.out.println("Su color    : " + color);
  System.out.println("Su raza    : " + raza);
  System.out.println("Su sexo    : " + sexo);
 }

Clase Perro
import java.util.Scanner;
class Perro {
 private String Nombre;
 private String color;
 private String raza;
 private String sexo;

 public Perro() {
  Nombre = "Toby";
  color = "Cafe";
  raza = "Chapi";
  sexo = "MAcho";
 }

 public void LeerPerro() {
  Scanner sc = new Scanner(System.in);
  System.out.println("Nombre del Perro :");
  Nombre = sc.nextLine();
  System.out.println("Su color :");
  color = sc.nextLine();
  System.out.println("Su raza :");
  raza = sc.nextLine();
  System.out.println("Su sexo :");
  sexo = sc.nextLine();
 }

 public void Mostrar() {
  System.out.println("Nombre del Perro : " + Nombre);
  System.out.println("Su color    : " + color);
  System.out.println("Su raza    : " + raza);
  System.out.println("Su sexo    : " + sexo);
 }

}
Clase App, principal, como quieran llamarlo.
En esta clase se instanciara o para mejor entendimiento se creara cada objeto

Perro a = new Perro();
Con ello estamos creando un nuevo objeto de tipo PERRO, podemos crear infinidad de objetos con nombres diferente :xD.

public class Main {
 public static void main(String[] starsaminf) {
  Perro a = new Perro();
  a.LeerPerro();
  System.out.println("*****************");
  a.Mostrar();
  System.out.println("*****************");
  Perro b = new Perro();
  b.Mostrar();
  System.out.println("*****************");
 }
}
Saludos :D