S6 - Elementos Básicos de Un Programa en C#
S6 - Elementos Básicos de Un Programa en C#
Herramientas de Programación 1
ELEMENTOS BASICOS DE UN PROGRAMA EN C#.
Semana 6
OBJETIVO DE LA EXPERIENCIA
Aplica los elementos fundamentales de programación utilizando el lenguaje C# en el desarrollo de aplicaciones de
alto rendimiento
MARCO TEÓRICO
Las variables en la computadora las podemos imaginar como pequeñas cajas que existen en la memoria de la computadora
y su tamaño dependerá de la información que deben guardar. Esto se conoce como tipo de la variable. Para poder acceder a
esa caja o variable le ponemos un nombre que sería la etiqueta con la que la identificamos.
Para hacer uso de una variable, lo primero que tenemos que hacer es declararla. La declaración de éstas es algo muy
sencillo. Como primer paso tenemos que colocar el tipo y luego el nombre.
Las variables en C# deben nombrarse de acuerdo con unas recomendaciones sencillas:
Cuando nombramos las variables, hay que tener en cuenta que C# es sensible a las mayúsculas y minúsculas, por lo que
una variable llamada costo no es la misma que otra variable llamada COSTO u otra llamada Costo.
Es recomendable nombrar a las variables con nombres que hagan referencia a la información que guardarán. Si nos
acostumbramos a hacer esto desde que empezamos a programar, evitaremos muchos problemas en el futuro y será mucho
más sencillo corregir nuestros programas cuando tengan errores.
NUMERICOS
Veamos un ejemplo de cómo podemos declarar una variable que guarde valores numéricos enteros. El tipo que guarda
estos valores se conoce como int.
int base_imponible;
int impuesto;
Pero también es posible declarar las variables en una sola línea. Para esto simplemente separamos los nombres de las
variables con comas. No hay que olvidar colocar el punto y coma al final de la sentencia.
Propiedad Descripción
int Cuando queremos guardar valores numéricos enteros con signo, en el rango de Es importante
-2,147,483,648 hasta 2,147,483,647. conocer los
uint Para valores numéricos enteros positivos, su rango de valores es desde 0 hasta tipos y la
4,294,967,295. información
long Guarda valores numéricos enteros realmente grandes con un rango desde que pueden
-9,223,372,036,854,775,808 hasta 9,223,372,036,854,775,807. guardar, ya que
uling Guarda valores numéricos enteros positivos. Su rango de valores varía desde 0 esto nos
hasta 18,446,744,073,709,551,615. permitirá
short Guarda valores numéricos enteros, pero su rango es menor y varía desde -32,768 hasta guardar la
32,767. información
ushort Puede guardar valores numéricos enteros positivos con un rango desde 0 hasta 65,535. necesaria y
float Guarda valores numéricos con decimales (4 bytes). Para este tipo el rango es desde ±1.5 utilizar la
x 10-45 hasta ±3.4 x 10-38. menor cantidad
double Guarda valores numéricos con decimales (8 bytes). Para este tipo el rango es desde ±5.0 de memoria.
x 10-324 hasta ±1.7 x 10-308. Podemos
decimal Guarda valores numéricos con decimales (16 bytes). Para este tipo el rango es desde ±7.9 aprender los
x 10-28 hasta ±7.9 x 10-28. rangos de los
string Este tipo nos permite guardar cadenas. tipos o
bool Puede tomar dos valores: verdadero (true) o falso (false) imprimir una
tabla y tenerla
a mano. Con la práctica podremos utilizar los tipos sin tener que verificar los rangos constantemente.
Una vez que hemos declarado la variable, debemos inicializarla. Inicializar una variable es asignarle un valor por primera
vez. Esto nos permite darle un valor inicial que puede ser útil en la ejecución de nuestro programa (no sólo podemos
asignarle a una variable un valor fijo, sino también puede ser desde un texto ingresado por el usuario).
Para asignarle un valor a una variable, ya sea durante la inicialización o durante el transcurso del programa, usamos un
operador de asignación, el signo igual.
Veamos a continuación un ejemplo de cómo asignar valores:
STRING
Función Descripción
Length Permite obtener la longitud de la cadena.
SubString Recupera una subcadena indicándole la ubicación inicial y la cadena de
caracteres.
IndexOf Devuelve el índice de un carácter específico.
Replace Reemplaza un carácter o caracteres de una cadena por otros caracteres.
ToUpper Convierte a mayúscula los caracteres de la cadena.
ToLower Convierte a minúscula los caracteres de la cadena.
Trim Quita los espacion en blanco al inicio y al final de la cadena de caracteres.
BOOL
Así como existen operadores aritméticos también existen operadores lógicos, son los siguientes:
Operador Operación Ejemplo Resultado
& Y lógico test1 & test2 Verdadero si ambos son ciertos
&& Y lógico test1 && test2 Igual que &, pero solo evalúa test2 si test1 es verdadero
| O lógico test1 | test2 verdadero si alguno de los dos es verdadero
|| O lógico test1 || test2 Igual que |, pero solo evalúa test2 si test1 es falso
! Negación ! test1 Verdadero si test1 es falso, falso si test1 es verdadero
^ O exclusivo test1 ^ test2 Verdadero si alguno es cierto y el otro NO lo es
OPERADORES ARITMETICOS
Para realizar cálculos aritméticos debemos seguir una precedencia entre los operadores, en el caso del ejemplo primero se
ejecuta la multiplicación y luego la división. La siguiente tabla muestra la precedencia de los operadores en C#. Se
encuentran listados de mayor a menor precedencia.
Operador Descripción
* Multiplicación
/ División
% Módulo
+ Adición
- Sustracción
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa4
______________________________________________________________________
_________________________
Para que podamos organizar una expresión hacemos uso de los paréntesis. Cada sección que tengamos en los paréntesis se
evalúa como una expresión y el resultado se pasa al resto de la expresión. Por ejemplo, mostramos la secuencia de
ejecución de una expresión más complicada:
OPERADORES LOGICOS
Así como existen operadores aritméticos también existen operadores lógicos, son los siguientes:
OPERADORES DE COMPARACION
Los operadores de comparación son:
ARREGLOS
Los arreglos son grupos de variables y estas variables serán referenciadas por el mismo nombre. Para poder acceder a una
variable del arreglo usaremos un número de índice, ya que todas las variables adentro de un arreglo serán de un mismo tipo.
Un punto muy importante que no debemos olvidar cuando trabajemos con los arreglos es que éstos están basados en índice
cero, esto quiere decir que el primer elemento del arreglo se encuentra en la posición 0, no en la posición 1 como
podríamos pensar. No olvidar este punto nos evitará muchos problemas de lógica en el futuro.
En un arreglo es conveniente colocar la cantidad correcta de elementos, ya que una vez creado, no puede crecer a menos
que utilicemos una función especial. Si hacemos lo último en forma constante, esto indica que nuestro programa tiene
problemas de diseño. En el próximo capítulo veremos estructuras que permiten variar la cantidad de elementos a guardar.
int n = 4;
int[] calificaciones = new int[n];
La cantidad de datos debe ser un valor válido. No podemos colocar números negativos, ni un tamaño de cero ya que no
tendría sentido. Si la cantidad de elementos a crear se pasará por medio de una variable, ésta debe de ser de tipo entera. No
tener en cuenta esto traerá problemas al compilar la aplicación.
En algunas ocasiones podemos conocer los valores que colocaremos adentro del arreglo, por lo que podemos declararlo y
asignarle sus valores en la misma sentencia.
Esto lo hacemos indicando primero el tipo y los [ ] seguidos del nombre del arreglo y en el lado derecho de la sentencia
colocamos entre { } los elementos que se le desean asignar al arreglo. Estos elementos deberán estar separados por comas.
Veámoslo ejemplificado de manera más clara:
Si ingresamos un índice que supere la cantidad de elementos en el arreglo hara que se genere una excepción.
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa6
______________________________________________________________________
_________________________
RECURSOS
a. Hardware
Una computadora con 4 GB e RAM y procesador de 2.0 GHz.
b. Software
Visual Studio Professional 2015 / 2017
PROCEDIMIENTO
Laboratorio 6:
Objetivos
Entender cuál es la estructura de un proyecto tipo Windows Forms desarrollado en C#..
Introducción
Durante esta actividad, vamos a revisar la estructura de un proyecto/solución Windows Forms en Visual Studio.
Vamos a explicar la estructura básica de un programa con formularios Windows. Para ello vamos a crear el proyecto
Semana06, al formulario inicial le ponemos el nombre frmPrincipal, revisamos el código inicial del formulario.
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa7
______________________________________________________________________
_________________________
Las primeras líneas son las sentencias using, estas hacen referencia a varias librerías (componentes de software) que
facilitan el desarrollo de nuestras aplicaciones. Estas se van activando y agregando al proyecto a medida que vamos
utilizando alguna de sus funcionalidades. En posteriores semanas veremos cómo se van activando las que se muestran
sombreadas y también podremos agregar otras que aún no están incluidas en el proyecto.
Un namespace (espacio de nombres) identifica generalmente a un proyecto, se utiliza para agrupar clases, las clases dentro
de un namespace pueden ser referenciadas directamente dentro del proyecto.
Objetivos
Entender cómo aplicar correctamente los tipos distintos de datos a las variables de nuestras aplicaciones.
Introducción
Durante esta actividad, vamos a desarrollar aplicaciones que hacen uso de los tipos de datos: int, double, string y bool.
txtBaseImponible.Text = base_imponible.ToString();
txtImpuestos.Text = impuesto.ToString();
txtTotal.Text = total.ToString();
}
Para el cálculo del Total estamos haciendo uso del operador aritmético suma (+).
Debemos resaltar que en una asignación tanto el miembro de la izquierad debe ser del mismo tipo que el de a
derecha, caso contrario el compilador nos mostrara mensajes de error como el siguiente:
En este ejemplo, la variable total es de tipo int y la propiedad Text del control TextBox es de tipo string. Debemos
convertir el valor entero a string para poder asignarlo correctamente, esta conversión lo hace la función ToString().
c. Ejecutamos la aplicación.
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa9
______________________________________________________________________
_________________________
txtMontoDescuento.Text = montoDescuento.ToString();
txtNuevoTotal.Text = nuevoTotal.ToString();
}
Como vamos a trabajar con números decimales declaramos varias variables del tipo double, lo primero que
hacemos es convertir el porcentaje ingresado por el usuario al tipo de dato double ya que lo que nos devuelve una
caja de texto es un dato de tipo string. Para la conversión entre tipos de datos se utiliza generalmente la clase
Convert.
c. Ejecutamos la aplicación.
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa10
______________________________________________________________________
_________________________
Debemos resaltar que no estamos haciendo validación del dato de entrada, podría ser que el usuario ingrese un
dato no numérico y pueda hacer que el programa muetre un error. Por ejemplo si ingresamos caracteres no
numéricos Visual Studio respondería con una Excepcion no controlada.
Esto responde a que la cadena ingresada no es un número y por lo tanto no se pudo hacer correctamente la
conversión.
El manejo de excepciones se trata en la clase de la última semana.
c. Ejecutamos la aplicación.
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa12
______________________________________________________________________
_________________________
if (porcentajeDescuento > 0)
{
tieneDescuento = true;
}
txtDescuento.Text = montoDescuento.ToString();
txtTotal.Text = total.ToString();
}
c. Ejecutamos la aplicación y verificamos que solo se aplica el descuento si el usuario ingresa un Código de
Descuento válido y el Precio es mayor o igual a 100.
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa14
______________________________________________________________________
_________________________
6.3 Arreglos.
Objetivos
Entender cómo aplicar correctamente los arreglos en nuestras aplicaciones.
Introducción
Durante esta actividad, vamos a desarrollar aplicaciones que hacen uso de arreglos con distintos tipos de datos.
Paso 1. Arreglos.
a. Para el siguiente ejemplo vamos agregar un nuevo formulario con el siguiente diseño:
int i = 0
Se declara una variable que nos ayudara a la contabilización de las veces que se va a ejecutar las instrucciones
de la estructura, esta variable empieza en cero (0)
i<4
Las instrucciones se van a ejecutar mientras esta expresión sea verdadera, una vez que sea falsa saldrá del for
y ejecutara las instrucciones siguientes.
i++
Indica el incremento de la variable i cada vez que se ejeucta la estrutura iterativa, en este caso se incrementa
en 1
ACTIVIDAD VIRTUAL
Ingresa a la plataforma virtual. Revisar y analizar los siguientes enlaces, luego realiza la actividad propuesta:
Arreglos.
o https://www.youtube.com/watch?
v=I1ADyLMTAwo&list=PLU8oAlHdN5BmpIQGDSHo5e1r4ZYWQ8m4B&index=36
o https://www.youtube.com/watch?
v=G3o96kwDbA4&list=PLU8oAlHdN5BmpIQGDSHo5e1r4ZYWQ8m4B&index=37
1. En un nuevo formulario, crea un arreglo o unidimensional donde le indiques el tamaño por teclado y crear rellenar el
arreglo con los múltiplos de un numero pedido por teclado también. Mostrar los elementos del arreglo en un ListBox.
Por ejemplo:
Guía de Laboratorio
Herramientas de Programación 1 – Elementos básicos de un programa17
______________________________________________________________________
_________________________