Clase 3: Programación
Estructuras de control (Condicionales)
Profesor Jorge Osio
www.unaj.edu.ar
Temario
Diagramas de flujo:
Utilidad para representar algoritmos
Ejemplo de uso
Estructuras de control:
Condicionales: if, if-else, if-elseif-else.
www.unaj.edu.ar
Utilidad de los diagramas de flujo
A veces puede resultar difícil ver con claridad en
donde usar un "else" o qué instrucciones de las
que siguen a un "if" deben ir entre llaves y
cuales no.
La dificultad está en el hecho de intentar
programar directamente un código en C#, en
lugar de pensar en el problema que se pretende
resolver.
Diagrama de Flujo
Un diagrama de flujo es la representación
gráfica de un ALGORITMO.
Elementos básicos de un diagrama
• El inicio o el final del programa se indica dentro de un círculo.
• Los procesos internos, como realizar operaciones, se encuadran
en un rectángulo.
• Las entradas y salidas (escrituras en pantalla y lecturas de
teclado) se indican con un paralelogramo.
• Las decisiones se indican dentro de un rombo.
Diagrama de Flujo - Ejemplo
Cálculo del sueldo multiplicando la cantidad de horas por el
pago por hora.
Decisiones ….
Sentencias condicionales:
Permiten comprobar condiciones y que el
programa se comporte de una manera u
otra, de acuerdo a esa condición.
if
if .. else
if .. elseif.. elseif.. else
Sentencia if
Sentencia if: Sentencia condicional
más simple. Permite tomar decisiones
sencillas.
Condición
ifif(x
x>> 0:
0)
Console.Write ("x es positivo");
print "x es positivo"
Sentencia if
Ejemplo 5
Atención a las
using System; llaves
public class Ejemplo5
{
public static void Main()
{
int numero;
Console.WriteLine("Ingrese un número");
numero = Convert.ToInt32(Console.ReadLine());
if (numero>0)
Console.WriteLine("El número es positivo.");
}
}
Decisiones ….
Sentencia if-else
· Permite establecer las acciones necesarias cuando
la condición NO se cumple.
Ejemplo 6:
∙ using System;
public class Ejemplo6
{
public static void Main()
{
int numero;
Console.WriteLine(“Ingrese un número");
numero = Convert.ToInt32(Console.ReadLine());
if (numero > 0)
Console.WriteLine("El número es positivo.");
else
Console.WriteLine("El número es cero o negativo.");
}
}
Diagrama que identifica positivos, negativos y
cero (ejemplo 7)
Código para el diagrama de flujo anterior
Sentencia if-else if
¿Qué pasa cuando hay más de dos condiciones?
Ejemplo 7:
using System; Aquí aparecen
public class Ejemplo7
varias
{
public static void Main() condiciones
{ excluyentes.
int numero;
Console.WriteLine(“Ingrese un número");
numero = Convert.ToInt32(Console.ReadLine());
if (numero < 0)
Console.WriteLine("El número es negativo.");
else if (numero == 0)
Console.WriteLine("El número es cero.");
else
Console.WriteLine("El número es positivo."); ¿A qué valores
} referencia el
} else?
Sentencia SWITCH
Si queremos comprobar varios posibles valores, sería muy
tedioso tener que hacerlo con muchos "if" seguidos o
encadenados. La alternativa es la sentencia "switch", cuya sintaxis
es:
switch (expresión)
{
case valor1: sentencia1;
break;
case valor2: sentencia2a;
sentencia2b;
break;
...
case valorN: sentenciaN;
break;
default:
otraSentencia;
break;
}
Ejemplo 8:
using System;
public class Ejemplo8
{
public static void Main()
{
char letra;
Console.WriteLine("Ingrese un caracter");
letra = Convert.ToChar( Console.ReadLine() );
switch (letra)
{
case ‘ ‘: Console.WriteLine("Espacio.");
break;
case ‘1’:
case ‘2’:
case ‘3’:
Ejemplo 8: Continuación
case ‘4’:
case ‘5’:
case ‘6’:
case ‘7’:
Case ‘8’:
case ‘9’:
case ‘0’:
Console.WriteLine("Dígito.");
break;
default: Console.WriteLine("Ni espacio ni dígito.");
break;
}
}
}
Ejemplo 9: Switch case completo
using System;
public class Ejemplo9
{
public static void Main()
{
string nombre;
Console.WriteLine("Introduce tu nombre");
nombre = Console.ReadLine();
switch (nombre)
{
case "Juan": Console.WriteLine("Bienvenido!, Juan.");
break;
case "Pedro": Console.WriteLine("Que tal estas?, Pedro.");
break;
default: Console.WriteLine("Procede con cautela,
desconocido.");
break;
}
}
}
•
. • • •