Compare commits

..

13 Commits

Author SHA1 Message Date
raul 7f594425f6 Renamed all exercise folders accordingly
Numbers are too hard to navigate
2024-02-22 10:37:56 +00:00
raul 525338788c Added all missing changes before pushing to remote 2024-02-22 10:37:56 +00:00
raul 5d88c63032 Pain 2024-02-22 10:37:56 +00:00
raul 1d3787dc42 Completed more exercises 2024-02-22 10:37:56 +00:00
raul c496f40365 Reorganized exercise structure 2024-02-22 10:37:56 +00:00
raul 67f3590a75 Finished multi-multiplication table 2024-02-22 10:37:56 +00:00
raul 23adce80cf Updating homework 2024-02-22 10:37:56 +00:00
raul 3a46c8beef Updating homework 2024-02-22 10:37:56 +00:00
raul a0f171d723 Trying to use constants to create cleaner code 2024-02-22 10:37:56 +00:00
raul 53400d040a Finished the replication 2024-02-22 10:37:56 +00:00
raul bf2427bd30 Practicing control flow and adding some of the arithmetic logic 2024-02-22 10:37:56 +00:00
raul 426a64ee9c Adding neat stuff 2024-02-22 10:37:56 +00:00
raul 787d2af491 starting 2024-02-22 10:37:56 +00:00
32 changed files with 677 additions and 0 deletions

25
banderaAsteriscos/11.html Normal file
View File

@ -0,0 +1,25 @@
<html>
<head>
<meta name="" charset="UTF-8" content="">
<style>
* {
text-align: center;
}
</style>
</head>
<body>
<script src="./11.js"></script>
<h1>Asteriscos</h1>
<form>
<!-- <select id="opciones"> -->
<!-- <option value="HOR">Horizontal</option> -->
<!-- <option value="VER">Vertical</option> -->
<!-- </select> -->
<input type="text" id="numeroDeAsteriscos" name="" value="">
<input type="submit" name="" onclick="main()" value="Mostrar">
</form>
</body>
</html>

14
banderaAsteriscos/11.js Normal file
View File

@ -0,0 +1,14 @@
function main() {
var numAst = document.getElementById('numeroDeAsteriscos').value;
for (let a = 1; a < numAst; a++) {
for (let i = 0; i < a; i++) {
document.writeln(`*`);
}
document.writeln(`<br>`)
}
for (let i = 0; i < numAst / 2; i++) {
document.writeln(`*<br>`)
}
}

15
checkPalindrome/5.html Normal file
View File

@ -0,0 +1,15 @@
<html>
<body>
<script src="5.js"></script>
<form>
<input type="text" name="comparador" id="test" value="">
<input type="submit" name="" onclick="main()" value="Submit">
</form>
<br>
<div id="normal"></div>
<div id="reverse"></div>
<div id="status"></div>
</body>
</html>

41
checkPalindrome/5.js Normal file
View File

@ -0,0 +1,41 @@
// let palabra = prompt("Introduzca una palabra");
// let palabra = document.getElementById("cool");
// for (let i = palabra.length - 1; i > 0; i - 1) {
// document.write(`${palabra[i]}`);
// }
//
function main() {
//document.write(`<form><input type="text" name="comparador" id="test" value=""><input type="submit" name="" onclick="main('test')"value="Submit"></form>"`);
var palabra = document.getElementById('test').value;
var arrayInvertido = [];
var arrayNormal = [];
/////////////////////////////////////////////////////////
for (let i = palabra.length - 1; i >= 0; i--) {
document.write(`${palabra[i]}`);
arrayInvertido.push(palabra[i]);
}
/////////////////////////////////////////////////////////
document.write("<br>")
/////////////////////////////////////////////////////////
for (let i = 0; i < palabra.length; i++) {
document.write(`${palabra[i]}`);
arrayNormal.push(palabra[i]);
}
/////////////////////////////////////////////////////////
if (arrayInvertido.toString() == arrayNormal.toString()) {
document.write(`<br>SON IGUALES`);
} else {
document.write(`<br>NO SON IGUALES`);
}
}

25
cuboAsteriscos/10.html Normal file
View File

@ -0,0 +1,25 @@
<html>
<head>
<meta name="" charset="UTF-8" content="">
<style>
* {
text-align: center;
}
</style>
</head>
<body>
<script src="./10.js"></script>
<h1>Asteriscos</h1>
<form>
<!-- <select id="opciones"> -->
<!-- <option value="HOR">Horizontal</option> -->
<!-- <option value="VER">Vertical</option> -->
<!-- </select> -->
<input type="text" id="numeroDeAsteriscos" name="" value="">
<input type="submit" name="" onclick="main()" value="Mostrar">
</form>
</body>
</html>

