2015年1月8日 星期四

4X4亂數

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication12
{
    public partial class Form1 : Form
    {
        public System.Windows.Forms.Button Button1;
        public System.Windows.Forms.Button Button2;
        Random rand = new Random();
        Button[,] buttons = new Button[5, 5];
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            Button1 = new System.Windows.Forms.Button();
            Button1.Location = new Point(300, 30);
            Button1.Size = new Size(100, 30);
            Button1.Click += new EventHandler(Button1_Click);
            Button1.Text = "change";
            this.Controls.Add(Button1);
            /*Button2 = new System.Windows.Forms.Button();
            Button2.Location = new Point(200, 50);
            Button2.Size = new Size(100, 30);
            Button2.Text = "Change";
            Button2.Click += new EventHandler(Button2_Click);
            this.Controls.Add(Button2);
             */
            for (int j = 1; j < 5; j++)
            {
                for (int i = 1; i < 5; i++)
                {
                    buttons[i, j] = new Button();
                    buttons[i, j].Location = new Point(  i * 50,  j * 50);
                    buttons[i, j].Size = new Size(50, 50);
                    this.Controls.Add(buttons[i, j]);
                }
            }
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            int x, y, a;
            int[] myarray = { 0, 1, 2, 3, 4, 5, 6, 7, 8,9,10,11,12,13,14,15 };
            for (int i = 15; i > 1; i--)
            {
                x = rand.Next(0, i);
                y = myarray[x];
                myarray[x] = myarray[i];
                myarray[i] = y;
            }
            for (int j = 1; j < 5; j++)
            {
                for (int i = 1; i < 5; i++)
                {
                    a = myarray[(j - 1) * 4 + (i - 1)];
                    buttons[i, j].Text = Convert.ToString(a);
                    this.Controls.Add(buttons[i, j]);
                }
            }
        }
        protected void Button2_Click(object sender, EventArgs e)
        {

        }
    }
}