Culture Names





using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Globalization;

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

        private void button1_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void button2_Click(object sender, EventArgs e)
        {        
            List<string> list = new List<string>();
            foreach (CultureInfo ci in CultureInfo.GetCultures(CultureTypes.AllCultures))
            {
                string specName = "(none)";
                try
                {
                    specName = CultureInfo.CreateSpecificCulture(ci.Name).Name; }
                catch { }

                list.Add(string.Format("{0,-40}{1,-30}{2}",ci.Name,specName,ci.EnglishName)+"\n");          

Texto vertical




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace TextoVertical
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            string text1 = "Esto sirve para poco.";
            string text2 = "Pero es bonito.";
            FontFamily fontFamily = new FontFamily("Lucida Console");
            Font font = new Font(fontFamily,14,FontStyle.Regular,GraphicsUnit.Point);
            PointF linea1 = new PointF(100, 10);
            PointF linea2 = new PointF(120, 10);
            StringFormat stringFormat = new StringFormat();
            SolidBrush solidBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));


Evento KeyUp




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        private void textBox1_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyValue == 13)
                MessageBox.Show("Se ha pulsado la tecla Enter");
        }


Generador Aleatorio de Strings




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace Generador_Strings_Aleatorios
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
     
     
            private void button1_Click(object sender, EventArgs e)
            {
                Application.Exit();
            }

            private void button2_Click(object sender, EventArgs e)
            {
                for (int i = 1; i < 100; i++)
                {
                textBox1.AppendText(GeneradorAleatorioStrings() + "\t");
                }
            }


Tiempo Local - Universal




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        private void button1_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

            TimeZone zona = TimeZone.CurrentTimeZone;
            DateTime local = zona.ToLocalTime(DateTime.Now);
            label1.Text = "La hora local es: "+ local.ToString();
            DateTime universal = zona.ToUniversalTime(DateTime.Now);
            label2.Text = "La hora Universal es: " + universal.ToString();
       

Generador Números Aleatorios




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        private void button1_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }

        private void button2_Click(object sender, EventArgs e)
            {
            for (int i = 1; i<100;i++)
                {
                funcionaleatoria();
                }
            }


Números Palíndromos




Un palíndromo (del griego palin dromein, volver a ir atrás), también llamado palindromo, palíndroma o palindroma, es una palabra, número o frase que se lee igual adelante que atrás. Si se trata de un numeral, usualmente en notación indoarábiga, se llama capicúa.

La palabra capicúa (del catalán cap i cua, «cabeza y cola») (en matemáticas, número palíndromo) se refiere a cualquier número que se lee igual de izquierda a derecha que derecha a izquierda. Ejemplos: 161, 2992, 3003, 2882


Un número palindrómico es un número de n dígitos escrito en cualquier base b (bn-1bn-2...b1b0) tal que bi = bn-1-i.
Todos los números de base 10 con un dígito {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} son palindrómicos.

Es una sucesión finita, tal que el primero y el último, el segundo y el penúltimo términos... y así sucesivamente son iguales. O bien el término de orden i tiene el mismo valor que el de orden n-i.

Ejemplo: (14641) 1, 4, 6, 4, 1.

Se observa que los extremos 1 y 1 están a igual distancia del elemento central "6"; la diferencia entre ellos es cero. Los intermedios 4 y 4 asumen la misma propiedad que los anteriores. Y el 6 dista cero unidades lineales de sí mismo y su diferencia es cero. Esto es, pues, lo que se denomina la simetría capicual.

Si la suma de una progresión geométrica, con primer término 1 y razón x, se eleva a una potencia entera positiva los respectivos coeficientes se disponen en sucesión capicual.

Todo capicúa con un número par de cifras es divisible por 11.

Se obtiene el capicúa de un número sumando el número con su reverso, hasta obtener su capicúa. Ej: calcular el capicúa del número 57 57+75=132, 132+231=363