9
cuboAsteriscos/10.js Normal file
View File

@ -0,0 +1,9 @@
function main() {
var numAst = document.getElementById('numeroDeAsteriscos').value;
for (let a = 0; a < numAst; a++) {
for (let i = 0; i < numAst; i++) {
document.writeln(`*`);
}
document.writeln(`<br>`)
}
}

7
forLoop/2.html Normal file
View File

@ -0,0 +1,7 @@
<html>
<body>
<script src="2.js"></script>
</body>
</html>

3
forLoop/2.js Normal file
View File

@ -0,0 +1,3 @@
for (let i = 1; i <= 100; i++) {
document.write(`${i}<br>`)
}

20
galleryPictures/7.html Normal file
View File

@ -0,0 +1,20 @@
<html>
<head>
<meta name="" charset="UTF-8" content="">
</head>
<body>
<script src="./7.js"></script>
<h1>Galería</h1>
<form>
<select id="opciones">
<option value="HOR">Horizontal</option>
<option value="VER">Vertical</option>
</select>
<input type="text" id="numeroDeImagenes" name="" value="">
<input type="submit" name="" onclick="galeriaHOR()" value="Submit">
</form>
</body>
</html>

32
galleryPictures/7.js Normal file
View File

@ -0,0 +1,32 @@
function galeriaHOR() {
// var num = document.getElementById('numeroDeImagenes').value;
// document.writeln(`<table border=1><tr>`);
//for (let i = 0; i < num; i++) {
//document.write(`<td><img src="./google.png" width=250px height=250px></td>`)
//}
//document.writeln(`</tr></table>`);
// Sacar el select y subsecuentemente el valor de este
var opcion = document.getElementById('opciones');
var valor = opcion.value;
// Sacar el número seleccionado por el usuario
var num = document.getElementById('numeroDeImagenes').value;
if (valor.toString() == "HOR") {
//var num = document.getElementById('numeroDeImagenes').value;
document.writeln(`<table border=1><tr>`);
for (let i = 0; i < num; i++) {
document.write(`<td><img src="./google.png" width=250px height=250px></td>`);
}
document.writeln(`</tr></table>`);
}
else {
document.writeln(`<table border=1>`);
for (let i = 0; i < num; i++) {
document.write(`<tr><td><img src="./google.png" width=250px height=250px></td></tr>`);
}
document.writeln(`</table>`);
}
}

BIN
galleryPictures/google.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

8
partidosApuestas/1.html Normal file
View File

@ -0,0 +1,8 @@
<html>
<body>
<script src="1.js">
</script>
</body>
</html>

50
partidosApuestas/1.js Normal file
View File

@ -0,0 +1,50 @@
// Plataforma de televisión cobra una cuota plana de 15€ al mes (incluye series y peliculas, 4 partidos de futbol, 4 participaciones en apuestas deportivas), cuando el consumo mensual exceden esas condiciones, se cobran 6€ por cada partido y 5€ por cada apuesta, la factura mensual será coste fijo + coste partido + coste apuestas
// Añado las variables con las que trabajar, con lo que si queremos cambiar la fórmula, podemos hacerlo desde aquí
var costeFijo = 15.0;
// Estos son los costes que utilizaremos para partidos y apuestas que superen el límite gratis
var partidoExtra = 6.0;
var apuestaExtra = 5.0;
var IVA = 1.21;
// Pedimos input al usuario y lo guardamos dentro de estas dos variables
numeroPartidos = parseInt(prompt("Cuantos partidos has visto?"));
numeroApuestas = parseInt(prompt("Cuantos apuestas has hecho?"));
// Si el número de partidos supera 4, creamos una variable que le resta 4 al número de partidos para descontar los partidos
// incluidos gratis y lo multiplicamos por el precio que hemos declarado al principio:
if (numeroPartidos > 4) {
var impuestoPartidos = (numeroPartidos - 4) * partidoExtra;
} else {
// Si no supera este número, no existirá factura extra con lo que declaramos esta a 0
var impuestoPartidos = 0.0;
}
// Hacemos lo mismo que antes, solo reemplazando nuestras variables y declarando una equivalente al precio de las apuestas
if (numeroApuestas > 4) {
var impuestoApuestas = (numeroApuestas - 4) * apuestaExtra;
} else {
var impuestoApuestas = 0.0;
}
// Sumamos el precio base a los impuestos declarados anteriormente, si no superaron el límite, estas variables sumarán
// 0 y no afectarán al precio final
var precioFinal = costeFijo + impuestoPartidos + impuestoApuestas;
var precioFinalMasIVA = (costeFijo + impuestoPartidos + impuestoApuestas) * IVA;
// Sacamos la salida de los datos en pantalla
document.write(`La factura del mes costará ${precioFinal}€!`);
document.write(`<br>La factura del mes incluyendo IVA costará ${precioFinalMasIVA.toFixed(2)}€!`);
document.write("<br>")
document.write(2 + "2")
document.write("<br>")
document.write(2 - "2")
// for (let i = 1; i < 6; i++) {
// document.write(`<br>${i}`)
// }

