Mostrando entradas con la etiqueta CODIGO FUENTE. Mostrar todas las entradas
Mostrando entradas con la etiqueta CODIGO FUENTE. Mostrar todas las entradas

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