Juego de la vida en C# .Net, autómata celular, Universo holograma

En este video te enseñare como representar el juego de la vida en C# .Net paso por paso, al igual que te daré una explicación breve sobre que significa y para qué sirve este sistema determinista.

Descargar código fuente

Conjunto de Mandelbrot en C# .Net, Fractales, Mandelbrot Set

En este video te explicare el conjunto de mandelbrot, y como se puede representar en C# .Net.

Código


public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            MandelbrotSet();

        }

        private void MandelbrotSet()
        {
            int width = pictureBox1.Width;
            int heigh = pictureBox1.Height;
            Bitmap bmp = new Bitmap(width,heigh);

            for (int row=0;row<heigh;row++)
            {
                for (int col=0;col<width;col++)
                {
                    double c_re = (col - width / 2.0) * 4.0 / width;
                    double c_im = (row - Height / 2.0) * 4.0 / heigh;
                    int iteracion = 0;
                    double x = 0, y = 0;

                    while (iteracion<1000 && ((x*x)+(y*y))<=4)
                    {
                        double x_temp = (x * x) - (y * y) + c_re;
                        y = 2 * x * y + c_im;
                        x = x_temp;
                        iteracion++;
                    }

                    if (iteracion < 1000)
                        bmp.SetPixel(col, row, Color.FromArgb(iteracion%128,iteracion%50*5,iteracion%10));
                    else
                        bmp.SetPixel(col, row, Color.Black);
                }
            }

            pictureBox1.Image = bmp;

        }
    }

¿Cómo insertar registros con PDO en php?

A continuación te muestro un ejemplo simple de como realizar la conexión a una base de datos e insertar un registro en una tabla:


$link = new PDO("mysql:host=miserverBaseDeDatos;dbname=miBaseDeDatos", "usuarioBaseDeDatos", "passBaseDeDatos");

      $statement = $link->prepare("INSERT INTO tabla (campo1,campo2,campo3)
          VALUES (:campo1,:campo2,:campo3");

      $statement->execute([
          'campo1' => "hola",
          'campo2' => "mundo",
          'campo3' => "cruel",
      ]);

Crear un piano con sonido en Javascript en menos de 10 minutos ?

En este video te mostrare como crear un piano en menos de 10 minutos utilizando javascript, sin la necesidad de tener un mp3 o wav, y solo con un navegador y código.

Piano (pícale a las teclas)

CSS


* { box-sizing:border-box; }

body{ margin:0; background:#222; }
ul {
	height:18.875em; width:34em;
  margin:5em auto; padding:3em 0 0 3em; position:relative; 
  border:1px solid #160801; border-radius:1em; 
  background:-webkit-gradient(linear, right bottom, left top, color-stop(0%,rgba(0,0,0,0.3)), color-stop(100%,rgba(0,0,0,0))), url('https://f.cl.ly/items/2q1f3t0C3R1b0g081w3n/vwood.png');
box-shadow:0 0 50px rgba(0,0,0,0.5) inset, 0 1px rgba(212,152,125,0.2) inset,0 5px 15px rgba(0,0,0,0.5); }
li { margin:0; padding:0; list-style:none; position:relative; float:left; }

ul .white {
	height:16em; width:4em; z-index:1;
	border-left:1px solid #bbb;
	border-bottom:1px solid #bbb;
	border-radius:0 0 5px 5px;
	box-shadow:-1px 0 0 rgba(255,255,255,0.8) inset, 0 0 5px #ccc inset, 0 0 3px rgba(0,0,0,0.2);
	background: linear-gradient(top, #eee 0%,#fff 100%);
}

ul .white:active {
	border-top:1px solid #777;
	border-left:1px solid #999;
	border-bottom:1px solid #999;
	box-shadow:2px 0 3px rgba(0,0,0,0.1) inset, -5px 5px 20px rgba(0,0,0,0.2) inset,0 0 3px rgba(0,0,0,0.2);
	background: linear-gradient(top, #fff 0%,#e9e9e9 100%);
}

.black {
	height:8em; width:2em; margin:0 0 0 -1em; z-index:2;
	border:1px solid #000;
	border-radius:0 0 3px 3px;
	box-shadow:-1px -1px 2px rgba(255,255,255,0.2) inset, 0 -5px 2px 3px rgba(0,0,0,0.6) inset, 0 2px 4px rgba(0,0,0,0.5);
	background:linear-gradient(45deg, #222 0%,#555 100%);
}

.black:active {
	box-shadow:-1px -1px 2px rgba(255,255,255,0.2) inset, 0 -2px 2px 3px rgba(0,0,0,0.6) inset, 0 1px 2px rgba(0,0,0,0.5);
	background:linear-gradient(left, #444 0%,#222 100%);
}

.a,.g,.f,.d,.c { margin:0 0 0 -1em;  }

ul li:first-child { border-radius:5px 0 5px 5px; }
ul li:last-child { border-radius:0 5px 5px 5px; }

HTML

<ul class="set">
        <li onclick=" jsNota(174.614)" class="white b"></li>
        <li onclick=" jsNota(184.997)" class="black as"></li>
        <li onclick=" jsNota(195.998)" class="white a"></li>
        <li onclick=" jsNota(207.652)" class="black gs"></li>
        <li onclick=" jsNota(220.000)" class="white g"></li>
        <li onclick=" jsNota(233.082)" class="black fs"></li>
        <li onclick=" jsNota(246.942)" class="white f"></li>
        <li onclick=" jsNota(261.626)" class="white e"></li>
        <li onclick=" jsNota(277.183)" class="black ds"></li>
        <li onclick=" jsNota(293.665)" class="white d"></li>
        <li onclick=" jsNota(311.127)" class="black cs"></li>
        <li onclick=" jsNota(329.628)" class="white c"></li>
</ul>

Javascript


var context= new AudioContext();

function jsNota(frecuencia){
        var o= context.createOscillator();
        g=context.createGain();
        o.connect(g);
        o.type="sawtooth";
        o.frequency.value=frecuencia;
        g.connect(context.destination);
        o.start(0);
        g.gain.exponentialRampToValueAtTime(0.00001,context.currentTime +1.5);
    }