7
print2Nums/4.html Normal file
View File

@ -0,0 +1,7 @@
<html>
<body>
<script src="4.js"></script>
</body>
</html>

21
print2Nums/4.js Normal file
View File

@ -0,0 +1,21 @@
num1 = parseInt(prompt("Introduzca un número"));
num2 = parseInt(prompt("Introduzca otro número"));
if (num1 > num2) {
min = num2;
max = num1;
}
else {
min = num1;
max = num2;
}
for (let i = min; i <= max; i++) {
document.write(`${i}<br>`)
}
// else if (num2 > num1) {
// for (let i = num2; i <= num1; i++) {
// document.write(`${i}<br>`)
// }
// }
//

25
prototyping/nota.js Normal file
View File

@ -0,0 +1,25 @@
// Función que devuelve True si el valor que proveemos se encuentra entre el
// valor "min" y el valor "max"
function between(x, min, max) {
return x >= min && x <= max;
}
//<br> obligatorio
document.write("<br>");
// Pidiendo valor
var nota = parseInt(prompt("Introduzca su nota:"));
if (between(nota, 0.0, 4.99)) {
document.write("Suspenso");
}
else if (between(nota, 5.0, 8.99)) {
document.write("Aprobado");
}
else if (between(nota, 9.0, 10)) {
document.write("Sobresaliente");
}
else {
document.write("Nota no válida");
}

24
prototyping/raiz.js Normal file
View File

@ -0,0 +1,24 @@
document.write("What<br>");
var a = parseInt(prompt("Introduzca la A:"));
var b = parseInt(prompt("Introduzca la B:"));
var c = parseInt(prompt("Introduzca la C:"));
var d = Math.pow(b, 2) - 4 * a * c;
if (d >= 0) {
//TODO: Remember math class
var x1 = -b + Math.sqrt(d) / 2 * a;
var x2 = -b - Math.sqrt(d) / 2 * a;
document.write(`x1 = ${x1.toFixed(2)}<br>`);
document.write(`x2 = ${x2.toFixed(2)}`);
} else {
document.write(`Raíz imaginaria?`);
}
//2 25 2
document.write(`<br>d = ${d}`);
//alert(`a\na`);

74
prototyping/test.html Normal file
View File

@ -0,0 +1,74 @@
<html>
<head>
</head>
<body>
<script>
document.write("<strong>Hola</strong>", "<br>", "Mundo<br>");
//alert("Test");
//document.write("<ul><li>1</li><li>2</li><li>3</li></ul>");
//n1 = 2
//let n2 = 10
//suma = n1+n2
//document.write(`La suma es ${suma}`)
//let inputted = prompt("test")
//document.write(`<br>${inputted}`)
//a = parseInt(prompt("Dame un entero"))
//document.write(`<br>${a}`)
//b = a + 5
//document.write(`<br>${b}`)
////////////////////////////////////////////////////////////////
// cad = prompt("Introduzca una cadena:");
// document.write(`<br>${cad}`);
// document.write(`<br>La cadena tiene ${cad.length} carácteres.`);
// document.write(`<br>La raíz cuadrada del número de carácteres es ${Math.sqrt(cad.length)}`);
// document.write(`<br>El primer carácter de la cadena es ${cad.charAt(0)}.`);
// document.write(`<br>El último carácter de la cadena es ${cad.charAt(cad.length - 1)}.`);
////////////////////////////////////////////////////////////////
// document.write("<br><h1>Iterador</h1>");
// document.write("<ul>");
// for (let i = 0; i < cad.length; i++) {
// document.write(`<li>${cad[i]}</li>`);
// };
// document.write("</ul>");
////////////////////////////////////////////////////////////////
// document.write("<table border=1><tr>");
// for (let i = 0; i < cad.length; i++) {
// document.write(`<td width=20px align=center>${cad[i]}</td>`);
// };
// document.write("</tr></table>");
////////////////////////////////////////////////////////////////
// document.write(Math.PI, "<br>");
// horiz = parseFloat(prompt("Introduzca número de metros horizontales:"));
// vertic = parseFloat(prompt("Introduzca número de metros verticales:"));
// document.write(horiz, " ", vertic);
// document.write(`<br>Área: ${horiz * vertic} metros cuadrados.<br>Perímetro: ${2 * horiz + 2 * vertic} metros.`);
////////////////////////////////////////////////////////////////
</script>
<!-- Pruebas basicas -->
<!-- <script src="test.js"></script> -->
<!-- Ejercicio para calcular nota -->
<!-- <script src="nota.js"></script> -->
<!-- Intentando comprender formulas -->
<!-- <script src="raiz.js"></script> -->
<button type="button" onclick="import(" ./nota.js");">a</button>
</body>
</html>

