You are on page 1of 32

NOMBRES: Andrs Flores

AULA: G-201
FECHA: 12/08/2015

COMP
UTACI
ON
GRAFI
CA

La computacin grafica o grficos por computadora es el campo de la informtica visual,


donde se utilizan computadoras tanto para generar imgenes visuales sintticamente
como integrar o cambiar la informacin visual y espacial probada del mundo real
Computacin en 2D

Es la generacin de imgenes digitales por computadora sobre todo de modelos


bidimensionales
Computacin en 3D
Forma de proyectar la luz
Modelos tridimensionales
Tcnicas especficas
Aplicaciones
Juegos
Aplicaciones
Realidad Virtual
Simula sensaciones
Diseada para todos los sentidos de los seres humanos menos el del olfato

Sincronizacin
Realidad aumentada
Algo sinttico
Se aumenta cosas a la realidad comn
Pretende dar una realidad que no existe
Mundos virtuales
Representacin grafica dentro de una aplicacin e interactuar (avatar en aplicacin)
Procesamiento digital
Conjunto de tcnicas que se aplican a las imgenes de digitales con el objetivo de mejorar
la calidad o facilitar la bsqueda de informacin
Materiales Educativos
Incentivan el aprendizaje del alumno
Aprendizaje ms entretenimiento
Ejemplo 1
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 WindowsFormsApplication1
{
public partial class Ejercicio1 : Form
{
public Ejercicio1()
{
InitializeComponent();
}
private void groupBox1_Enter(object sender, EventArgs e)
{
}
private void Ejercicio1_Load(object sender, EventArgs e)
{

MessageBox.Show("Saludos HUMANO");
}
private void btnMensaje1_Click(object sender, EventArgs e)
{
MessageBox.Show("BIENVENIDOS A C#","Mensaje de Informacion");
}
private void btnSalir_Click(object sender, EventArgs e)
{
Close();
}
private void btnMensaje2_Click(object sender, EventArgs e)
{
MessageBox.Show("Este es un mensaje de prueba","caja de
mensajes",MessageBoxButtons.YesNo,MessageBoxIcon.Exclamation);
}
}
}

Parse hace que cambie la variable a lo que necesitemos


ToString=Convierte de variable a texto
MENSAJES

CODIGO DE BOTONES
private void btnMensaje1_Click(object sender, EventArgs e)
{
MessageBox.Show("Asterisk", "caja de mensajes", MessageBoxButtons.YesNo,
MessageBoxIcon.Asterisk);
}

private void btnMensaje2_Click(object sender, EventArgs e)


{
MessageBox.Show("Error", "caja de mensajes",
MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Error);
}
private void btnMensaje3_Click(object sender, EventArgs e)
{
MessageBox.Show("Exclamacion", "caja de mensajes",
MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation);
}
private void btnMensaje4_Click(object sender, EventArgs e)
{
MessageBox.Show("Cuidado", "caja de mensajes",
MessageBoxButtons.RetryCancel, MessageBoxIcon.Hand);
}
private void groupBox1_Enter(object sender, EventArgs e)
{
}
private void btnMensaje5_Click(object sender, EventArgs e)
{
MessageBox.Show("Informacion", "caja de mensajes",
MessageBoxButtons.YesNo, MessageBoxIcon.Information);
}
private void btnMensaje6_Click(object sender, EventArgs e)
{
MessageBox.Show("CUIDADO!!!", "caja de mensajes",
MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning);
}
private void btnMensaje7_Click(object sender, EventArgs e)
{
MessageBox.Show("Pregunta", "caja de mensajes",
MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Question);
}

private void btnMensaje8_Click(object sender, EventArgs e)


{
MessageBox.Show("NOOO ALTOOO", "caja de mensajes",
MessageBoxButtons.OK, MessageBoxIcon.Stop);
}
private void btnSalir_Click(object sender, EventArgs e)
{
Close();
}
MessageBox.Show (Mtodo) (String, String, MessageBoxButtons)

Muestra un cuadro de mensaje con el texto, la leyenda, y los botones especificados.


Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en System.Windows.Forms.dll)
Sintaxis
public static DialogResult Show(
string text,
string caption,
MessageBoxButtons buttons
)
Parmetros
text
Tipo: System.String
Texto que se mostrar en el cuadro de mensaje.
caption
Tipo: System.String
Texto que se mostrar en la barra de ttulo del cuadro de mensaje.
buttons
Tipo: System.Windows.Forms.MessageBoxButtons
Uno de los valores de MessageBoxButtons que especifica que los botones que se
muestran en el cuadro de mensaje.
Valor devuelto
Tipo: System.Windows.Forms.DialogResult
uno de los valores de DialogResult .
PERIMETRO DE UN CIRCULO

