ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
Primeros Pasos Con VS2005
1. Algoritmos
Descripción del Entorno de Desarrollo IDE
Concepto de Formulario
Concepto de Proyecto
Concepto de Solución
Barra de herramientas
Primera Aplicación de Consola
Universidad Nacional De Córdoba - Programación
Aplicada II - 2009
2. Algoritmo
¿Por qué pensar los algoritmos?
Definición de Algoritmo
Propiedades de un algoritmo
Diagrama de Flujo y Pseudo Código
Ejemplo a desarrollar
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
3. ¿Por qué pensar en algoritmos?
Cotidianamente, los profesionales de la ciencia de la
información, debemos comunicarnos de forma clara y
entendible, ya sea dentro de un entorno laboral, como
de cara a un cliente, o un usuario final. El concepto
básico, que aprendimos desde “chiquitos” lo aplicamos
desde lo general, hacia lo particular.
¿Qué es lo que aprendimos dese chiquitos?
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
6. CAJA NEGRA!!!
Es fundamental, entender todo sistema como una caja negra, desde lo general, como puede
ser el mandato de un proyecto, hasta lo particular, que puede ser una porción específica de
código, que nos permita desarrollar determinada funcionalidad, siempre tenemos
entradas, procesos y salidas. Esa COMUNICACIÓN que comentábamos al principio, es el
punto básico de un desarrollo de un sistema informático, en todo momento debemos
comunicarnos, ya sea con el usuario, a través de una interfaz gráfica o una secuencia de
comandos, o a través de un servicio que comunica nuestro sistema con otro software de
terceros o viceversa. Siempre ocurrirá que tendremos entradas, procesos y salidas;
dependiendo de que lado nos encontremos nos encargaremos de desmenuzar una
entrada, para generar una salida
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
7. Algoritmos
Ya comprendemos el concepto de entradas, procesos y
salidas, sabemos que en un sistema que
desarrollemos, vamos a encargarnos de tomar datos, hacer
algo con ellos, y generar un resultado. Por ejemplo todos
sabemos que:
Se cumple que 8:2 = 4 porque, 4 x 2 = 8.
Es un ejemplo trivial, pero si lo llevamos a las matemáticas
podemos decir que:
A:B=C BxC = A
Donde A,B y C son números Racionales y B <> 0
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
8. Algoritmos
Esta “reglita” que aprendimos en la primaria, es básicamente
un algoritmo, tenemos entradas, procesos y
salidas, tenemos cierto grado de complejidad en el
mismo, ya que sabemos que nuestro algoritmo no tiene
solución para el divisor igual a cero, pero al fin y al cabo lo
que hacemos al dividir es es una lista bien definida
, ordenada y finita de operaciones que permite
hallar la solución a un problema. Dado un estado
inicial y una entrada, a través de pasos sucesivos y
bien definidos se llega a un estado
final, obteniendo una solución
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
9. Algoritmos
Además de cumplir con la definición anterior, se sabe que un algoritmo, debe
tener determinadas características:
Carácter finito. quot;Un algoritmo siempre debe terminar después de un número
finito de pasosquot;.
Precisión. quot;Cada paso de un algoritmo debe estar precisamente definido; las
operaciones a llevar a cabo deben ser especificadas de manera rigurosa y no
ambigua para cada casoquot;.
Entrada. quot;Un algoritmo tiene cero o más entradas: cantidades que le son dadas
antes de que el algoritmo comience, o dinámicamente mientras el algoritmo
corre. Estas entradas son tomadas de conjuntos específicos de objetosquot;.
Salida. quot;Un algoritmo tiene una o más salidas: cantidades que tienen una
relación específica con las entradasquot;.
Eficacia. quot;También se espera que un algoritmo sea eficaz, en el sentido de que
todas las operaciones a realizar en un algoritmo deben ser suficientemente
básicas como para que en principio puedan ser hechas de manera exacta y en un
tiempo finito por un hombre usando lápiz y papelquot;.
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
10. Algoritmos
“Un hombre usando lápiz y papel…”
Los algoritmos, tienen distintas formas de expresarse, en
cuanto a los sistemas de información, lo usual es verlos de
tres formas:
PseudoCódigo: es la descripción de un algoritmo que asemeja a un
lenguaje de programación pero con algunas convenciones del lenguaje
natural
Diagramas de Flujo:son descripciones gráficas de algoritmos; usan
símbolos conectados con flechas para indicar la secuencia de instrucciones
Código de lenguaje de programación: Estará definido según el nivel
del lenguaje y las convenciones dadas.
Existen otros medios de formalizar algoritmos, como
expresiones matemáticas, redes neuronales o circuitos
electrónicos, entre otros, pero escapan a este curso.
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
11. Algoritmos
Ejercicios
Tomaremos, un ejercicio extraído de la guía de trabajos
prácticos de programación lógica:
“9)Ingresar dos números, calcular e imprimir el cociente.”
Tenemos planteado nuestro problema, ahora debemos hallar la
solución, empleando diagramas de flujo y pseudo código.
Tiempo para realizar
el ejercicio: 7 minutos
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
12. Algoritmos
Resolución Pseudo Código
Inicio
„Declaración de variables
Defino Numerador:Real
Defino Denominador:Real
Defino Resultado: Real
„Inicializo denominador en cero
Denominador = 0
Imprimo “Ingrese Numerador”
Ingreso Numerador
Mientras Denominador = 0
Imprimo “Ingrese Denominador”
Ingreso Denominador
Fin_Mientras
„Realizo la Operación División
Resultado = Numerador/Denominador
Imprimo “El resultado es:” & Resultado
Fin
Universidad Nacional De Córdoba - Programación Aplicada II – 2009 – Prof. Daniel Del Valle
13. Algoritmos
Resolución Diagrama de Flujo
A
Defino
Verdadero
Denomin
Numerador, Denominador, Re
ador = 0
sultado : Entero
Ingresar
Denominador
Denominador=0
Ingresar Ingreso
Numerador Denominador
Resultado
Ingreso
Numerador
A
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
14. Algoritmos
Resolución en Visual Basic.Net
Module Module1
Sub Main()
'Declaración de variables
Dim Numerador As Double
Dim Denominador As Double
Dim Resultado As Double
'Inicializo denominador en cero
Denominador = 0
Console.WriteLine(quot;Ingrese Numeradorquot;)
Numerador = Console.ReadLine()
While Denominador = 0
Console.WriteLine(quot;Ingrese Denominadorquot;)
Denominador = Console.ReadLine()
End While
'Realizo la Operación División
Resultado = Numerador / Denominador
Console.WriteLine(quot;El resultado final es {0}quot;, Resultado)
Console.ReadLine()
End Sub
End Module
Universidad Nacional De Córdoba - Programación Aplicada II - 2009
15. Algoritmos
Resolución en C#
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
//Declaración de variables
Double Numerador;
Double Denominador;
Double Resultado;
//Inicializo denominador en cero
Denominador = 0;
Console.WriteLine(quot;Ingrese Numeradorquot;);
Numerador = Convert.ToDouble(Console.ReadLine());
while (Denominador == 0)
{
Console.WriteLine(quot;Ingrese Denominadorquot;);
Denominador = Convert.ToDouble(Console.ReadLine());
}
//Realizo la Operación División
Resultado = Numerador / Denominador;
Console.WriteLine(quot;El resultado final es {0}quot;, Resultado);
Console.ReadLine();
}
}
}
Universidad Nacional De Córdoba - Programación Aplicada II - 2009