13
prototyping/test.js Normal file
View File

@ -0,0 +1,13 @@
var a = parseInt(prompt("Introduzca un número"))
var b = parseInt(prompt("Introduzca otro número"))
if (a > b) {
document.write(`${a} es mayor que ${b}`)
} else if (b > a) {
document.write(`${b} es menor que ${a}`)
}
else {
document.write(`Son los mismos`)
}
document.write("<br>Script finalizado")

25
repetidorLetras/12.html Normal file
View File

@ -0,0 +1,25 @@
<html>
<head>
<meta name="" charset="UTF-8" content="">
<style>
* {
text-align: center;
}
</style>
</head>
<body>
<script src="./12.js"></script>
<h1>Repetidor basado en número de letras</h1>
<form>
<!-- <select id="opciones"> -->
<!-- <option value="HOR">Horizontal</option> -->
<!-- <option value="VER">Vertical</option> -->
<!-- </select> -->
<input type="text" id="numeroDeLetras" name="" value="">
<input type="submit" name="" onclick="main()" value="Mostrar">
</form>
</body>
</html>

12
repetidorLetras/12.js Normal file
View File

@ -0,0 +1,12 @@
function main() {
var palabra = document.getElementById('numeroDeLetras').value;
for (let a = 0; a < palabra.length; a++) {
for (let i = 0; i <= a; i++) {
document.writeln(`${palabra[i]}`);
}
document.writeln(`<br>`)
}
}

7
separarLetras/3.html Normal file
View File

@ -0,0 +1,7 @@
<html>
<body>
<script src="3.js"></script>
</body>
</html>

14
separarLetras/3.js Normal file
View File

@ -0,0 +1,14 @@
// num = parseInt(prompt("Can I have num:"));
// Dada una palabra sacar la cantidad
// i = 1
word = prompt("Introduzca una palabra")
// while (i < 10) {
// document.write(`${i}<br>`);
// i = i + 2;
// }
for (let i = 0; i < word.length; i++) {
document.write(`${word.charAt(i)}<br>`)
}

25
tablaDeMultiplicar/9.html Normal file
View File

@ -0,0 +1,25 @@
<html>
<head>
<meta name="" charset="UTF-8" content="">
<style>
* {
text-align: center;
}
</style>
</head>
<body>
<script src="./9.js"></script>
<h1>Tabla de multiplicar</h1>
<form>
<!-- <select id="opciones"> -->
<!-- <option value="HOR">Horizontal</option> -->
<!-- <option value="VER">Vertical</option> -->
<!-- </select> -->
<!-- <input type="text" id="numeroDeImagenes" name="" value=""> -->
<input type="submit" name="" onclick="main()" value="Mostrar">
</form>
</body>
</html>

20
tablaDeMultiplicar/9.js Normal file
View File

@ -0,0 +1,20 @@
function multiplicador(multipl) {
document.write(`<p align=center>`)
for (let i = 1; i < 11; i++) {
document.writeln(`${multipl} * ${i} = ${i * multipl}<br>`)
}
// Adding horizontal line for visual clarity
document.write(`</p>`)
document.writeln(`<hr>`)
}
function main() {
// Declaring multi to hold the first number
var multi = 1;
// For loop that and for every time the multiplier function ends, run multi++ to sum
for (let a = 1; a < 11; a++) {
multiplicador(multi)
multi++
}
}

1
trash/README.md Normal file
View File

@ -0,0 +1 @@
Welcome to the trash zone, these are exercises that don't work properly but I didn't want to erase

13
trash/ejer6/6.html Normal file
View File

@ -0,0 +1,13 @@
<html>
<body>
<script src="./6.js"></script>
<h1>Tabla de multiplicar</h1>
<form>
<input type="text" name="" id="inp" value="">
<input type="submit" id="but" value="Submit">
</form>
<div id="contents"></div>
</body>
</html>