CODIGO APRENDIDO
private float radio,area,perimetro;
public FrmCirculo()
{
//Constructor
InitializeComponent();
}
//Metodos
private void perimetroCirculo(){
perimetro=2*(float)Math.PI*radio;
}
private void areaCirculo(){
area=(float)Math.PI*(float)Math.Pow(radio,2);
}
private void label1_Click(object sender, EventArgs e)
{
}
private void FrmCirculo_Load(object sender, EventArgs e)
{
}
private void btnCalcular_Click(object sender, EventArgs e)
{

radio=float.Parse(txtRadio.Text);
perimetroCirculo();
areaCirculo();
txtPerimetro.Text=perimetro.ToString();
txtArea.Text=area.ToString();
}
private void btnResetear_Click(object sender, EventArgs e)
{
txtRadio.Text="";
txtPerimetro.Text="";
txtArea.Text="";
}
private void btnSalir_Click(object sender, EventArgs e)
{
Close();
}
private void txtRadio_TextChanged(object sender, EventArgs e)
{
}
private void txtArea_TextChanged(object sender, EventArgs e)
{
}
private void txtPerimetro_TextChanged(object sender, EventArgs e)
{
}

}
}
Math (Clase)

Proporciona constantes y mtodos estticos para operaciones trigonomtricas,


logartmicas y otras funciones matemticas comunes.
Jerarqua de herencia
System.Object
System.Math

AREA Y PERIMETRO DEL CUADRADO

En si el programa es el mismo que el del crculo, cambia los mtodos por las formulas del
rea y permetro del Cuadrado

OPERACIONES CON FRACCIONES

EN ESTE CASO LOS METODOS FUERON LLAMADOS DE UNA CLASE DIFERENTE:


Clase Fracion.cs
// Datos miembro - atributos.
private long mNum;
private long mDen;
// Funciones miembro - mtodos.
// Constructor por defecto.
public Fraction()
{
mNum = 0L; mDen = 1L;
}
public void ReadData(TextBox txtNum,TextBox txtDen)
{
mNum = long.Parse(txtNum.Text);
mDen = long.Parse(txtDen.Text);
}
public void PrintData(TextBox txtNum,
TextBox txtDen)
{
txtNum.Text = mNum.ToString();
txtDen.Text = mDen.ToString();
}
public Fraction Addition(Fraction F1, Fraction F2)
{

Fraction Temp = new Fraction();


Temp.mNum = (F1.mNum * F2.mDen) + (F1.mDen * F2.mNum);
Temp.mDen = F1.mDen * F2.mDen;
Temp.Simplify();
return(Temp);
}
public Fraction Subtraction(Fraction F1, Fraction F2)
{
Fraction Temp = new Fraction();
Temp.mNum = (F1.mNum * F2.mDen) - (F1.mDen * F2.mNum);
Temp.mDen = F1.mDen * F2.mDen;
Temp.Simplify();
return (Temp);
}
public Fraction Multiply(Fraction F1, Fraction F2)
{
Fraction Temp = new Fraction();
Temp.mNum = F1.mNum * F2.mNum;
Temp.mDen = F1.mDen * F2.mDen;
Temp.Simplify();
return (Temp);
}
public Fraction Division(Fraction F1, Fraction F2)
{
Fraction Temp = new Fraction();
Temp.mNum = F1.mNum * F2.mDen;
Temp.mDen = F1.mDen * F2.mNum;
Temp.Simplify();
return (Temp);
}
private long MCD(long num1, long num2)
{
long temp;
while(num2 > 0)
{
temp = num1 % num2;
num1 = num2;
num2 = temp;
}
return(num1);
}
public void Simplify()
{
long factor = MCD(mNum, mDen);
mNum = mNum / factor; // F.mNum /= factor;
mDen = mDen / factor; // F.mDen /= factor;

}
}
}
Metodos llamados en cada botn segn corresponda:
Fraction F1 = new Fraction();
Fraction F2 = new Fraction();
Fraction F3 = new Fraction();
public frmFractions()
{
InitializeComponent();
}
private void frmFractions_Load(object sender, EventArgs e)
{
}
private void btnAddition_Click(object sender, EventArgs e)
{
F1.ReadData(txtF1num, txtF1den);
F1.Simplify();
F2.ReadData(txtF2num, txtF2den);
F2.Simplify();
F1.PrintData(txtF1num, txtF1den);
F2.PrintData(txtF2num, txtF2den);
F3 = F3.Addition(F1, F2);
F3.PrintData(txtF3num, txtF3den);
}
private void btnSubtraction_Click(object sender, EventArgs e)
{
F1.ReadData(txtF1num, txtF1den);
F1.Simplify();
F2.ReadData(txtF2num, txtF2den);
F2.Simplify();
F1.PrintData(txtF1num, txtF1den);
F2.PrintData(txtF2num, txtF2den);
F3 = F3.Subtraction(F1, F2);
F3.PrintData(txtF3num, txtF3den);
}
private void btnMultiply_Click(object sender, EventArgs e)
{
F1.ReadData(txtF1num, txtF1den);

F1.Simplify();
F2.ReadData(txtF2num, txtF2den);
F2.Simplify();
F1.PrintData(txtF1num, txtF1den);
F2.PrintData(txtF2num, txtF2den);
F3 = F3.Multiply(F1, F2);
F3.PrintData(txtF3num, txtF3den);
}
private void btnDivision_Click(object sender, EventArgs e)
{
F1.ReadData(txtF1num, txtF1den);
F1.Simplify();
F2.ReadData(txtF2num, txtF2den);
F2.Simplify();
F1.PrintData(txtF1num, txtF1den);
F2.PrintData(txtF2num, txtF2den);
F3 = F3.Division(F1, F2);
F3.PrintData(txtF3num, txtF3den);
}
private void btnExit_Click(object sender, EventArgs e)
{
Close();
}
}
}
Clases (Gua de programacin de C#)

Una clase es una construccin que permite crear tipos personalizados propios mediante la
agrupacin de variables de otros tipos, mtodos y eventos. Una clase es como un
plano.Define los datos y el comportamiento de un tipo. Si la clase no se declara como
esttica, el cdigo de cliente puede utilizarla mediante la creacin
de objetos o instancias que se asignan a una variable. La variable permanece en memoria
hasta que todas las referencias a ella estn fuera del mbito. En ese momento, CLR la
marca como apta para la recoleccin de elementos no utilizados. Si la clase se declara
como esttica, solo existe una copia en memoria y el cdigo de cliente solo puede tener
acceso a ella a travs de la propia clase y no de una variable de instancia. Para obtener
ms informacin, vea Clases estticas y sus miembros (Gua de programacin de C#).
A diferencia de los structs, las clases admiten la herencia, una caracterstica fundamental
de la programacin orientada a objetos. Para obtener ms informacin, vea Herencia
(Gua de programacin de C#).
Declarar clases

Las clases se declaran mediante la palabra clave class, tal como se muestra en el
ejemplo siguiente:
C#
public class Customer
{
//Fields, properties, methods and events go here...
}
El nivel de acceso precede a la palabra clave class. Como, en este caso, se utiliza public,
cualquiera puede crear objetos a partir de esta clase. El nombre de la clase sigue a la
palabra clave class. El resto de la definicin es el cuerpo de clase, donde se definen el
comportamiento y los datos. Los campos, propiedades, mtodos y eventos de una clase
se conocen colectivamente como miembros de clase.
Crear objetos
Aunque se utilizan a veces de forma intercambiable, una clase y un objeto son cosas
diferentes. Una clase define un tipo de objeto, pero no es propiamente un objeto. Un
objeto es una entidad concreta basada en una clase y, a veces, se denomina instancia de
una clase.
Los objetos se pueden crear con la palabra clave new seguida del nombre de la clase en
la que se basar el objeto, de la manera siguiente:
C#
Customer object1 = new Customer();

SERIE FIBONACCI

CODIGO Seriefibonacci.cs
class SerieFibonacci
{
private int val;
public SerieFibonacci() {
val = 0;
}
int Fibonacci(int num) {
if (num == 0 || num == 1)
return num;
else
return Fibonacci(num - 2) + Fibonacci(num - 1);
}
public void leerDatos(TextBox txtVal) {
val = int.Parse(txtVal.Text);
}
public void Calcular(ListBox lstFibo) {
for (int i = 1; i <= val; i++) {
lstFibo.Items.Add(Fibonacci(i));
}
}

}
}
LISTAS EN VISUAL
El control ListBox de Visual Basic 6.0 se reemplaza por el
control ListBox o CheckedListBox en Visual Basic 2008. Los nombres de algunas
propiedades, mtodos, eventos y constantes son diferentes y, en algunos casos, existen
diferencias de comportamiento.

Diferencias conceptuales

ListBox activado
En Visual Basic 6.0, la propiedad Style de un control ListBox determina si aparece una
casilla junto a cada elemento de texto. Se pueden seleccionar varios elementos
en ListBoxaunque la propiedad MultiSelect est establecida en False; para ello, debe
activarse la casilla situada junto a estos elementos. No existe modo alguno de determinar
mediante programacin el estado de activacin de un elemento; si necesita esta
funcionalidad, deber utilizar el control ListView.
En Visual Basic 2008, el nuevo control CheckedListBox muestra casillas al lado de cada
elemento; ya no pueden mostrarse casillas en el control ListBox. El
control CheckedListBoxpermite determinar mediante programacin el estado de activacin
de cada elemento a travs de una coleccin CheckedListBox.CheckedItemCollection.

Columns (Propiedad)

En Visual Basic 6.0, la propiedad Columns tomaba un entero que especificaba el nmero
de columnas que se iban a mostrar.
En Visual Basic 2008, la propiedad MultiColumn toma un valor booleano y la
propiedad ColumnWidth toma un entero que especifica el ancho en pxeles. Si el ancho
del controlListBox cambia en tiempo de ejecucin, es posible que tenga que establecer la
propiedad ColumnWidth en cada columna.

ItemCheck (Evento)
En el control ListBox de Visual Basic 6,0, cuando se produca un evento ItemCheck, ya se
haba cambiado el estado de activacin.
En el control CheckedListBox de Visual Basic 2008, cuando se provoca el
evento ItemCheck, el estado de activacin an no ha cambiado. Puede obtener el valor
pendiente del argumento ItemCheckEventArgs transferido al evento.

TERCER PARCIAL

Juego de Tres en Raya

CODIGO:
CLASE ControlDosUsuarios

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 Manejo_de_botones3parcial
{
class ControlDosUsuarios
{
#region Atributos
/// <summary>
/// Datos o variables miembro
/// </summary>
private string mBandera;
#endregion
#region Propiedades
/// <summary>
/// Propiedades que maneja descripcion de acceso (get y set)
/// </summary>
public string Bandera
{
get { return mBandera; }
set { mBandera = value; }
}
#endregion
#region Constructores de la clase
/// <summary>
/// Funciones Contructoras.
/// </summary>
// Constructores por defecto de la clase sin parmetros
public ControlDosUsuarios()
{
mBandera = "X";
}
#endregion
#region Mtodos de la clase
public void InicializarDatos(List<Button> ListaBotones, GroupBox grbTresEnRaya)
{
mBandera = "X";
for (int i = 0; i < ListaBotones.Count; i++)
{
ListaBotones[i].Text = "";
}

grbTresEnRaya.Enabled = true;
}
public void MarcarBoton(Button ObjBtn)
{
if (ObjBtn.Text=="")
{
if (mBandera=="X")
{
ObjBtn.Text = mBandera;
mBandera = "0";
}
else // mBandera != "X"
{
ObjBtn.Text = mBandera;
mBandera = "X";
}
}
else // objbt.text !=""
{
MessageBox.Show("Casillero Ocupado...", "Mensaje de Control",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
};
}
public void VerificadorGanador(List<Button> ListaBotones, GroupBox
grbTresEnRaya)
{
if (ListaBotones[0].Text == ListaBotones[1].Text && ListaBotones[1].Text ==
ListaBotones[2].Text && ListaBotones[2].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[2].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[3].Text == ListaBotones[4].Text && ListaBotones[4].Text ==
ListaBotones[5].Text && ListaBotones[5].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[5].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[6].Text == ListaBotones[7].Text && ListaBotones[7].Text ==
ListaBotones[8].Text && ListaBotones[8].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[8].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[0].Text == ListaBotones[3].Text && ListaBotones[3].Text ==
ListaBotones[6].Text && ListaBotones[6].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[6].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}

else if (ListaBotones[1].Text == ListaBotones[4].Text && ListaBotones[4].Text ==


ListaBotones[7].Text && ListaBotones[7].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[7].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[2].Text == ListaBotones[5].Text && ListaBotones[5].Text ==
ListaBotones[8].Text && ListaBotones[8].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[8].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[0].Text == ListaBotones[4].Text && ListaBotones[4].Text ==
ListaBotones[8].Text && ListaBotones[8].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[8].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[2].Text == ListaBotones[4].Text && ListaBotones[4].Text ==
ListaBotones[6].Text && ListaBotones[6].Text == "0")
{
MessageBox.Show("Gan" + ListaBotones[6].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
// X
if (ListaBotones[0].Text == ListaBotones[1].Text && ListaBotones[1].Text ==
ListaBotones[2].Text && ListaBotones[2].Text == "X")
{
MessageBox.Show("Gan" + ListaBotones[2].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[3].Text == ListaBotones[4].Text && ListaBotones[4].Text ==
ListaBotones[5].Text && ListaBotones[5].Text == "X")
{
MessageBox.Show("Gan" + ListaBotones[5].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[6].Text == ListaBotones[7].Text && ListaBotones[7].Text ==
ListaBotones[8].Text && ListaBotones[8].Text == "X")
{
MessageBox.Show("Gan" + ListaBotones[8].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[0].Text == ListaBotones[3].Text && ListaBotones[3].Text ==
ListaBotones[6].Text && ListaBotones[6].Text == "X")
{
MessageBox.Show("Gan" + ListaBotones[6].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[1].Text == ListaBotones[4].Text && ListaBotones[4].Text ==
ListaBotones[7].Text && ListaBotones[7].Text == "X")

{
MessageBox.Show("Gan" + ListaBotones[7].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[2].Text == ListaBotones[5].Text && ListaBotones[5].Text ==
ListaBotones[8].Text && ListaBotones[8].Text == "X")
{
MessageBox.Show("Gan" + ListaBotones[8].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[0].Text == ListaBotones[4].Text && ListaBotones[4].Text ==
ListaBotones[8].Text && ListaBotones[8].Text == "X")
{
MessageBox.Show("Gan" + ListaBotones[8].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[2].Text == ListaBotones[4].Text && ListaBotones[4].Text ==
ListaBotones[6].Text && ListaBotones[6].Text == "X")
{
MessageBox.Show("Gan" + ListaBotones[6].Text, "Resultado");
grbTresEnRaya.Enabled = false;
}
else if (ListaBotones[0].Text!=""&&ListaBotones[1].Text!=""&&ListaBotones[2].Text!
=""&&ListaBotones[3].Text!=""&&ListaBotones[4].Text!=""&&ListaBotones[5].Text!
=""&&ListaBotones[6].Text!=""&&ListaBotones[7].Text!=""&&ListaBotones[8].Text!="")
{
MessageBox.Show("Empate", "resultado");
grbTresEnRaya.Enabled = false;
}
}
#endregion
}
}
NUEVO CODIGO A APRENDER:

#Region (Directiva)

Contrae y oculta secciones de cdigo en archivos de Visual Basic.

#Region "identifier_string"
#End Region

Elementos

Trmino

Definicin

identifier_strin
g

Obligatorio. Cadena que hace la funcin de ttulo de una regin cuando sta se
contrae. Las regiones estn contradas de forma predeterminada.

#End Region

Termina el bloque #Region.


Taller Calculadora

using
using
using
using
using
using
using
using
using

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

namespace calculadora_3_parcial_grafica
{
public partial class Form1 : Form
{
float num1,num2,resul;

public Form1()
{
InitializeComponent();
}
private void bttecla1_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text+"1";
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void bttecla2_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "2";
}
private void bttecla3_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "3";
}
private void bttecla4_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "4";
}
private void bttecla5_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "5";
}
private void bttecla6_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "6";
}
private void bttecla7_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "7";
}
private void bttecla8_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "8";
}
private void bttecla9_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "9";
}
private void bttecla0_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + "0";

}
private void buttonsuma_Click(object sender, EventArgs e)
{
num1 = float.Parse(textBox1.Text);
textBox1.Text = "";
textBox2.Text = "+";
btpunto.Enabled = true;

}
private void btteclaresta_Click(object sender, EventArgs e)
{
num1 = float.Parse(textBox1.Text);
textBox1.Text = "";
textBox2.Text = "-";
btpunto.Enabled = true;
}
private void btteclamulti_Click(object sender, EventArgs e)
{
num1 = float.Parse(textBox1.Text);
textBox1.Text = "";
textBox2.Text = "*";
btpunto.Enabled = true;
}
private void bttecladivi_Click(object sender, EventArgs e)
{
num1 = float.Parse(textBox1.Text);
textBox1.Text = "";
textBox2.Text = "/";
btpunto.Enabled = true;
}
private void btteclaresul_Click(object sender, EventArgs e)
{
num2 = float.Parse(textBox1.Text);
if (textBox2.Text=="+")
{
resul = num1 + num2;
textBox1.Text = resul.ToString();
}
if (textBox2.Text == "-")
{
resul = num1 - num2;
textBox1.Text = resul.ToString();
}
if (textBox2.Text == "*")
{
resul = num1 * num2;
textBox1.Text = resul.ToString();
}
if (textBox2.Text == "/")
{
resul = num1 / num2;
textBox1.Text = resul.ToString();

}
}
private void btlimpiar_Click(object sender, EventArgs e)
{
num1 = 0;
num2 = 0;
textBox2.Text = "";
textBox1.Text = "";
}
private void btpunto_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + ".";
btpunto.Enabled = false;
}
}

Taller donde se hace con los botones se calcule un numero con las operaciones bsicas que
contiene la validacin de ingresar una sola vez el punto, borrar lo que se ingres en pantalla
y validacin de las operaciones donde s se ingresa una operacin estn suspendidas las
dems hasta ingresar el otro nmero y aplastar el igual.

LABERINTO (JUEGO)

CODIGO
namespace WinLaberinto
{
public partial class frmLaberintoPrincipiante : Form

{
private int[,] matrizLaberinto = new int[,] { {0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0},
{0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0},
{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0},
{0,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0},
{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0},
{0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
{0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
{0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
{0,1,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0},
{0,1,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0},
{0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
{0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0},
{0,1,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0}};
private int fila = 0;
private int columna = 1;
public frmLaberintoPrincipiante()
{
InitializeComponent();
}
private void frmLaberintoPrincipiante_KeyDown(object sender, KeyEventArgs e)
{
//if (e.KeyCode == Keys.Right)
//{
// picCaminante.Left = picCaminante.Left + 25;
//}
//if (e.KeyCode == Keys.Left)
//{
// picCaminante.Left = picCaminante.Left - 25;
//}
//if (e.KeyCode == Keys.Up)
//{
// picCaminante.Top = picCaminante.Top - 25;
//}
//if (e.KeyCode == Keys.Down)
//{
// picCaminante.Top = picCaminante.Top + 25;
//}
if (matrizLaberinto[fila, columna] != 3)
{
if (e.KeyCode == Keys.Right)
{
if (matrizLaberinto[fila, columna + 1] != 0)

{
picCaminante.Left = picCaminante.Left + 25;
columna++;
}
}
if (e.KeyCode == Keys.Left)
{
if (matrizLaberinto[fila, columna - 1] != 0)
{
picCaminante.Left = picCaminante.Left - 25;
columna--;
}
}
if (e.KeyCode == Keys.Up)
{
if (matrizLaberinto[fila, columna] != 2)
{
if (matrizLaberinto[fila - 1, columna] != 0)
{
picCaminante.Top = picCaminante.Top - 25;
fila--;
}
}
}
if (e.KeyCode == Keys.Down)
{
if (matrizLaberinto[fila + 1, columna] != 0)
{
picCaminante.Top = picCaminante.Top + 25;
fila++;
}
}
}
else
{
MessageBox.Show("FELICITACIONES\nBuen Trabajo", "Ud. lo ha logrado",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
Close();
}
}
private void frmLaberintoPrincipiante_Load(object sender, EventArgs e)
{
}
private void picLaberinto_Click(object sender, EventArgs e)
{
}
}

}
El raton se mueve a lo largo de la matriz seleccionada, 0 para no pasar por ah y 1 para
permitirse mover.
Claves Enumeracin
Especifica los cdigos y modificadores clave.

Esta enumeracin tiene un FlagsAttribute atributo que permite una combinacin bit a bit
de los valores de sus miembros.
Realizar el mapa

El mapa debe ser ajustado al tamao que vayamos a usar en el proyecto.


La matriz se da a partir del laberinto que dibujemos.
TALLER LABERINTO CON INICALES

Es exactamente el mismo proceso anterior, nicamente lo que cambia es la matriz y la


imagen donde se mover el ratn

Matrices (Gua de programacin de C#)


Puede almacenar distintas variables del mismo tipo en una estructura de datos de
matriz. Para declarar una matriz especifique el tipo de sus elementos.
type[] arrayName;
Los ejemplos siguientes crean matrices unidimensionales, multidimensionales y
escalonadas:
C#
class TestArraysClass
{
static void Main()
{
// Declare a single-dimensional array
int[] array1 = new int[5];
// Declare and set array element values
int[] array2 = new int[] { 1, 3, 5, 7, 9 };
// Alternative syntax
int[] array3 = { 1, 2, 3, 4, 5, 6 };

// Declare a two dimensional array


int[,] multiDimensionalArray1 = new int[2, 3];
// Declare and set array element values
int[,] multiDimensionalArray2 = { { 1, 2, 3 }, { 4, 5, 6 } };
// Declare a jagged array
int[][] jaggedArray = new int[6][];
// Set the values of the first array in the jagged array structure
jaggedArray[0] = new int[4] { 1, 2, 3, 4 };
}
}
Informacin general sobre las matrices
Una matriz tiene las propiedades siguientes:

Una matriz puede ser unidimensional, multidimensional o escalonada.

El nmero de dimensiones y la longitud de cada dimensin se establecen cuando


se crea la instancia de la matriz. Estos valores no se pueden cambiar durante la
duracin de la instancia.

Los valores predeterminado de los elementos numricos de matriz se establece en


cero y el de los elementos de referencia se establece en null.

Una matriz escalonada es una matriz de matrices y por consiguiente sus


elementos son tipos de referencia y se inicializan en null.

Las matrices se indizan basadas en cero: una matriz con n elementos se indiza
desde 0 hasta n-1.

Los elementos de una matriz pueden ser de cualquier tipo, incluido el tipo matriz.

Los tipos de matriz son tipos de referencia derivados del tipo base
abstracto Array. Puesto que este tipo implementa IEnumerable e IEnumerable,
puede utilizar la iteracin foreach en todas las matrices de C#.

You might also like