https://www.tutorialesprogramacionya.com/mysqlya/index.php?inicio=0
https://www3.ntu.edu.sg/home/ehchua/programming/sql/MySQL_Beginner.html
SELECT
country, name
FROM
category
JOIN
film_category ON category.category_id = film_category.category_id
JOIN
film ON film.film_id = film_category.film_id
JOIN
inventory ON film.film_id = inventory.film_id
JOIN
store ON inventory.store_id = store.store_id
JOIN
customer ON store.store_id = customer.store_id
JOIN
address ON address.address_id = customer.address_id
JOIN
city ON city.city_id = address.city_id
JOIN
country ON country.country_id = city.country_id
CREATE DATABASE databasename;
DROP DATABASE databasename;
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
….
);
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
DROP TABLE table_name;
ALTER TABLE table_name
ADD column_name datatype;
ALTER TABLE table_name
DROP COLUMN column_name;
CREATE TABLE table_name (
column1 datatype constraint,
column2 datatype constraint,
column3 datatype constraint,
….
);
CREATE TABLE `indices`.`asda` (
`idasda` INT NOT NULL AUTO_INCREMENT,
`asdacol` VARCHAR(45) NULL,
PRIMARY KEY (`idasda`));
CREATE TABLE `otraprueba`.`prueba` (
`idprueba` INT NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(45) NULL,
PRIMARY KEY (`idprueba`),
INDEX `ix_nombre` (`nombre` ASC));
ALTER TABLE `indices`.`asda`
ADD INDEX `ix_nombre` (`asdacol` ASC);
CREATE TABLE `otraprueba`.`prueba` (
`idprueba` INT NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(45) NULL,
`idforeign` INT NULL,
PRIMARY KEY (`idprueba`),
INDEX `ix_nombre` (`nombre` ASC),
INDEX `fk_otra_idx` (`idforeign` ASC),
CONSTRAINT `fk_otra`
FOREIGN KEY (`idforeign`)
REFERENCES `otraprueba`.`tabla1` (`idtabla1`)
ON DELETE NO ACTION
ON UPDATE NO ACTION);
Con estas páginas podemos ‘ofuscar’ nuestro código javascript. Es decir, hacerlo ilegible para proteger nuestro código. Pero ¡cuidado! también se puede desofuscar (segundo enlace). Aunque no queda tan limpio como el original se puede trabajar con él.
Nos basamos en la siguiente ruleta:
Es decir, sacamos un número aleatorio entre 0 y 36.
Vamos a usar una versión simplificada de la ruleta. Aunque en la ruleta original se pueden hacer muchos tipos de apuestas, aquí sólo vamos a permitir tres:
Las dos últimas las podemos averiguar fácilmente a partir del número. La primera hay que saberse la lista, que es la siguiente:
var colorNum=[0,1,2,1,2,1,2,1,2,1,2,2,1,2,1,2,1,2,1,1,2,1,2,1,2,1,2,1,2,2,1,2,1,2,1,2,1]; //1=Rojo, 2=Negro
Para hacer las apuestas tenemos dos posibilidades. La sencilla: seis textbox, uno para cada apuesta y al jugar ver si se ha ganado o no.
La complicada:
En la página tendremos una tabla con seis elementos, para las diferentes apuestas y tres o más imágenes de fichas (aquí dejo cuatro: fichas)
Estas fichas las arrastraremos hasta la tabla y así se harán las apuestas. Si suelto la ficha de $5 en el elemento ‘rojo’ se entiende que estoy apostando 5 al rojo. Para facilitar la cosa las fichas pueden tener en el title el valor y los elementos lo mismo.
Después tendremos un botón de jugar, donde obtendremos un número aleatorio y dependiendo de lo que salga y las apuestas le daremos el premio. Es decir, si ha a postado a par y sale un número par le damos el doble de la apuesta.
//Calcula la puntuación de las cartas que le pasemos function puntuacion(valores) { var tot = 0; for (var i = 0; i < valores.length; i++) { tot += valor(valores[i]); } for (var i = 0; i < valores.length; i++) { if (valor(valores[i]) == 1 && tot <= 11) { tot += 10; } } return tot; } //Nos devuelve el valor de una carta function valor(cadena) { var v = parseInt(cadena.slice(0, -1)); if (v > 10) v = 10; return v; } //Crea una baraja y la desordena function barajar() { var palos = ["t", "p", "c", "d"]; baraja = []; for (var i = 1; i <= 13; i++) { for (var j = 0; j < 4; j++) { baraja.push(i + palos[j]); } } baraja.shuffle(10); } ; //Añade a los arrays el método shuffle, que desordena el array Array.prototype.shuffle = function (num) { num = num || 1; for (var i = 0; i < num; i++) { this.sort(function () { return .5 - Math.random(); }); } };
Para el juego del blackjack primero necesitamos conocer las reglas del juego:
Hay un jugador y una banca. Se reparten dos cartas a cada uno. El objetivo es sumar 21 o lo más cercano pero sin pasarse. Las figuras valen 10 y los ases 1 u 11, dependiendo de lo que nos interese. El resto de cartas su valor. Una vez repartidas las dos cartas el jugador puede plantarse o pedir carta. Si pide carta y se pasa, ha perdido. Si no, otra vez puede pedir carta o pararse. Cuando se para es el turno de la banca.
Para gestionar las decisiones de la banca puede parecer que necesitamos una inteligencia artificial, pero por suerte no es así. Si la puntuación es menor de 16 tiene que pedir carta, si es 17 o superior tiene que plantarse.
¿Cómo lo haremos?
En primer lugar crearemos un array con las 52 cartas de la baraja. Este array lo desordenaremos y ya estaremos listos para empezar a repartir.
Se reparten dos cartas a la banca y dos al jugador. Las podemos guardar en un array. Las de la banca se oculta la primera y se muestra la segunda. Las del jugador se muestran todas.
A partir de aquí tenemos dos botones:
Cuando es el turno de la banca esta tiene que hacer:
Si no se ha pasado ninguno de los dos el jugador que tiene el mayor número es el que gana. Y vuelta a empezar.