Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CONCEPTOS BÁSICOS
Una computadora es una máquina electrónica analógica o digital programable, que recibe y procesa
datos para convertirlos en información útil. Es una colección de circuitos integrados y otros
componentes relacionados que puede ejecutar algún proceso, con exactitud, rapidez y de acuerdo
a lo indicado por un usuario o automáticamente por un programa.
Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o
varias tareas en una computadora. Sin programas, las máquinas no pueden funcionar
correctamente. Al conjunto general de programas, se le denomina software y constituyen el soporte
lógico de las computadoras digitales.
Arquitectura de la computadora
La arquitectura de computadoras es el diseño conceptual y la estructura operacional fundamental
de un sistema de computadora, o sea, es un modelo y una descripción funcional de los
requerimientos y las implementaciones de diseño para varias partes de una computadora, con
especial interés en la forma en que la unidad central de proceso (UCP) trabaja internamente y
accede a las direcciones de memoria.
Unidad I Pag. 1
Fundamentos de Programación
En computación, la unidad aritmético lógica (ALU por sus siglas en inglés Arithmetic Logic Unit), es
un circuito digital que calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y
operaciones lógicas (si, y, o, no) y de comparación entre dos números.
Los microprocesadores modernos tienen dentro de ellos un ALU muy complejo y potente. De hecho,
un microprocesador de múltiples núcleos puede tener en cada núcleo múltiples unidades de
ejecución, cada una de ellas con múltiples ALU.
Muchos otros circuitos pueden contener en el interior una unidad aritmético lógica: unidades de
procesamiento gráfico (como NVIDIA y ATI), FPU como el viejo coprocesador matemático 80387, y
procesadores digitales de señales (como en las tarjetas de sonido Sound Blaster), lectoras de CD y
televisores de alta definición. Todos éstos tienen en su interior varias ALU potentes y complejas.
La unidad de control (UC) es uno de los tres bloques funcionales principales en los que se divide una
unidad central de procesamiento. Su función es buscar las instrucciones en la memoria principal,
decodificarlas y ejecutarlas. Funciona de esta manera: sigue la dirección de las posiciones en
memoria que contienen la instrucción que el computador va a realizar en ese momento; recupera
la información poniéndola en la ALU para la operación que debe desarrollar. Transfiere luego el
resultado a ubicaciones apropiadas en la memoria. Una vez que ocurre lo anterior, la unidad de
control va a la siguiente instrucción (normalmente situada en la siguiente posición, a menos que la
instrucción sea una instrucción de salto) informan al ordenador que la próxima instrucción estará
ubicada en otra posición de la memoria.
Los dispositivos de Entrada/Salida sirven a la computadora para obtener información del mundo
exterior y/o comunicar los resultados generados por el computador al exterior.
COMPUTABILIDAD
El concepto de "computabilidad" es uno de los pilares fundamentales de la matemática moderna.
Se han elaborado diferentes teorías, todas ellas equivalentes, para precisar el concepto de
computabilidad.
Unidad I Pag. 2
Fundamentos de Programación
dado de codificación. De esta forma entonces cualquier algoritmo escrito en cualquier sistema de
símbolos puede ser transformado en un mensaje puramente numérico. Si tenemos algoritmos para
determinar las raíces de ecuaciones de segundo grado ¿por qué no buscar un algoritmo que
determine las raíces de una ecuación de grado n? De esta forma se intentaba dar respuesta a la
pregunta de si existía un superalgoritmo que diese respuesta a cualquier problema matemático.
Pero los matemáticos se toparon con la evidencia de que ni siquiera para determinados problemas
parecía existir algoritmo. Además del lado de la lógica matemática vino una aportación también
desalentadora de la mano de K. Gödel, ya que demostró que existen sistemas de códigos y reglas
los cuales no eran capaces de demostrar si una sentencia o mensaje generado dentro del propio
sistema era verdadera o falsa (o dicho de otro modo, con estos conjuntos de reglas y símbolos se
podía construir un mensaje que a priori dentro del propio sistema no podía decirse si era verdadero
o falso, como por ejemplo la frase: "esta frase es falsa"; lo que en matemática se denominaban
sistemas incompletos).
En esta búsqueda infructuosa de superalgoritmos los matemáticos se dieron cuenta de que para
responder a la pregunta de si existía ese tal superalgoritmo debía precisarse completamente qué
era un algoritmo. En este punto entra la definición que de algoritmo elaboraron Alan Turing y Emile
Post mediante sendas máquinas teóricas: la máquina de Turing y la máquina de Post.
Turing y Post en realidad buscaban una definición de computabilidad, es decir una definición de qué
y cómo algo puede ser computable o calculable. Para ello centraron sus argumentaciones en torno
a unas máquinas de computar teóricas que se denominaron popularmente como máquinas de
Turing y Post respectivamente. Así hablamos de números "turingcomputables", funciones
"turingcomputables" etc., cuando pueden calcularse por medio de una máquina de Turing y de
forma similar también en una máquina de Post.
ALGORITMO
Es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite
realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha
actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado
final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.
MAQUINA DE TURING
Una máquina de Turing es un dispositivo que manipula símbolos sobre una tira de cinta de acuerdo
a una tabla de reglas. A pesar de su simplicidad, una máquina de Turing puede ser adaptada para
simular la lógica de cualquier algoritmo de computador y es particularmente útil en la explicación
de las funciones de un CPU dentro de un computador.
Unidad I Pag. 3
Fundamentos de Programación
La máquina de Turing fue descrita por Alan Turing como «máquina automática» en la revista
Proceedings of the London Mathematical Society en 1936. La máquina de Turing no está diseñada
como una tecnología de computación práctica, sino como un dispositivo hipotético que representa
una máquina de computación. Las máquinas de Turing ayudan a los científicos a entender los límites
del cálculo mecánico. Una máquina de Turing consta de:
1. Una cinta que se divide en celdas, una al lado de la otra. Cada celda contiene un símbolo de
algún alfabeto finito. El alfabeto contiene un símbolo especial llamado blanco (aquí escrito
como 'B') y uno o más símbolos adicionales. La cinta se supone que es arbitrariamente
extensible hacia la izquierda y hacia la derecha, es decir, la máquina de Turing siempre es
suministrada con tanta cinta como necesite para su computación. Las celdas que no se
hayan escrito previamente se asumen que están rellenas con el símbolo blanco. En algunos
modelos la cinta tiene un extremo izquierdo marcado con un símbolo especial; la cinta se
extiende o es indefinidamente extensible hacia la derecha.
2. Un cabezal que puede leer y escribir símbolos en la cinta y mover la cinta a la izquierda y a
la derecha una (y sólo una) celda a la vez. En algunos modelos el cabezal se mueve y la cinta
es estacionaria.
3. Un registro de estado que almacena el estado de la máquina de Turing, uno de los estados
finitos. Hay un especial estado inicial con que el registro de estado es iniciado. Turing escribe
que estos estados reemplazan el "estado de la mente" en que ordinariamente estaría una
persona realizando cálculos.
4. Una tabla finita de instrucciones (llamada ocasionalmente como tabla de acción o función
de transición). Las instrucciones son usualmente 5-tuplas: qiaj→qi1aj1dk, (a veces 4-tuplas),
que, dado el estado (qi) la máquina está actualmente en y el símbolo(aj) se está leyendo en
la cinta (el símbolo actualmente debajo del cabezal) le indica a la máquina hacer lo siguiente
en secuencia (para los modelos de 5-tupla):
• Borra o escribe un símbolo (reemplazando aj con aj1), y entonces
• Mueve el cabezal (que es descrito por dk y puede tener los valores: 'L' para un paso a la
izquierda, o 'R' para uno paso a la derecha, o 'N' para permanecer en el mismo lugar) y
luego
• Asume el mismo o un nuevo estado como prescrito (ve al estado qi1).
PARTES DE UN ALGORITMO
Todo algoritmo debe obedecer a la estructura básica de un sistema, es decir: entrada, proceso y
salida.
Donde:
▪ ENTRADA Corresponde al insumo, a los datos necesarios que requiere el proceso para
ofrecer los resultados esperados.
▪ PROCESO Pasos necesarios para obtener la solución del problema o la situación planteada.
▪ SALIDA Resultados arrojados por el proceso como solución.
Unidad I Pag. 4
Fundamentos de Programación
TIPOS DE DATOS
Como se describió anteriormente, un dato es un campo que puede convertirse en información.
Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como
`b', un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de valores que
puede tomar una variable.
DIAGRAMA DE FLUJO
O diagrama de actividades es la representación gráfica del algoritmo o proceso. Se utiliza en
disciplinas como programación, economía, procesos industriales y psicología cognitiva.
En SysML el diagrama de actividades ha sido extendido para indicar flujos entre pasos que mueven
elementos físicos (p.ej., gasolina) o energía (p.ej., presión). Los cambios adicionales permiten al
diagrama soportar mejor flujos de comportamiento y datos continuos.
Estos diagramas utilizan símbolos con significados definidos que representan los pasos del
algoritmo, y representan el flujo de ejecución mediante flechas que conectan los puntos de inicio y
de fin de proceso.
Un diagrama de flujo siempre tiene un único punto de inicio y un único punto de término.
Unidad I Pag. 5
Fundamentos de Programación
• Identificar las ideas principales al ser incluidas en el diagrama de flujo. Deben estar
presentes el autor o responsable del proceso, los autores o responsables del proceso
anterior y posterior y de otros procesos interrelacionados, así como las terceras partes
interesadas.
• Definir qué se espera obtener del diagrama de flujo.
• Identificar quién lo empleará y cómo.
• Establecer el nivel de detalle requerido.
• Determinar los límites del proceso a describir.
• Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y
el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final
la entrada al proceso siguiente.
• Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso
a describir y su orden cronológico.
• Si el nivel de detalle definido incluye actividades menores, listarlas también.
• Identificar y listar los puntos de decisión.
• Construir el diagrama respetando la secuencia cronológica y asignando los
correspondientes símbolos.
• Asignar un título al diagrama y verificar que esté completo y describa con exactitud el
proceso elegido.
Los símbolos utilizados han sido normalizados por el instituto norteamericano de normalización
(ANSI)
▪ Se deben se usar solamente líneas de flujo horizontales y/o verticales.
▪ Se debe evitar el cruce de líneas utilizando los conectores.
▪ Se deben usar conectores solo cuando sea necesario.
▪ No deben quedar líneas de flujo son conectar.
▪ Se deben trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de
izquierda a derecha.
▪ Todo texto escrito dentro de un símbolo deberá ser escrito claramente, evitando el uso de
muchas palabras
Las acciones incluyen operaciones de entrada y salida, asignaciones de variables, condicionales si-
entonces o de selección múltiple, ciclos mientras, repetir o para.
Asignación
La instrucción de asignación permite almacenar un valor en una variable.
Unidad I Pag. 6
Fundamentos de Programación
Entradas y Salidas
La instrucción Leer permite ingresar información desde el ambiente.
var1,
var2,…,varN
Leer <variablel> , <variable2> , ... ,<variableN> ;
Esta instrucción lee N valores desde el ambiente (en este caso el teclado) y los asigna a las N
variables mencionadas. Pueden incluirse una o más variables, por lo tanto el comando leerá uno o
más valores.
Esta instrucción imprime al ambiente (en este caso en la pantalla) los valores obtenidos de evaluar
N expresiones. Dado que puede incluir una o más expresiones, mostrará uno o más valores.
Condicional Si-Entonces
La secuencia de instrucciones ejecutadas por la instrucción Si-Entonces-Sino depende del valor de
una condición lógica.
exp.
Lógica
Si <condición>
Entonces
<instrucciones>
Sino
<instrucciones>
FinSi
La cláusula Entonces debe aparecer siempre, pero la cláusula Sino puede no estar. En ese caso, si la
condición es falsa no se ejecuta ninguna instrucción y la ejecución del programa continúa con la
instrucción siguiente.
Selección Multiple
La secuencia de instrucciones ejecutada por una instrucción Segun depende del valor de una
variable numérica.
Unidad I Pag. 7
Fundamentos de Programación
Esta instrucción permite ejecutar opcionalmente varias acciones posibles, dependiendo del valor
almacenado en una variable de tipo numérico. Al ejecutarse, se evalúa el contenido de la variable y
se ejecuta la secuencia de instrucciones asociada con dicho valor.
Cada opción está formada por uno o más números separados por comas, dos puntos y una secuencia
de instrucciones. Si una opción incluye varios números, la secuencia de instrucciones asociada se
debe ejecutar cuando el valor de la variable es uno de esos números.
Opcionalmente, se puede agregar una opción final, denominada De Otro Modo, cuya secuencia de
instrucciones asociada se ejecutará sólo si el valor almacenado en la variable no coincide con
ninguna de las opciones anteriores.
Ciclo Mientras
La instrucción Mientras ejecuta una secuencia de instrucciones mientras una condición sea
verdadera.
Note que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar por primera
vez la condición resulta ser falsa.
Si la condición siempre es verdadera, al ejecutar esta instrucción se produce un ciclo infinito. A fin
de evitarlo, las instrucciones del cuerpo del ciclo deben contener alguna instrucción que modifique
la o las variables involucradas en la condición, de modo que ésta sea falsificada en algún momento
y así finalice la ejecución del ciclo.
Unidad I Pag. 8
Fundamentos de Programación
Ciclo Repetir
La instrucción Repetir-Hasta Que ejecuta una secuencia de instrucciones hasta que la condición sea
verdadera.
Repetir
<instrucciones>
Hasta Que <condición>
Al ejecutarse esta instrucción, la secuencia de instrucciones que forma el cuerpo del ciclo se ejecuta
una vez y luego se evalúa la condición. Si la condición es falsa, el cuerpo del ciclo se ejecuta
nuevamente y se vuelve a evaluar la condición. Esto se repite hasta que la condición sea verdadera.
Note que, dado que la condición se evalúa al final, las instrucciones del cuerpo del ciclo serán
ejecutadas al menos una vez.
Además, a fin de evitar ciclos infinitos, el cuerpo del ciclo debe contener alguna instrucción que
modifique la o las variables involucradas en la condición de modo que en algún momento la
condición sea verdadera y se finalice la ejecución del ciclo.
Ciclo Para
Para <variable> <- <inicial> Hasta <final> ( Con Paso <paso> ) Hacer
<instrucciones>
FinPara
Unidad I Pag. 9
Fundamentos de Programación
PSEUDOCODIGO
Es una descripción informal de alto nivel de un algoritmo informático de programación, compacto
e informal, que utiliza las convenciones estructurales de un lenguaje de programación verdadero,
pero que está diseñado para la lectura humana en lugar de la lectura mediante máquina, y con
independencia de cualquier otro lenguaje de programación. Normalmente, el pseudocódigo omite
detalles que no son esenciales para la comprensión humana del algoritmo, tales como declaraciones
de variables, código específico del sistema y algunas subrutinas. El lenguaje de programación se
complementa, donde sea conveniente, con descripciones detalladas en lenguaje natural, o con
notación matemática compacta. Se utiliza pseudocódigo pues este es más fácil de entender para las
personas que el código de lenguaje de programación convencional, ya que es una descripción
eficiente y con un entorno independiente de los principios fundamentales de un algoritmo.
Proceso SinTitulo
accion 1;
accion 1;
.
.
.
accion n;
FinProceso
Comienza con la palabra clave Inicio Proceso seguida del nombre del programa, luego le sigue una
secuencia de instrucciones y finaliza con la palabra Fin Proceso. Una secuencia de instrucciones es
una lista de una o más instrucciones, cada una terminada en punto y coma.
ESTRUCTURAS BASICAS
Son tres estructuras básicas de la programación estructurada.
a) Secuencia
b) Condicional
c) Iteración
Secuencial
Condicional
Iteración
Unidad I Pag. 10
Fundamentos de Programación
Una subsecuencia de instrucciones se repite varias veces de acuerdo con el estado de una condición;
puede haber dos casos:
Unidad I Pag. 11
Fundamentos de Programación
Introducción
El diseño de soluciones a la medida de nuestros problemas, requiere como en otras disciplinas una
metodología que nos enseñe de manera gradual, la forma de llegar a estas soluciones.
Para poder realizar programas, además de conocer la metodología mencionada, también debemos
de conocer, de manera específica las funciones que la computadora puede realizar y las formas en
que se pueden manejar los elementos que hay en la misma.
Unidad I Pag. 12
Fundamentos de Programación
Documentación
A menudo un programa escrito por una persona, es usado por otra. Por ello la documentación sirve
para ayudar a comprender o usar un programa o para facilitar futuras modificaciones
(mantenimiento).
Cada expresión toma un valor que se determina tomando los valores de las variables y constantes
implicadas y la ejecución de las operaciones indicadas.
Tipos de Operadores
▪ Aritméticos: Los operadores aritméticos permiten la realización de operaciones
matemáticas con los valores (variables y constantes). Pueden ser utilizados con tipos de
datos enteros o reales. Si ambos son enteros, el resultado es entero; si alguno de ellos es
real, el resultado es real. La precedencia de operadores es la siguiente:
o Todas las expresiones entre paréntesis se evalúan primero. Las expresiones con
paréntesis anidados se evalúan de dentro a fuera, el paréntesis mas interno se
evalúa primero.
o Dentro de una misma expresión los operadores se evalúan en el siguiente orden
▪ Relaciónales
o Se utilizan para establecer una relación entre dos valores.
o Compara estos valores entre si y esta comparación produce un resultado de certeza
o falsedad (verdadero o falso).
o Los operadores relaciónales comparan valores del mismo tipo (numéricos o
cadenas)
o Tienen el mismo nivel de prioridad en su evaluación.
o Los operadores relaciónales tiene menor prioridad que los aritméticos
▪ Lógicos
o Estos operadores se utilizan para establecer relaciones entre valores lógicos.
o Estos valores pueden ser resultado de una expresión relacional
Unidad I Pag. 13
Fundamentos de Programación
Identificadores
Los identificadores representan los datos de un programa (constantes, variables, tipos de datos). Un
identificador es una secuencia de caracteres que sirve para identificar una posición en la memoria
de la computadora, que nos permite accesar a su contenido.
Constantes y Variables
Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del
programa.
Operadores y Funciones
Se dispone de un conjunto básico de operadores y funciones que pueden ser utilizados para la
construcción de expresiones más o menos complejas.
Relacionales
Logicos
Aritméticos
* Multiplicación
Unidad I Pag. 14
Fundamentos de Programación
+ Suma
/ División
^ Potenciación
La jerarquía de los operadores matemáticos es igual a la del álgebra, aunque puede alterarse
mediante el uso de paréntesis.
Diagramas estructurados (Nassi−Schneiderman)
El diagrama estructurado N−S también conocido como diagrama de chapin es como un diagrama de
flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se
pueden escribir en cajas sucesivas y como en los diagramas de flujo, se pueden escribir diferentes
acciones en una caja.
El diagrama N-S cuenta con un conjunto limitado de símbolos para representar los pasos del
algoritmo, por ello se apoya en expresiones del lenguaje natural; sin embargo, dado que el lenguaje
natural es muy extenso y se presta para la ambigüedad, solo se utiliza un conjunto de palabras, a las
que se denomina palabras reservadas. Las palabras reservadas más utilizadas son:
Lógico Retornar
Estructuras secuenciales
Son aquellas que se ejecutan una después de otra. Se tienen tres tipos de instrucciones
secuenciales: la declaración de variables, asignación, instrucción Leer e instrucción Escribir.
La mayoría de algoritmos actúan sobre un conjunto de datos suministrados por el usuario y se
espera que a partir de dichos valores y desarrollando los procesos programados se genere
información de salida o resultados.
Declaración de variables
Teniendo en cuenta la compatibilidad con la mayoría de los lenguajes, se recomienda que desde el
diseño del programa se utilice una forma determinada para la declaración de las variables. Esta
consiste en escribir el tipo de datos y la lista de identificadores que se tendrán de dicho tipo,
separando cada identificador por medio de comas (,). Para mejorar la claridad de la declaración se
puede colocar dos puntos (:) para separar el tipo de datos de la lista de identificadores.
Ejemplo:
Entero: edad
Real: estatura, peso, sueldo
Cadena: nombre, dirección
Unidad I Pag. 15
Fundamentos de Programación
Aunque algunos lenguajes de programación permiten declarar las variables en el momento en que
se las necesita, es aconsejable, en favor de los buenos hábitos de programación, siempre declarar
las variables antes de utilizarlas y el sitio más adecuado es el inicio del programa o de la función.
Asignación
Asignar un valor a una variable equivale a decir que se guarda dicho valor en la posición de memoria
reservado para la variable en mención. Por lo tanto, para poder realizar una asignación es necesario
primero haber declarado una variable, con lo cual se reserva un espacio de memoria suficiente para
guardar un dato del tipo especificado.
Una expresión de asignación tiene la forma:
Variable = expresión
Donde la expresión puede estar formada por un valor, por un conjunto de valores y operadores o
por una función.
Ejemplos:
Edad = 10
Estatura = 1.80
Resultado = 2*3
Donde edad y resultado son variables de tipo entero y estatura de tipo real que se supone
declaradas previamente.
Una asignación tiene tres partes, una variable, el signo igual y la expresión cuyo valor se asigna a la
variable. La variable siempre va a la izquierda del igual, mientras que la expresión siempre estará a
la derecha.
Ejemplos:
Entero: X, Y
X = 10
Y=X*2+8
Donde “a” y “b” son las variables que recibirán los valores y que deben haberse declarado
previamente.
Instrucción Escribir
Esta instrucción permite enviar datos desde la memoria hacia un dispositivo de salida como la
pantalla o la impresora. La información que se envía puede ser constante o también el contenido
de variables.
Unidad I Pag. 16
Fundamentos de Programación
Cuando se escriben más de una variable es necesario separarlas con comas (,) y los mensajes se
escriben entre comillas dobles " ". Si una variable es escrita entre comillas se mostrará el
identificador y no el contenido.
Estructuras de decisión
Las estructuras de decisión o también llamadas de selección permiten que el algoritmo tome
decisiones y ejecute u omita algunos procesos dependiendo del cumplimiento de una condición. Se
pueden manejar tres tipos de decisiones: simple, doble y múltiple.
Una decisión cuando se tiene un curso de acción para el caso que el resultado de la comparación
sea verdadero y otro para cuando sea falso.
Decisión múltiple
Muchas decisiones deben tomarse, no solo entre dos alternativas, sino de un conjunto mayor. Estos
casos bien pueden solucionarse utilizando condicionales dobles anidados; sin embargo, en favor de
la claridad del algoritmo y la facilidad para el programador, es mejor utilizar una estructura de
decisión múltiple, la cual es fácil de llevar a un lenguaje de programación, ya que éstos incluyen
alguna instrucción con este fin.
La decisión múltiple determina el valor de una variable y dependiendo de éste sigue un curso de
acción. Es importante tener en cuenta que solo se verifica la condición de igualdad entre la variable
y la constante.
Estructuras de repetición
En la solución de algunos problemas es necesario ejecutar repetidas veces una instrucción o un
conjunto de instrucciones. En algunos casos, el número de repeticiones se conoce con anterioridad,
mientras que en otras depende de cálculos o estados de variables que se dan dentro de la solución
del problema.
Para solucionar este tipo de problemas se utiliza un tipo de estructuras a las que se conocen como
estructuras de repetición, bucles o ciclos.
Un ciclo consiste en un grupo de acciones que se ejecutan repetidas veces dependiendo del
cumplimiento de una condición.
Ciclo Mientras
Este ciclo consiste en un conjunto de instrucciones que se repiten mientras se cumpla una condición.
De igual manera que en los condicionales, la condición es evaluada y retorna un valor lógico, que
puede ser verdadero o falso. En el caso del ciclo mientras las instrucciones contenidas en la
estructura de repetición se ejecutarán solamente si al evaluar la condición se genera un valor
Unidad I Pag. 17
Fundamentos de Programación
Si en la primera pasada por el ciclo mientras la condición no se cumple las instrucciones que están
dentro del ciclo no se ejecutarán ni una sola vez.
Ciclo Para
Este ciclo, al igual que los demás, permite ejecutar repetidas veces una instrucción o un grupo de
ellas, pero a diferencia de otras instrucciones de repetición, ésta maneja el valor inicial, el valor de
incremento o decremento y el valor final de la variable de control como parte de la instrucción.
El ciclo para termina en el momento en que la variable de control (contador) sobrepasa el valor final;
es decir, que la igualdad está permitida y las instrucciones se ejecutan cuando el contador es igual
al valor final.
Este ciclo puede presentarse de tres maneras: la primera es la más común, cuando se produce un
incremento de 1 en cada iteración, en cuyo caso no es necesario escribir explícitamente.
El segundo caso de utilización del ciclo Para es cuando el incremento es diferente de 1, en cuyo caso
se escribirá la palabra incrementar seguida del valor a sumar en cada iteración.
En tercer lugar, el ciclo para no siempre se incrementa desde un valor inicial hasta un valor mayor,
puede suceder que se requiera que se disminuya desde un valor inicial alto, hasta un valor menor.
En este caso será suficiente con escribir decrementar en vez de incrementar.
Ejemplo:
Unidad I Pag. 18
Fundamentos de Programación
planteamiento del problema no se da ninguna condición que permita saber cuando terminar el ciclo.
Este tipo de problemas es muy común.
Hay dos formas de abordar este ejercicio, la primera consiste en preguntar al usuario con cuantos
números desea trabajar y guardar dicho valor en una variable que se utilizará para establecer el
ciclo. La segunda consiste en preguntar después de leer cada dato, si se desea ingresar otro. En
este ejercicio se utilizará la primera estrategia.
Procesos:
suma = suma + número
promedio = suma / cantidad de números
Diseño de la solución
Unidad I Pag. 19
Fundamentos de Programación
REFERENCIAS
http://pdf.rincondelvago.com/algoritmos.html
http://pseint.sourceforge.net/pseudocodigo.php
http://www.monografias.com/trabajos19/algoritmos/algoritmos.shtml
Unidad I Pag. 20