S
Hacer un algoritmo para escribir un programa que devuelve el nombre del día de la semana siguiendo un orden de correspondencia (1, 2, 3,4…..7) para
(Lunes, martes, miércoles…..domingo) respectivamente.
Algoritmo
Inicio
Declare números
Leer números
Selección numero
Case 1
Imprimir “lunes”
Case 2
Imprimir “martes”
Case 3
Imprimir “miércoles”
Case 4
Imprimir “jueves”
Case 5
Imprimir “viernes”
Case 6
Imprimir “sábado”
Case 7
Imprimir “domingo”
Si no
Imprimir “solo números entre 1 y 7….”
Fin selección
Fin
Variable
Numero: numero de correspondencia al día de la semana
Ejercicio.-
1) Realizar un algoritmo que calcule las operaciones aritméticas de 2 números.
1.+
2. –
3.*
4. /
Algoritmo
Inicio
Declare opción suma, resta, multiplicación, división.
Leer opción
Seleccionar opción
Caso1
Leer nim1, num2
Suma (num1+num2)
Imprimir suma
Caso 2
Leer num1, num2
Resta (num1-num2)
Imprimir resta
Caso 3
Leer num1, num2
Multiplicación (num1*num2)
Imprimir multiplicación
Caso 4
Leer num1, num2
División (num1/num2)
Imprimir división
Fin selección
FIN
*TRABAJO DE INVESTIGACION*
FUNCIONES Y PROCEDIMIENTOS EN LOS ALGORITMOS
Las funciones son subalgoritmos (o módulos) que resuelven un problema sencillo y devuelven un resultado al algoritmo que las invoca.
Las funciones pueden tener argumentos, aunque no es obligatorio. Los argumentos son los datos que se proporcionan a la función en la invocación, y que la función utilizará para sus cálculos.
Además, las funciones tienen, obligatoriamente, que devolver un resultado. Este resultado suele almacenarse en una variable para usarlo posteriormente.
De todos estos elementos nuevos, el más complejo con diferencia es la lista de argumentos, ya que pueden existir argumentos de entrada, de salida y de entrada/salida. El problema de los argumentos lo trataremos en profundidad en otro post. Por ahora, diremos que es una lista de esta forma:
parámetro_1 es tipo_de_datos_1, parámetro_2 es tipo_de_datos_2, etc.
Ahí va un ejemplo: una función que calcula el área de un círculo. El radio se pasa como argumento de tipo real.
real función área_círculo (radio es real)
variables
área es real
inicio
área = 3.14 * radio ^ 2
devolver (área)
fin
Fíjese en que la función no es más que un algoritmo normal y corriente, salvo por dos detalles:
La primera línea. En ella aparece más información: el tipo de valor devuelto por la función (real, puesto que calcula el área del círculo), el nombre de la función (área_círculo) y la lista de argumentos. En esta función sólo hay un argumento, llamado radio. Es de tipo real.
La penúltima línea (antes de fin). Contiene el valor que la función devuelve. Debe ser una expresión del mismo tipo que se indicó en la primera línea (en este ejemplo, real).
LENGUAJES DE PROGRAMACIÓN
Los lenguajes de programación son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java, etc...
Una computadora funciona bajo control de un programa el cual debe estar almacenado en la unidad de memoria; tales como el disco duro.
Los lenguajes de programación de una computadora en particular se conoce como código de máquinas o lenguaje de máquinas
Los lenguajes de programación de una computadora en particular se conoce como código de máquinas o lenguaje de máquinas
Estos lenguajes codificados en una computadora específica no podrán ser ejecutados en otra computadora diferente.
Para que estos programas funcionen para diferentes computadoras hay que realizar una versión para cada una de ellas, lo que implica el aumento del costo de desarrollo.
Por otra parte, los lenguajes de programación en código de máquina son verdaderamente difíciles de entender para una persona, ya que están compuestos de códigos numéricos sin sentido nemotécnico.
Los lenguajes de programación facilitan la tarea de programación, ya que disponen de formas adecuadas que permiten ser leídas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar.
Los lenguajes de programación representan en forma simbólica y en manera de un texto los códigos que podrán ser leídos por una persona.
Los lenguajes de programación son independientes de las computadoras a utilizar.
Para que estos programas funcionen para diferentes computadoras hay que realizar una versión para cada una de ellas, lo que implica el aumento del costo de desarrollo.
Por otra parte, los lenguajes de programación en código de máquina son verdaderamente difíciles de entender para una persona, ya que están compuestos de códigos numéricos sin sentido nemotécnico.
Los lenguajes de programación facilitan la tarea de programación, ya que disponen de formas adecuadas que permiten ser leídas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar.
Los lenguajes de programación representan en forma simbólica y en manera de un texto los códigos que podrán ser leídos por una persona.
Los lenguajes de programación son independientes de las computadoras a utilizar.
COMPILADORES
Los compiladores son programas o herramientas encargadas de compilar. Un compilador toma un texto (código fuente) escrito en un lenguaje de alto nivel y lo traduce a un lenguaje comprensible por las computadoras (código objeto).
Básicamente, existen dos grandes formas de ejecutar programas: programas compilados (previamente pasados por un compilador) y programas interpretados (necesitan pasar por un intérprete para ejecutarse en tiempo real).
Características de un compilador:
* Front End: parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Parte que suele ser independiente de la plataforma o sistema operativo para el que funcionará.
* Back End: parte en donde se genera el código máquina exclusivo para una plataforma a partir de lo analizado en el front end.
Por lo general el resultado del back end no puede ser ejecutado directamente, se necesita pasar por un proceso de enlazado (linker).
Existen varios tipos de compiladores: Compiladores cruzados, Compiladores optimizadores, Compiladores de una sola pasada, Compiladores de varias pasadas, Compiladores JIT (Just In Time).
Básicamente, existen dos grandes formas de ejecutar programas: programas compilados (previamente pasados por un compilador) y programas interpretados (necesitan pasar por un intérprete para ejecutarse en tiempo real).
Características de un compilador:
* Front End: parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Parte que suele ser independiente de la plataforma o sistema operativo para el que funcionará.
* Back End: parte en donde se genera el código máquina exclusivo para una plataforma a partir de lo analizado en el front end.
Por lo general el resultado del back end no puede ser ejecutado directamente, se necesita pasar por un proceso de enlazado (linker).
Existen varios tipos de compiladores: Compiladores cruzados, Compiladores optimizadores, Compiladores de una sola pasada, Compiladores de varias pasadas, Compiladores JIT (Just In Time).
INTERPRETE
Es un programa de computadora que ejecuta o lleva a cabo instrucciones escritas en un lenguaje de programación.
La interpretación es una de las formas de ejecución de los programas de computadoras, la otra es la compilación.
El término "intérprete" puede hacer referencia al programa que ejecuta el código fuente que acaba de ser traducido a una forma intermedia, o puede hacer referencia al programa que lleva a cabo tanto la traducción como la ejecución.
La interpretación es una de las formas de ejecución de los programas de computadoras, la otra es la compilación.
El término "intérprete" puede hacer referencia al programa que ejecuta el código fuente que acaba de ser traducido a una forma intermedia, o puede hacer referencia al programa que lleva a cabo tanto la traducción como la ejecución.
RECURSIVIDAD
La recursividad es una técnica de programación importante. Se utiliza para realizar una llamada a una función desde la misma función. Como ejemplo útil se puede presentar el cálculo de números factoriales. Él factorial de 0 es, por definición, 1. Los factoriales de números mayores se calculan mediante la multiplicación de 1 * 2 * ..., incrementando el número de 1 en 1 hasta llegar al número para el que se está calculando el factorial.
El siguiente párrafo muestra una función, expresada con palabras, que calcula un factorial.
"Si el número es menor que cero, se rechaza. Si no es un entero, se redondea al siguiente entero. Si el número es cero, su factorial es uno. Si el número es mayor que cero, se multiplica por él factorial del número menor inmediato."
Para calcular el factorial de cualquier número mayor que cero hay que calcular como mínimo el factorial de otro número. La función que se utiliza es la función en la que se encuentra en estos momentos, esta función debe llamarse a sí misma para el número menor inmediato, para poder ejecutarse en el número actual. Esto es un ejemplo de recursividad.
La recursividad y la iteración (ejecución en bucle) están muy relacionadas, cualquier acción que pueda realizarse con la recursividad puede realizarse con iteración y viceversa. Normalmente, un cálculo determinado se prestará a una técnica u otra, sólo necesita elegir el enfoque más natural o con el que se sienta más cómodo.
Claramente, esta técnica puede constituir un modo de meterse en problemas. Es fácil crear una función recursiva que no llegue a devolver nunca un resultado definitivo y no pueda llegar a un punto de finalización. Este tipo de recursividad hace que el sistema ejecute lo que se conoce como bucle "infinito".