9
trash/ejer6/6.js Normal file
View File

@ -0,0 +1,9 @@
var btn = document.getElementById("but");
var d = document.getElementById("contents");
var numero = document.getElementById("inp")
btn.addEventListener("click", multiplicador(numero.value));
function multiplicador(numb) {
document.writeln(`${numb}`);
}

20
trash/ejer8/8.html Normal file
View File

@ -0,0 +1,20 @@
<html>
<head>
<meta name="" charset="UTF-8" content="">
</head>
<body>
<script src="./8.js"></script>
<h1>Tabla de multiplicar</h1>
<form>
<!-- <select id="opciones"> -->
<!-- <option value="HOR">Horizontal</option> -->
<!-- <option value="VER">Vertical</option> -->
<!-- </select> -->
<!-- <input type="text" id="numeroDeImagenes" name="" value=""> -->
<input type="submit" name="" onclick="main()" value="Mostrar">
</form>
</body>
</html>

9
trash/ejer8/8.js Normal file
View File

@ -0,0 +1,9 @@
function multiplicar() {
}
function main() {
for (let i; i < 11; i++) {
document.writeln(`a<br>`);
}
}

38
vectores/13.html Normal file
View File

@ -0,0 +1,38 @@
<html>
<head>
<meta name="" charset="UTF-8" content="">
<style>
* {
text-align: center;
}
</style>
</head>
<body>
<script src="./13.js"></script>
<h1>Vector de notas</h1>
<div id="listanotas"></div>
<form id="frm">
<select id="opciones">
<option value=0>Raul</option>
<option value=1>Antonio</option>
</select>
<input type="text" id="noter" name="" value="">
<button type="button" onclick="nota()">Añadir nota</button>
<button type="button" onclick="main()">Mostrar</button>
</form>
<div id="notificar"></div>
<div id="notadiv"></div>
<div id="notamedia"></div>
<div id="tabla"></div>
</body>
</html>

71
vectores/13.js Normal file
View File

@ -0,0 +1,71 @@
var alumnos = ["Raul", "Antonio"]
var notasEntera = [];
var notaFinal = 0;
//var vecTest = [[1, 2][3, 4][5, 6]]
function nota() {
//var alumnoID = document.getElementById('opciones').value;
var alumnoID = parseInt(document.getElementById('opciones').value);
var alumnoNombre = alumnos[alumnoID]
// switch (alumnoSeleccionado) {
// case "alum1":
// alumnoEscrito = "Alumno 1"
// case "alum2":
// alumnoEscrito = "Alumno 2"
// }
var nota = document.getElementById('noter').value;
if (notasEntera.length == 0) {
document.getElementById('listanotas').innerHTML = `${alumnoNombre}: `;
}
// else if () {
//
// }
if (nota >= 0 && nota <= 10 && nota.length != 0) {
} else {
document.getElementById('notificar').innerHTML = `Por favor, inserte una nota válida`;
setTimeout(() => document.getElementById('notificar').innerHTML = ``, 2500);
return;
}
notasEntera.push(parseFloat(nota));
document.getElementById('notificar').innerHTML = `Has añadido la nota ${nota}`;
setTimeout(() => document.getElementById('notificar').innerHTML = ``, 1500);
document.getElementById('listanotas').innerHTML += `${nota} `;
document.getElementById("frm").reset();
}
// TODO: clean this up
//////////////////////////////////////////////////////////////////////////////////////////////////
function main() {
for (let i = 0; i < notasEntera.length; i++) {
notaFinal = notaFinal + notasEntera[i];
}
var notaMinima = Math.min(...notasEntera)
var notaMaxima = Math.max(...notasEntera)
document.getElementById('notadiv').innerHTML = `Las notas combinadas suman ${notaFinal}<br>La nota máxima es ${notaMaxima}<br>La nota mínima es ${notaMinima}`;
setTimeout(() => document.getElementById('notadiv').innerHTML = ``, 5000);
var notaMedia = notaFinal / notasEntera.length;
document.getElementById('notamedia').innerHTML = `La nota media es ${notaMedia.toFixed(2)}`
// document.getElementById('tabla').innerHTML = '<table>'
// for (let i = 0; i < alumnos.length; i++) {
// document.getElementById('tabla').innerHTML += `<tr><td>${alumnos[i]}</td><td>${notasEntera}</td></tr>`
// }
// document.getElementById('tabla').innerHTML += '</table>'
notaFinal = 0;
}