diff --git b/Dia 1/Torosyvacas.java a/Dia 1/Torosyvacas.java new file mode 100644 index 0000000..857adc4 --- /dev/null +++ a/Dia 1/Torosyvacas.java @@ -0,0 +1,211 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package torosyvacas; + +import java.util.Scanner; + +/** + * + * @author user + */ +public class Torosyvacas { + + /** + * @param args the command line arguments + */ + public static void main(String[] args) { + // TODO code application logic here + + Scanner jf= new Scanner (System.in); + int numAdivinar =0; + int [] digitos; + boolean cifrasRepetidas= false; + + + + do{ + + + + numAdivinar= generaNumeroAleatorio(1000, 9999);// Indica todos las combinaciones posibles de 4 cifras + + digitos= devuelveDigitos(numAdivinar); + + cifrasRepetidas= elementoRepetido(digitos);// si exiten digitos repetidos + + + } while(cifrasRepetidas); + + System.out.print(numAdivinar); + + boolean fin = false; // indica cuando acaba el juego + + + while(!fin){ + + System.out.println("Inserte un numero jugador "); + int numeroUsuario= jf.nextInt(); + int[]digitosusuario= devuelveDigitos(numeroUsuario); + + if(digitosusuario.length != 4){ + System.out.println("Solo numero de 4 cifras jugador B "); + + }else{ + int toros= numeroElementosRepetidosMismaPosicion(digitosusuario, digitos); // cuantos numeros coinciden + int vacas= numeroElementosRepetidosDistintaPosicion(digitosusuario, digitos); + + System.out.println("INTENTO B "+toros+"T"+vacas+"V"); + if(toros==digitos.length){ + fin= true; + System.out.println(" FIN DEL JUEGO GANO B"); + } + } + } + + + } + //Funciones + //Funcion para generar numero aleatorio + public static int generaNumeroAleatorio(int minimo, int maximo){ + + int num=(int)Math.floor(Math.random()*(minimo-(maximo+1))+(maximo+1)); + return num; + } + + public static boolean elementoRepetido(int[] array) { + + // Recorremos el array la 1º vez + for (int i = 0; i < array.length; i++) { + + // Recorremos el mismo array + for (int j = i + 1; j < array.length; j++) { + // Si coincide significa que hay un elemento repetido + if (array[i] == array[j]) { + return true; + } + } + + } + + // No hay un elemento repetido + return false; + + } + public static int numeroElementosRepetidosDistintaPosicion(int[] array1, int[] array2) { + + int repetidos = 0; + for (int i = 0; i < array1.length; i++) { + + for (int j = 0; j < array2.length; j++) { + // Sino es la misma posicion y son igaules, aumento los repetidos + if (i != j && array1[i] == array2[j]) { + repetidos++; + } + } + } + return repetidos; + } + + /** + * Indico cuando elementos repetidos hay en dos arrays. Solo arrays con la + * misma longitud y en la misma posicion. + * + * @param array1 Primer array + * @param array2 Segundo array + * @return Numero de repeticiones en ambos arrays. Devuelve -1 en caso de + * que sean de logitudes diferentes + */ + public static int numeroElementosRepetidosMismaPosicion(int[] array1, int[] array2) { + + // Si son de diferentes longitudes, devuelvo -1 + if (array1.length != array2.length) { + return -1; + } + + int repetidos = 0; + + for (int i = 0; i < array1.length; i++) { + // Si son iguales, aumento los repetidos + if (array1[i] == array2[i]) { + repetidos++; + } + } + + return repetidos; + + } + + /** + * Devuelve los digitos de un numero en un array + * + * @param numeroInicial Numero al que extraer los digitos + * @return Array con cada uno de los digitos + */ + public static int[] devuelveDigitos(int numeroInicial) { + + int numero = numeroInicial; + + int digitos[] = new int[cuentaCifras(numeroInicial)]; + int numero_solo; + + for (int i = 0; numeroInicial > 0; i++) { + numero /= 10; + numero_solo = numeroInicial - (numero * 10); + digitos[i] = numero_solo; + numeroInicial = numero; + } + return invertirArray(digitos); + + } + + + + + + + + //* Cuenta el numero de cifras de un numero + //* + /* @param num Número a contrar + * @return numero de cifras + */ + + public static int cuentaCifras(int num) { + + int contador = 0; + + if (num == 0) { + contador = 1; + } else { + + for (int i = Math.abs(num); i > 0; i/=10) { + contador++; + } + + } + + return contador; + } + /** + * Invierte los datos de un array + * + * @param array Array que contiene los datos + * @return Devuelve un nuevo array con los datos invertidos + */ + public static int[] invertirArray(int array[]) { + + int temp[] = new int[array.length]; + + for (int i = temp.length - 1, j = 0; i >= 0; i--, j++) { + temp[i] = array[j]; + } + + return temp; + } + + + +} diff --git b/Dia 2/Lot.png a/Dia 2/Lot.png new file mode 100644 index 0000000..bd91b71 Binary files /dev/null and a/Dia 2/Lot.png differ diff --git b/Dia 2/UML.png a/Dia 2/UML.png new file mode 100644 index 0000000..503a8ba Binary files /dev/null and a/Dia 2/UML.png differ diff --git b/Dia 2/switch_meses.java a/Dia 2/switch_meses.java new file mode 100644 index 0000000..526b39e --- /dev/null +++ a/Dia 2/switch_meses.java @@ -0,0 +1,52 @@ + +public class switch_meses { + public static void main (String[] arg) { + String dia_m; + System.out.println("Ingresar mes"); + dia_m = System.console().readLine(); + + String mes; + + switch (dia_m) + { + case "12": + + + case "1": + + + case "2": + mes = "Verano"; + break; + case "3": + + case "4": + + case "5": + + mes = "Otonio"; + break; + case "6": + + case "7": + + case "8": + mes = "invierno"; + break; + + case "9": + + case "10": + + case "11": + mes = "Primavera"; + break; + + default: mes = "lang inválido"; + break; + + } + System.out.println(mes); + + } +} diff --git b/Dia 3/ConsultasFilm.docx a/Dia 3/ConsultasFilm.docx new file mode 100644 index 0000000..cf45764 Binary files /dev/null and a/Dia 3/ConsultasFilm.docx differ diff --git b/Dia 3/Dia3.docx a/Dia 3/Dia3.docx new file mode 100644 index 0000000..3fdba79 Binary files /dev/null and a/Dia 3/Dia3.docx differ diff --git b/Dia 3/Mochila.java a/Dia 3/Mochila.java new file mode 100644 index 0000000..ad0b63e --- /dev/null +++ a/Dia 3/Mochila.java @@ -0,0 +1,256 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package mochila; + +/** + * + * @author user + */ +public class Mochila { +private int pesoMaximo; + private Elemento[] elementos; + + private int peso; + private int beneficio; + + public Mochila(int pesoMaximo, int numElementos) { + this.pesoMaximo = pesoMaximo; + this.elementos = new Elemento[numElementos]; + this.beneficio = 0; + this.peso = 0; + } + + public Elemento[] getElementos() { + return elementos; + } + + public int getPeso() { + return peso; + } + + public void setPeso(int peso) { + this.peso = peso; + } + + public int getBeneficio() { + return beneficio; + } + + public void setBeneficio(int beneficio) { + this.beneficio = beneficio; + } + + public int getPesoMaximo() { + return pesoMaximo; + } + + public void setPesoMaximo(int pesoMaximo) { + this.pesoMaximo = pesoMaximo; + } + + /** + * Añade un elemento a la mochila + * @param e + */ + public void aniadirElemento(Elemento e) { + + for (int i = 0; i &lt; this.elementos.length; i++) { + if (this.elementos[i] == null) { + this.elementos[i] = e; //lo añade + this.beneficio+=e.getBeneficio(); // aumenta el beneficio + this.peso+=e.getPeso(); // Aumenta el piso + break; + } + } + + } + + /** + * Vaciamos la mochila + */ + public void clear() { + this.peso=0; + this.beneficio=0; + for (int i = 0; i &lt; this.elementos.length; i++) { + this.elementos[i] = null; + } + } + + /** + * Elimina elemento dado + * @param e + */ + public void eliminarElemento(Elemento e) { + for (int i = 0; i &lt; this.elementos.length; i++) { + if (this.elementos[i].equals(e)) { + this.elementos[i] = null; //el elemento fuera + this.peso-=e.getPeso(); //Reduce el peso + this.beneficio-=e.getBeneficio(); // reduce el beneficio + break; + } + } + } + + /** + * Indica si existe un elemento + * @param + * @return + */ + public boolean existeElemento(Elemento e) { + for (int i = 0; i &lt; this.elementos.length; i++) { + if (this.elementos[i] != null &amp;&amp; this.elementos[i].equals(e)) { + return true; + } + } + return false; + } + + /** + * Muestra la mochila + * @return + */ + + + public String toString() { + String cadena=""; + for (int i = 0; i &lt; this.elementos.length; i++) { + if (this.elementos[i] != null) { + cadena+=elementos[i]+"\n"; + } + } + cadena+="Peso: " + getPeso()+"\n"; + cadena+="Beneficio: " + getBeneficio()+"\n"; + return cadena; + + } + + + /** + * @param args the command line arguments + */ + + public static void llenarMochila(Mochila m_base, Elemento[] elementos, boolean llena, Mochila m_opt) { + + //si esta llena + if (llena) { + //compruebo si tiene mas beneficio que otra + if (m_base.getBeneficio() > m_opt.getBeneficio()) { + + Elemento[] elementosMochBase = m_base.getElementos(); + m_opt.clear(); + + //metemos los elementos + for (Elemento e : elementosMochBase) { + if (e != null) { + m_opt.aniadirElemento(e); + } + + } + + } + + } else { + //Recorre los elementos + for (int i = 0; i < elementos.length; i++) { + //si existe el elemento + if (!m_base.existeElemento(elementos[i])) { + //Si el peso de la mochila se supera, indicamos que esta llena + if (m_base.getPesoMaximo() > m_base.getPeso() + elementos[i].getPeso()) { + m_base.aniadirElemento(elementos[i]); //añadimos + llenarMochila(m_base, elementos, false, m_opt); + m_base.eliminarElemento(elementos[i]); // lo eliminamos + } else { + llenarMochila(m_base, elementos, true, m_opt); + } + + } + + } + + } + + } + public static void main(String[] args) { + + + + Elemento[] elementos = { + new Elemento(1, 1), + new Elemento(2, 2), + new Elemento(4, 10), + new Elemento(1, 2), + new Elemento(12, 15); + + Mochila m_base = new Mochila(15, elementos.length); + Mochila m_opt = new Mochila(15, elementos.length); + + llenarMochila(m_base, elementos, false, m_opt); + + System.out.println(m_opt); + +// TODO code application logic here + } + + + + + + +public class Elemento { + + private int peso; + private int beneficio; + + public Elemento(int peso, int beneficio) { + this.peso = peso; + this.beneficio = beneficio; + } + + public int getPeso() { + return peso; + } + + public void setPeso(int peso) { + this.peso = peso; + } + + public int getBeneficio() { + return beneficio; + } + + public void setBeneficio(int beneficio) { + this.beneficio = beneficio; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final Elemento other = (Elemento) obj; + if (this.peso != other.peso) { + return false; + } + if (this.beneficio != other.beneficio) { + return false; + } + return true; + } + + @Override + public String toString(){ + return "Peso:"+peso+","+" beneficio:"+beneficio; + } + + +} +} diff --git b/Dia 3/Pila.java a/Dia 3/Pila.java new file mode 100644 index 0000000..ee5458e --- /dev/null +++ a/Dia 3/Pila.java @@ -0,0 +1,42 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package pila; + +import java.util.Stack; + +/** + * + * @author user + */ +public class Pila { + + /** + * @param args the command line arguments + */ + public static void main(String[] args) { +Stack pila= new Stack(); +pila.push(1); +pila.push(2); +pila.push(3); +pila.push(4); +pila.push(5);pila.push(6); +pila.push(7); + + +System.out.println(" "+pila.peek()); + +while (pila.empty()==false + + ){ +System.out.println(pila.pop()); + +} + + +// TODO code application logic here + } + +} diff --git b/Dia 3/~$Dia3.docx a/Dia 3/~$Dia3.docx new file mode 100644 index 0000000..60bfab0 Binary files /dev/null and a/Dia 3/~$Dia3.docx differ diff --git b/Dia 3/~$nsultasFilm.docx a/Dia 3/~$nsultasFilm.docx new file mode 100644 index 0000000..60bfab0 Binary files /dev/null and a/Dia 3/~$nsultasFilm.docx differ diff --git b/Dia 4/Calculadora.html a/Dia 4/Calculadora.html new file mode 100644 index 0000000..df53149 --- /dev/null +++ a/Dia 4/Calculadora.html @@ -0,0 +1,68 @@ + + + +Calculadora con javascript + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
> + + + + + + + + diff --git b/Dia 4/Select Where.docx a/Dia 4/Select Where.docx new file mode 100644 index 0000000..9a88d8b Binary files /dev/null and a/Dia 4/Select Where.docx differ diff --git b/Dia 4/estilo.css a/Dia 4/estilo.css new file mode 100644 index 0000000..80e9cf7 --- /dev/null +++ a/Dia 4/estilo.css @@ -0,0 +1,34 @@ +.calculadora{ + display: block; + margin:0 auto; + padding: 20px; + background: #DC4C46; + width: 300px; + height: 500px; + border-radius: 25px; + + +} + +.calculadora td button{ + display: block; + width: 70px; + height: 70px; + font-size: 25px; +} + +#resultado { + display: block; + text-align: center; + font-size: 40px; + margin-bottom: 50 px; + width: 300px; + height: 100px; + line-height: 100px; + background-color: #fff ; + border-radius: 25px; + overflow-y: scroll; + + + +} \ No newline at end of file diff --git b/Dia 4/funcionalidad.js a/Dia 4/funcionalidad.js new file mode 100644 index 0000000..b66789d --- /dev/null +++ a/Dia 4/funcionalidad.js @@ -0,0 +1,150 @@ + var operandoa; + var operandob; + var operacion; + + +function init(){ + alert("ejercicio dia 4 "); + + //variables + var resultado = document.getElementById('resultado'); + var reset = document.getElementById('reset'); + var suma = document.getElementById('suma'); + var resta = document.getElementById('resta'); + var multiplicacion = document.getElementById('multiplicacion'); + var division = document.getElementById('division'); + var igual = document.getElementById('igual'); + var uno = document.getElementById('uno'); + var dos = document.getElementById('dos'); + var tres = document.getElementById('tres'); + var cuatro = document.getElementById('cuatro'); + var cinco = document.getElementById('cinco'); + var seis = document.getElementById('seis'); + var siete = document.getElementById('siete'); + var ocho = document.getElementById('ocho'); + var nueve = document.getElementById('nueve'); + var cero = document.getElementById('cero'); + + //Eventos + + uno.onclick = function (e){ + resultado.textContent= resultado.TextContent + "1"; + + } + + dos.onclick = function (e){ + resultado.textContent= resultado.TextContent + "2"; + + } + tres.onclick = function (e){ + resultado.textContent= resultado.textContent + "3"; + } + cuatro.onclick = function (e){ + resultado.textContent= resultado.textContent + "4"; + + } + cinco.onclick = function (e){ + resultado.textContent= resultado.textContent + "5"; + + } + seis.onclick = function (e){ + resultado.textContent= resultado.textContent + "6"; + + } +siete.onclick = function (e){ + resultado.textContent= resultado.textContent + "7"; + + } +ocho.onclick = function (e){ + resultado.textContent= resultado.textContent + "8"; + + } + nueve.onclick = function (e){ + resultado.textContent= resultado.textContent + "9"; + + } + cero.onclick = function (e){ + resultado.textContent= resultado.textContent + "0"; + + } + reset.onclick=function(e){ + resetear(); + + } + suma.onclick=function(e){ + + operandoa= resultado.textContent; + operacion= "+"; + limpiar(); + + } + multiplicacion.onclick=function(e){ + + operandoa= resultado.textContent; + operacion= "*"; + limpiar(); + + } + resta.onclick=function(e){ + + operandoa= resultado.textContent; + operacion= "-"; + limpiar(); + + } + division.onclick=function(e){ + + operandoa= resultado.textContent; + operacion= "/"; + limpiar(); + + } + + igual.onclick=function(e){ + + operandob= resultado.textContent; + resolver(); + + } + +} + +function limpiar (){ +resultado.textContent= ""; + + + + +} +function resetear (){ +resultado.textContent= ""; +operandoa= 0; +operandob=0; +operacion=""; + +} + +function resolver (){ +var res=0; + switch(operacion){ + case "+": + res= parseFloat(operandoa) + parseFloat(operandob); + break ; + case "+": + res= parseFloat(operandoa) - parseFloat(operandob); + break ; + case "+": + res= parseFloat(operandoa) / parseFloat(operandob) + break ; + case "+": + res= parseFloat(operandoa) * parseFloat(operandob); + break ; + + } + resetear(); + resultado.textContent= res; +} + + + +