El capicúa del número 57 es 363. Todos los números tienen su capicúa.


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Palindromo_III
    {
    public partial class Form1 : Form
        {
        public Form1()
            {
            InitializeComponent();
            }
        // Variables

        int numero1, numero2;

        private void button2_Click(object sender, EventArgs e)
            {
            numero1 = int.Parse(textBox1.Text);
            numero2 = int.Parse(textBox2.Text);
            intervalo(numero1, numero2);
            }

Tabla de Multiplicar




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        //Variables
        int numero;

        private void button2_Click(object sender, EventArgs e)
            {
           numero = Convert.ToInt32(textBox1.Text);                        
            while (numero <= 0)                                    
                {
                MessageBox.Show("Superior a 0 por favor");
                return;    
                }
            for (int i = 1; i <= numero; i++)
                {
                textBox2.Text += "     "+"\r\n";

                for (int j = 1; j <= numero; j++)
                    {
                    textBox2.AppendText((i * j).ToString() + "\t");          
                    }
                }
            }
     

Imprimir Imagen





using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Printing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ImprimirImagen_I
    {
    public partial class Form1 : Form
        {
        public Form1()
            {
            InitializeComponent();
            }
        //Salir
        private void button1_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }

        // Abrir Fichero
        private void button3_Click(object sender, EventArgs e)
            {
            using (OpenFileDialog abrir = new OpenFileDialog()
                {
                Filter = "jpg|*.jpg", ValidateNames = true})              
             
                {
                if (abrir.ShowDialog() == DialogResult.OK)
                    pictureBox1.Image = Image.FromFile(abrir.FileName);
                }
            }


Triangulo de Pascal






El triángulo de Pascal es un triángulo de números enteros, infinito y simétrico Se empieza con un 1 en la primera fila, y en las filas siguientes se van colocando números de forma que cada uno de ellos sea la suma de los dos números que tiene encima. Se supone que los lugares fuera del triángulo contienen ceros, de forma que los bordes del triángulo están formados por unos.

El Triángulo de Pascal o Tartaglia tiene un origen, como en muchos otros casos, muy anterior al de estos dos matemáticos . Se tienen referencias que datan del siglo XII en China. De hecho, algunas de sus propiedades ya fueron estudiadas por el matemático chino Yang Hui (siglo XIII), así como el poeta persa Omar Khayyam (siglo XII).

El que se le asocie el nombre del filósofo, matemático Pascal (1623-1662) se debe a que el francés escribió el primer tratado sobre el triángulo. Lo de Tartaglia (1500-1557) viene porque el italiano fue de los primeros que lo publicaron en Europa.

Cada número es la suma de los dos números que tiene encima, menos los extremos, que son siempre "1".




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        private void button2_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }
        //Variables
       int numero;

        private void button1_Click(object sender, EventArgs e)
            {
            for (int y = 0; y < numero; y++)
                {
                int c = 1;
                for (int q = 0; q < numero - y; q++)
                    {
                    textBox2.Text += "   ";
                    }
                    for (int x = 0; x <= y; x++)
                        {
                        textBox2.AppendText(c.ToString());
                        textBox2.Text += "    " + "\n";
                        c = c * (y - x) / (x + 1);
                        }
                    textBox2.Text += "   \r\n";
                    }
                }
       

Triangulo de Floyd




El Triángulo de Floyd, llamado así en honor a Robert Floyd, es un triángulo rectángulo formado con números naturales. Para crear un triángulo de Floyd, se comienza con un 1 en la esquina superior izquierda y se continúa escribiendo la secuencia de los números naturales de manera que cada línea contenga un número más que la anterior:


1
2 3
4 5 6
7 8 9 10
11 12 13 14 15

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Floyd_I
    {
    public partial class Form1 : Form
        {
        public Form1()
            {
            InitializeComponent();
            }
        //Variables
        int i, j, k = 1, tamano;
        

        private void textBox2_TextChanged(object sender, EventArgs e)
            {
            tamano = Convert.ToInt32(textBox2.Text);
            }

        private void button3_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }
 

Números Parasitos





Resultan ser curiosos números que al ser multiplicados por su última cifra queda exactamente el mismo número pero con esa misma última cifra corrida hacia la izquierda; por ejemplo, tenemos que:
102.564 x 4=410.256 ¿Curioso verdad!? lo mejor es que existe una fórmula para encontrar p-parásitos
p/(10p-1) de forma que nos saldrá un número decimal; con ese número decimal omitimos la coma y truncamos en el momento en que haya un dígito que tome el valor de p (a veces no es el primero). Siguiendo el ejemplo anterior, resultaría que queremos encontrar un 4-parásito. Sustituimos en la fórmula y nos queda 4/39=0,10256410..., omitimos la coma y trunco hasta un dígito que tome el valor 4, así que nos queda, efectivamente, 102.564, que como puse más arriba es un ejemplo de número parásito(4-parásito), se puede hacer para más valores de p, pero, repito, no siempre vale con truncar hasta el primer dígito que tome el valor p, a veces hay que llegar más allá, pero el caso es que con la curiosa fórmula p/(10p-1) encontramos números parásitos.





Si no coincide el dígito de las unidades con el dígito multiplicador, se dice que el número es un pseudoparásito. Por ejemplo, 179487 es un 4-pseudoparásito, porque 179487 x 4 = 717948.


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        private void button3_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }

        private void button2_Click(object sender, EventArgs e)
            {
            textBox1.Clear();
            textBox2.Clear();
            }

        private void button1_Click(object sender, EventArgs e)
            {
            int numero = int.Parse(textBox1.Text);
            int temporal = numero, contador = 0;
            List<int> c = new List<int>();


Números Armstrong





Un número es ARMSTRONG si la suma de los dígitos elevados a la cantidad de dígitos que lo componen es igual al número.

Parece ser que son llamados números Armstrong, debido al nombre de un profesor de matemáticas de la Universidad de Rochester, que durante una clase puso un ejercicio de este tipo a sus alumnos, no obstante ya habían sido identificados por algunos matemáticos (Godfrey H. Hardy), pero Armstrong fue el primero en explorar este concepto.


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        private void button2_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }

        private void button1_Click(object sender, EventArgs e)
            {
            Armstrong n = new Armstrong();
            int c = 0, x = 0, numero;
            numero = Convert.ToInt32(textBox1.Text);           
            while (c < numero)
                {
                if (n.isArmstrong(x))
                    {                   
                     textBox2.AppendText ( Convert.ToString(x)+"\n");                   
                 c++;
                    }
                 x++;
                }
            }


Inverso de un Número





using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace NumeroInverso
    {
    public partial class Form1 : Form
        {
        public Form1()
            {
            InitializeComponent();
            }
        //Variables

        int d, numero, inverso = 0;

       
        private void button3_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }

        private void button1_Click(object sender, EventArgs e)
            {
            textBox1.Clear();
            textBox2.Clear();
            }


Primos / Pares / Impares




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        private void button3_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }

        private void button2_Click(object sender, EventArgs e)
            {
            textBox1.Clear();
            textBox2.Clear();
            listBox1.Items.Clear();
            }

        private void button1_Click(object sender, EventArgs e)
            {
            if (comboBox1.Text=="")
                {
                MessageBox.Show("Selecciona una opcion");
                }
            if (textBox1.Text == "" && textBox2.Text == "")
                MessageBox.Show("Campos Vacios");
            else
                {
                listBox1.Items.Clear();
                int primero = Convert.ToInt32(textBox1.Text);
                int ultimo = Convert.ToInt32(textBox2.Text);


Abrir y Cerrar CD/DVD




mciSendString: Separando el código "mci Send String". Se encarga de enviar cadenas de comandos a un dispositivo MCI. El dispositivo recibe la orden enviada, especificada en la cadena de mandos.
MCI (Multimedia Control Interface) es una API (Aplication Programming Interface) antigua para controlar dispositivos (ya sea unidad de CD/DVD, Mouse, Teclado, etc...) conectados a los ordenadores con sistema Operativo Windows y OS/2. 
WINMM.DLL es uno de los archivos del Sistema.
set CDAudio door open: Significa abrir bandeja.
set CDAudio door closed: Significa cerrar bandeja.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Runtime.InteropServices;

namespace AbriryCerrarDVD
    {
    public partial class Form1 : Form
        {

      //  [System.Runtime.InteropServices.DllImport("winmm.dll", EntryPoint = "mciSendString")]

        [DllImport("winmm.DLL", EntryPoint = "mciSendString")]
        public static extern void mciSendString(string Command, string ReturnString, int ReturnLength, long Callback);

        public Form1()
            {
            InitializeComponent();
            }
         // Abrir bandeja CD-Rom
        private void button1_Click(object sender, EventArgs e)
            {
            mciSendString("set CDAudio door open", "", 127, 0);
            }
        //Cerrar Bandeja CD-Rom
        private void button2_Click(object sender, EventArgs e)
            {
            mciSendString("set CDAudio door closed", "", 127, 0);
            }    
        }
    }

Formula de Baskara




Bhāskara II (1114-1185), también conocido como Bhaskara Acharia (Bhāskara-Ācārya), fue un matemático y astrónomo indio.

Nació cerca de Biyada Bida ―hoy en día el distrito de Bijapur, en el estado de Karnataka (sur de la India)― y se convirtió en jefe del observatorio astronómico de Ujjain, continuando la tradición matemática de Varaja Mijira y Brahma Gupta.

Bhaskara representa el pico del conocimiento matemático y astronómico indio en el siglo XII. Alcanzó un conocimiento de cálculo, astronomía, los sistemas de numeración y la resolución de ecuaciones, que no había sido alcanzado en ninguna parte del mundo durante varios siglos. Sus principales trabajos fueron el Līlāvatī (sobre aritmética), Bījagaṇita (cuenta de raíces, o sea álgebra) y Siddhānta Shiromani (la joya cimera de las conclusiones, escrito en 1150), que consta de dos partes: Golādhyāya (capítulo sobre esferas); Grahagaṇita (conteo de los astros).

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        //Declaración de variables
        double a, b, c, x1, x2;
        private void button3_Click(object sender, EventArgs e)
            {
            Application.Exit();
            }

        private void button2_Click(object sender, EventArgs e)
            {
            textBox1.Clear();
            textBox2.Clear();
            textBox3.Clear();
            textBox4.Clear();
            textBox5.Clear();
            }

        private void button1_Click(object sender, EventArgs e)
            {
            //entrada de datos
            a = double.Parse(textBox1.Text);
            b = double.Parse(textBox2.Text);
            c = double.Parse(textBox3.Text);

            //Proceso
            x1 = (-b + Math.Sqrt(b * b - 4 * a * c)) / (2 * a);
            x2 = (-b - Math.Sqrt(b * b - 4 * a * c)) / (2 * a);

            //Presentación de resultados

            textBox4.Text = x1.ToString();
            textBox5.Text = x2.ToString();
            }
        }
    }