SlideShare una empresa de Scribd logo
1 de 90
ALGORITMOS Y LENGUAJESALGORITMOS Y LENGUAJES
DEDE
PROGRAMACIONPROGRAMACION
CAPITULO IICAPITULO II
D I S E Ñ O D E A L G O R I T M O S
ESTRUCTURAS SECUENCIALES
ESTRUCTURAS NO SECUENCIALES
Sentencias selectivas
OBJETIVOOBJETIVO
El objetivo principal de este
Capítulo es capacitar al estudiante
en los conceptos básicos de
algoritmos, que le permitan
obtener la destreza necesaria para
diseñar sus propios algoritmos.
DISEÑO DE ALGORITMOS
DISEÑO DE AGORITMOSDISEÑO DE AGORITMOS
• CONCEPTOS BASICOS
• DESCRIPCION DE ALGORITMOS
• CONSTRUCCION DE
ALGORITMOS
CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO
Un algoritmo es todo proceso, rutina ó método para resolver un
problema; mediante una secuencia finita de acciones , cada cual
con un significado concreto y cuya ejecución genera un tiempo
finito.
La ventaja del algoritmo es que el programador se puede concentrar
en la lógica del problema y en las estructuras de control del
mismo. Dejando de lado las reglas de sintaxis del lenguaje de
programación.
Algoritmo, es sinónimo de procedimiento computacional y es
fundamental para la ciencia de la computación.
CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO
PROPIEDADES:
• Finito
La ejecución de un algoritmo acaba en un tiempo finito; un
procedimiento que falla en la propiedad de la finitud es simplemente
un procedimiento de cálculo.
• Preciso
Cada instrucción de un algoritmo debe ser precisa; debe tener en
cuenta un rigor y no la ambigüedad. Cada frase tiene un significado
concreto.
CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO
PROPIEDADES:
• Posee entradas
La entrada se toma como un conjunto especifico de valores que
inicializan el algoritmo.
• Posee salidas
Todo algoritmo posee una ó más salidas; la salida es la
transformación de la entrada.
• Efectivo
Un algoritmo es efectivo cuando las operaciones se efectúan de un
modo exacto y en un tiempo finito aun usando métodos manuales.
CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO
La solución de un problema exige el diseño de un
algoritmo que resuelva el problema propuesto.
SOLUCION DE UN PROBLEMA
PROBLEMA
PROGRAMA
DE
COMPUTADORA
CONSTRUCCION
DEL
ALGORITMO
DESCRIPCIÓN DE ALGORITMOSDESCRIPCIÓN DE ALGORITMOS
Para describir un algoritmo se debe
utilizar algún método que permita
independizar dicho algoritmo del
lenguaje de programación.
• Diagramas de flujoDiagramas de flujo
• PseudoCódicoPseudoCódico
DESCRIPCIÓN DE ALGORITMOSDESCRIPCIÓN DE ALGORITMOS
Diagramas de flujoDiagramas de flujo
Es una representación detallada en
forma gráfica (mediante símbolos) de
los pasos que se realizan para la
solución de un problema unidos por
flechas, denominadas líneas de flujo,
que indican la secuencia de ejecución.
SIMBOLOS DE LOS DIAGRAMAS DE FLUJOSIMBOLOS DE LOS DIAGRAMAS DE FLUJO
INICIO - FININICIO - FIN
Este símbolo indica el comienzo y el final de un ALGORITMO
ENTRADA-SALIDAENTRADA-SALIDA
Este símbolo indica operaciones que tienen relación con los
dispositivos de entrada/salida.
PROCESOPROCESO
Este símbolo se utiliza para indicar operaciones aritméticas.
DECISIONDECISION
Este símbolo se utiliza para indicar en su interior comparaciones
de valores tales como: a = b
j < i
Estas comparaciones admiten dos salidas: verdad ó falso
SIMBOLOS DE LOS DIAGRAMAS DE FLUJOSIMBOLOS DE LOS DIAGRAMAS DE FLUJO
Líneas de flujoLíneas de flujo
Este símbolo indica la dirección del
flujo que el programa debe seguir.
La secuencia normal de lectura de un
diagrama de flujo es de arriba hacia
abajo y de izquierda a derecha.
Conector dentro de páginaConector dentro de página
Este símbolo indica la continuación de la
dirección del flujo dentro de la misma
SIMBOLOS DE LOS DIAGRAMAS DE FLUJOSIMBOLOS DE LOS DIAGRAMAS DE FLUJO
Conector fuera de páginaConector fuera de página
Este símbolo indica la continuación de la dirección
del flujo de una página a otra. Tiene la misma
misión que el anterior, pero este conector se utiliza
cuando las partes a enlazar se encuentran en
distinta página.
Ciclo repetitivoCiclo repetitivo
Este símbolo se utiliza para
indicar procesos repetitivos
PSEUDOCÓDIGOPSEUDOCÓDIGO
Es la descripción de un algoritmo
mediante una secuencia lógica de
acciones, que en su conjunto forman la
solución del problema, utilizando
generalmente palabras reservadas para
representar las acciones.
PSEUDOCÓDIGOPSEUDOCÓDIGO
Para desarrollar los PseudoCódigos se utilizará
el Entorno de Desarrollo Integrado PseInt, que es un
lenguaje de programación imperativa simple y escrito
en castellano.
Es decir, PseInt es un editor e intérprete de programas
escritos en PseudoCódigo. Su interfaz gráfica permite
crear, almacenar, ejecutar y corregir fácilmente los
programas en PseudoCódigo.
PSEUDOCÓDIGOPSEUDOCÓDIGO
La sencillez del lenguaje PseudoCódigo lo
hacen ideal para la enseñanza de la
programación.
Permitiendo el uso de valores numéricos,
números decimales, lógicos, caracteres y
arreglos.
Provee también funciones de entrada/salida y
Funciones matemáticas.
PSEUDOCÓDIGOPSEUDOCÓDIGO
Estructura de un Programa
Proceso <nombre>
<secuencia de instrucciones>
FinProceso
Donde una secuencia de instrucciones es una lista de
una o más instrucciones, cada una terminada en punto
y coma. <instrucción>; <instrucción>; ...
Las palabras y símbolos que
pertenecen al pseudocódigo se
escriben tal como deben ir, por
ejemplo: Proceso; a diferencia de
los nombres de variables y otros
símbolos y expresiones que
pueden variar.
PSEUDOCÓDIGOPSEUDOCÓDIGO
PSEUDOCÓDIGOPSEUDOCÓDIGO
Se pueden introducir comentarios
luego de una instrucción, o en
líneas separadas, mediante el uso
de la doble barra ( // ).
Todo lo que precede a //, hasta el
fin de la línea, no será tomado en
cuenta al interpretar el algoritmo.
PSEUDOCÓDIGOPSEUDOCÓDIGO
IDENTIFICADORES
Los Identificadores son palabras
definidas por el programador para
identificar variables.
Identificador, o nombre de variable, debe
constar sólo de letras y números,
comenzando siempre por una letra.
PSEUDOCÓDIGOPSEUDOCÓDIGO
TIPO DE DATOS
a) Tipos Simples:
Numérica, números enteros y decimales,
se usa el punto para separar los
decimales.
Carácter caracteres o cadena de caracteres
se escribe entre comillas (“ “) ó (‘ ‘)
Lógicas toma dos valores: Verdadero ó Falso
b) Estructura de Datos: Arreglos
PSEUDOCÓDIGOPSEUDOCÓDIGO
PALABRAS RESERVADAS
Las palabras reservadas no llevan acento.
Leer , Escribir , Dimension
Si-Entonces-Sino, Segun
Mientras Hacer, Repetir Hasta Que, Para
ESTRUCTURAS SECUENCIALES
Las estructuras secuenciales están formadas por las
siguientes instrucciones:
 Leer Entrada de datos
 Escribir Salida de Resultados
 Asignación Almacena un valor en una variable
PSEUDOCÓDIGOPSEUDOCÓDIGO
ESTRUCTURA SECUENCIAL
La entrada de datos
Definida por la Instrucción Leer que permite el
ingreso de datos al algoritmo desde el teclado.
Leer <variable1>,<variable2>,….,
<variableN>;
Leer Numero;
PSEUDOCÓDIGOPSEUDOCÓDIGO
ESTRUCTURAS SECUENCIALES
La salida de Resultados
Definida por la Instrucción Escribir y permite mostrar
resultados en la pantalla.
Escribir <expr1> , <expr2> , ... ,
<exprN> ;
Escribir "Ingrese el nombre:";
Escribir "Resultado:" , x*2 ;
PSEUDOCÓDIGOPSEUDOCÓDIGO
ESTRUCTURA SECUENCIAL
Asignación
La Instrucción de Asignación permite almacenar
un valor en una variable.
<variable> 
<expresión> ;
PSEUDOCÓDIGOPSEUDOCÓDIGO
Para ejecutarse la asignación, primero se
evalúa la expresión de la derecha y luego se
asigna el resultado a la variable de la izquierda.
El tipo de la variable y el de la expresión deben
coincidir.
n  1; // asigna el número 1 a n
suma  suma + 1; // incrementa el valor
de
PSEUDOCÓDIGOPSEUDOCÓDIGO
PSEUDOCÓDIGOPSEUDOCÓDIGO
Sentencia de Asignación
Ejemplo de sentencia de asignación:
a  5
suma  ( 2 + 3 ) * X + T + Z
La jerarquía de los operadores matemáticos es igual
a la del algebra, aunque puede alterarse con el uso
de paréntesis.
PSEUDOCÓDIGOPSEUDOCÓDIGO
Como ejemplos de sentencias de asignación podemos
mencionar:
Velocidad  (distancia/(minuto*60+segundo+c/100))
Numero  u + 100 + d+10 + c
AT  (s+(s-1) + (s-2) + (s-3))^2
Sentencia de Asignación
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones
Las expresiones son combinaciones (asociaciones) de
datos con operadores.
a  3
b  5 a + b – 7
Cada expresión toma un valor que se determina al
evaluar la expresión, el valor puede ser de tipo:
numérico, lógico y carácter.
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones
De acuerdo a los tipos de datos que se manipulan en
las expresiones pueden ser:
Expresiones aritméticas (devuelve un número)
Expresiones lógicas (devuelve un valor lógico)
Expresiones de carácter (devuelve un carácter)
.
suma  a + b – 3 (expresión aritmética)
PSEUDOCÓDIGOPSEUDOCÓDIGO
Tipos de Operadores
Un operador indica el tipo de operación a realizar
sobre los datos.
Los operadores se clasifican en:
Operadores Aritméticos
Operadores relacionales
Operadores lógicos.
En las expresiones aritméticas se utilizan los
siguientes operadores aritméticos:
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Aritméticas
Operador Acción Ejemplo Resultado
- Resta 5 – 2 3
+ Suma 2 + 3 5
* Multiplicación 4 * 5 20
/ División 9 / 3 3
^ Potencia 5 ^ 2 25
Los operadores aritméticos nos permiten, básicamente,
hacer cualquier operación aritmética (suma, resta,
multiplicación y división)
- 3 * 6/3 resultado - 6
- 3 * (6/2) resultado - 9
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Aritméticas
Las expresiones lógicas son asociaciones de datos con
operadores relacionales y de su evaluación siempre se
obtiene un valor de tipo lógico (verdadero o falso).
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Lógicas
> Mayor que 5 > 3
>= Mayor o igual que a >= b
< Menor que 2 < 4
<= Menor o igual que a <= b
= Igual que m = n
<> Distinto que 3 <>2
Operador Relacional Acción Ejemplo
El operador conjunción (y) y el operador disyunción (o)
siempre actúan sobre dos operandos, mientras que, el
operador negación (no) sólo actúa sobre un operando.
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Lógicas
Operadores
Lógicos Acción Ejemplo
& Conjunción ( y ) (5>3) & (5=1) // falso
| Disyunción ( 0 ) (7=7) | (4>9) // verdadero.
NO Negación (no) NO (4=4) // falso
Los operadores lógicos producen un resultado booleano, y
sus operandos son también valores lógicos.
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Lógicas
Operadores Lógicos Acción Ejemplo
Y Conjunción (5>2) Y (4>1)
O Disyunción (2=2) O (a=b)
NO Negación No (9>3)
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Lógicas
Tabla de verdad del operador Y:
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Lógicas
Tabla de verdad del operador O:
PSEUDOCÓDIGOPSEUDOCÓDIGO
Expresiones Lógicas
Tabla de verdad del operador negación (no):
Evaluar :
no ( 9 > 5 ) se obtiene como resultado falso
PSEUDOCÓDIGOPSEUDOCÓDIGO
Prioridad de los operadores
Prioridad de los Operador, aritméticos, relacionales y lógicos
( ) Paréntesis
.
^ Potencia
* , / , NO Multiplicación, división y negación
.
+ , - , Y Signo más, signo menos y conjunción
>, <, >=, <=, <>, = , O Mayor que, menor que, mayor igual que,
menor igual que, igual que, distinto que y
disyunción
Funciones Matemáticas
FUNCIÓN SIGNIFICADO
RC(X) Raíz Cuadrada de X
ABS(X) Valor Absoluto de X
LN(X) Logaritmo Natural de X
EXP(X) Función Exponencial de X
SEN(X) Seno de X
COS(X) Coseno de X
ATAN(X) Arcotangente de X
TRUNC(X) Parte entera de X
REDON(X) Entero más cercano a X
La función raíz cuadrada no debe recibir un argumento
negativo. La función exponencial no debe recibir un
argumento menor o igual a cero.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema1
Leer a , b;
Escribir "a = ", a;
Escribir "b = ", b;
suma <- a + b;
resta <- a -b;
multiplica <- a*b;
dividir <- a/b;
Escribir "suma = " , suma;
Escribir "resta = " , resta;
Escribir "multiplica = ", multiplica;
Escribir "dividir = ", dividir;
FinProceso
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA N° 2
Leer el radio de un circulo y calcular e imprimir su superficie y la
longitud de la circunferencia.
Proceso Problema2
pi<-3.1416;
Leer radio;
Superficie <- pi * radio^2 ;
Circunferencia <- 2 * pi * radio;
Escribir "Radio", radio;
Escribir "Superficie", superficie;
Escribir "Circunferencia", circunferencia;
FinProceso
PSEUDOCÓDIGOPSEUDOCÓDIGO
PROBLEMA N°3 2
Calcular las raíces reales de una ecuación cuadrática ax + bx + c = 0
Proceso problema3
Escribir "introdusca las variables a, b y c";
Leer a, b, c;
x1<-(-b+RC((b^2)-(4*a*c))/(2*a));
x2<-(-b-RC((b^2)-(4*a*c))/(2*a));
Escribir "las raices son: ", x1, x2;
FinProceso
ESTRUCTURAS NO SECUENCIALES
SENTENCIAS SELECTIVAS:
Selección Simple Si-Entonces
Selección Doble Si-Entonces-Sino
Sentencia Múltiple Segun
SENTENCIAS REPETITIVAS:
Mientras Hacer
Repetir _ Hasta_Que
Para
PSEUDOCÓDIGOPSEUDOCÓDIGO
Se utiliza cuando en el desarrollo de la solución de
un problema debemos tomar una decisión, para
seleccionar una alternativo a seguir.
La toma de decisión se basa en la evaluación de
una o más condiciones que nos permitan
seleccionar una alternativa de solución al problema
planteado.
PSEUDOCÓDIGOPSEUDOCÓDIGO
SENTENCIAS DE SELECCION
PSEUDOCÓDIGOPSEUDOCÓDIGO
a) SELECCION SIMPLE :
Si <condición> Entonces
Sentencia ejecutada si la condición es verdad
finSi
Si ( nota > = 10 ) Entonces
Escribir ( “ingreso”)
fin Si
Si-Entonces
Consiste en evaluar una condición; si el resultado de
dicha evaluación es Verdad, se ejecuta la sentencia por
verdad y termina la estructura.
INICIO CondiciónCondición
n
FIN
V
F
La sentencia condicional o selectiva evalúa
una CONDICION (expresión lógica)
PSEUDOCÓDIGOPSEUDOCÓDIGO
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA N° 4
Escribir un algoritmo que lea los
datos: a , b y calcule e imprimir
la suma, la resta, la
multiplicación y la división de
ellos.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema4
Leer a, b;
suma<- a+b;
resta<- a-b;
multiplica <- a*b;
Si b>0 Entonces
division <- a/b;
FinSi
Escribir "suma = ", suma;
Escribir "resta = ", resta;
Escribir "multiplica = ", multiplica;
Escribir "division = ", division;
FinProceso
La sentencia de selección doble nos permite tomar
decisiones entre dos alternativas luego de evaluar una
condición (expresión lógica).
Si <condición>
Entonces
<instrucciones>
Sino
<instrucciones>
Finsi
PSEUDOCÓDIGOPSEUDOCÓDIGO
b) SELECCION
DOBLE :
Si-Entonces-Sino
PSEUDOCÓDIGOPSEUDOCÓDIGO
INICIO CondiciónCondición
Sentencia
por VerdadV
Sentencia
por Falso
F
FIN
Si - Entonces - Sino
Si ( nota > = 10 )
Entonces
Escribir ( “ingreso”)
Sino
Escribir(“no-ingreso”)
Finsi
b) SENTENCIA DE SELECCIÓN DOBLE :
La sentencia de selección doble evalúa una condición e
implica la selección de una de dos alternativas.
PSEUDOCÓDIGOPSEUDOCÓDIGO
IS Sentencia 1
Sentencia 2
Sentencia 3
Sentencia 4
Sentencia 5Sino
CONDICIÓN
ES
VERDAD
PSEUDOCÓDIGOPSEUDOCÓDIGO
PROBLEMA N° 5
Escribir un algoritmo que lea tres números enteros positivos a, b y c
e imprima el mayor de ellos.
INICIO
Mayor aMayor b
a, b ,c
a, b, c
Mayor
FIN
a>b
NO SI
c > Mayor Mayor c
si
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema5
Leer a, b, c;
Si a > b Entonces mayor <- a;
Sino mayor <- b;
FinSi
Si c > mayor Entonces mayor <- c;
Finsi
Escribir "a = ", a;
Escribir "b = ", b;
Escribir "c = ", c;
Escribir "mayor = ", mayor;
FinProceso
Es posible utilizar la sentencia Si para diseñar
estructuras de selección con más de dos alternativas.
Una estructura de selección de n
alternativas puede ser construida utilizando
una estructura Si .
Las estructuras Si interiores a otras estructuras Si se
denominan anidadas o encajadas. Debe existir una
correspondencia entre las palabras reservadas Si y
Finsi.
PSEUDOCÓDIGOPSEUDOCÓDIGO
PSEUDOCÓDIGOPSEUDOCÓDIGO
SENTENCIA DE SELECCIÓN ANIDADASSENTENCIA DE SELECCIÓN ANIDADAS
SiSi (condición1) Entonces <instruccion1>
Sino
SiSi (condición2) Entonces <instrucción2>
Sino
SiSi (condición3) Entonces
<instruccion3>
Finsi
c) SENTENCIA DE SELECCIÓN MULTIPLE
La sentencia de selección múltiple, se usa para
seleccionar una de varias alternativas.
PSEUDOCÓDIGOPSEUDOCÓDIGO
Sentencia 4
Sentencia 5
VALOR
DE
VARIABLE
Según sea
Sentencia 1
Sentencia 2
Sentencia 3
INICIO SELECTORSELECTOR
sentencia 1
1
sentencia N
N
sentencia 2
C) SELECCION MULTIPLE
SENTENCIA Segun
2
ACCION Z
FIN
PSEUDOCÓDIGOPSEUDOCÓDIGO
La selección Múltiple se utiliza
cuando existen más de dos alternativas
para la selección de una alternativa.
El selector puede ser una variable simple
o una expresión simple denominada
expresión de control.
C) SELECCION MULTIPLE: SENTENCIA Segun
PSEUDOCÓDIGOPSEUDOCÓDIGO
Segun variable_numerica Hacer
opcion_1:
secuencia_de_acciones_1
opcion_2:
secuencia_de_acciones_2
opcion_3:
secuencia_de_acciones_3
De Otro Modo:
secuencia_de_acciones_dom
FinSegun
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema6
leer n1, n2;
leer opcion;
segun opcion Hacer
1: suma <- n1 + n2;
Escribir "suma = ", suma;
2: resta <- n1 - n2;
Escribir "resta = ", resta;
3: multiplica <- n1*n2;
Escribir "multiplica = ", multiplica;
4: divide <- n1/n2;
Escribir "divide = ", divide;
5: potencia <- n1^n2;
Escribir "potencia = ", potencia;
De Otro Modo:
Escribir "Numero no Definido" ;
FinSegun
FinProceso
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA Nº 7
Diseñar un algoritmo que lea un entero
positivo n y realice las siguientes cálculos:
Si N termina en 0 se cambia por el doble
Si N termina en 3 se cambia por la décima
parte
De otro modo matiene su valor inicial
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema7
Leer n;
Segun n mod 10 Hacer
0: n <- n*2;
Escribir "Doble de N = ", n;
3: n <- n/10;
Escribir "Decima parte de N = ", n;
De Otro Modo:
n <- n;
Escribir "Numero N = ", n ;
FinSegun
FinProceso
ALGORITMOS Y LENGUAJESALGORITMOS Y LENGUAJES
DEDE
PROGRAMACIONPROGRAMACION
CAPITULO IICAPITULO II
ESTRUCTURAS NO SECUENCIALES
Sentencias Repetitivas
Muchos problemas requieren una
capacidad de repetición en la cual el
mismo cálculo o secuencia de
sentencias se repita, una y otra vez,
usando diferentes conjuntos de
datos.
SENTENCIAS REPETITIVAS
PSEUDOCÓDIGOPSEUDOCÓDIGO
Los casos de repetición incluyen la
verificación continua de las entradas de
datos del usuario hasta que se ingrese, una
contraseña válida; contar y acumular totales;
y la aceptación constante de datos de
entrada y el recálculo de valores de salida
que sólo se detiene al ingresar un valor
centinela.
SENTENCIAS REPETITIVAS
PSEUDOCÓDIGOPSEUDOCÓDIGO
La secuencia de sentencias que se repiten
en la solución de un problema se conoce
como ciclo, porque después que se ejecuta
la última sentencia del ciclo, se regresa, a
la primera sentencia de la sección y
comienza otra repetición a través de la
sección repetitiva.
SENTENCIAS REPETITIVAS
PSEUDOCÓDIGOPSEUDOCÓDIGO
Para las estructuras repetitivas se utilizan dos tipos
especiales de variables:
Contadores:
Son variables que incrementan o disminuyen su valor
en una cantidad constante, la misma que debe
inicializarse en un valor constante.
PSEUDOCÓDIGOPSEUDOCÓDIGO
contador  1;
contador  contador +1;
Acumuladores:
Son variables que se usan para incrementar o
disminuyen su valor en una cantidad variable,
deben ser inicializados su valor.
suma  0 ;
suma  suma + n ;
PSEUDOCÓDIGOPSEUDOCÓDIGO
En general, existen tres formas de
representar las sentencias repetitivas:
• Mientras HacerMientras Hacer
• Repetir Hasta QueRepetir Hasta Que
• Para.Para.
SENTENCIAS REPETITIVAS
PSEUDOCÓDIGOPSEUDOCÓDIGO
Mientras (Condición) Hacer
Sentencia (s)
FinMientras
( condición )( condición )
PROCESO:
secuencia de sentencias
FIN
V
F
PSEUDOCODIGO
CICLOS CONTROLADOS
EN LA ENTRADA
a) SENTENCIA REPETIR : MIENTRAS HACER
C
I
C
L
O
PSEUDOCODIGO
Una sentencia Mientras contiene una condición que controla
la ejecución de un proceso formado por una o más sentencias,
dicho proceso se ejecutará repetidamente si la
condición es verdad.
La condición contenida dentro del paréntesis es la
condición evaluada para determinar si se ejecuta la
sentencia que sigue a la condición evaluada.
a) SENTENCIA REPETIR : MIENTRAS HACER
PSEUDOCODIGO
a) SENTENCIA REPETIR : MIENTRAS HACER
i). La repetición condicional de cero ciclos
Si la primera evaluación de la condición es falsa, entonces la repetición
nunca se ejecutará.
ii) Repetición indefinida de la secuencia de sentencias.
La repetición indefinida que nunca se termina se denomina ciclo indefinido o sin fin,
para evitar dichos ciclos indefinidos se debe estipularse una
SENTENCIA
que permita alterar el valor de la expresión probada en la sección
repetitivo.
iii) Finalización de bucles con datos de entrada.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA N°8
Escribir un algoritmo que
lea un número enteros
positivos “n” y luego
imprima su factorial.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema8
Leer n;
minumero <- n;
fact <- 1;
MIENTRAS n > 0 Hacer
fact <- fact * n;
n <- n - 1;
FinMientras
Escribir "El factorial de n es: " , fact;
Repetir
Secuencia de sentencias
HASTAQUE (condición) sea verdad
INICIO
( condición )( condición )
PROCESO:
secuencia
de
sentencias
V
F
FIN
PSEUDOCODIGO
CICLO CONTROLADO A LA
SALIDA
b) SENTENCIA REPETIR : HASTA QUE
La sentencia HASTA QUE
Ejecuta una secuencia de instrucciones
hasta que la condición sea verdad.
C
I
C
L
O
PSEUDOCODIGO
La condición es una expresión, el valor que representa
sólo puede ser verdadero o falso.
Se repite una secuencia de sentencias HASTA QUE la
condición tome un valor de verdad.
El ciclo se ejecuta por lo menos una vez porque la
condición se evalúa después de la ejecución de cada
iteración.
b) SENTENCIA REPETIR HASTA QUE
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA N°9
Diseñar un algoritmo que
permita calcular la suma
acumulada de la serie :
1+2+3+4+….+n
El usuario ingresa el numero
de términos a sumar.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema9
Leer n;
cont <- 1;
suma <- 0;
Repetir
suma <- suma + cont;
cont <- cont + 1;
Hasta Que ( n < cont )
Escribir " La suma es:" , suma ;
FinProceso
INICIO
PROCESO
F
V
FIN
Para Vc=Vi hasta Vf Inc
PSEUDOCODIGO
c) SENTENCIA REPETITIVA:
PARA
c
i
c
l
o
La sentencia PARA
se utiliza para
implementar un ciclo
que se repite un
número definido de
veces.
Donde:
Vc: variable de control
Vi: valor inicial
Vf: valor final
Inc: incremento
Para Vc = Vi hasta Vf (con Inc) Hacer
sentencia1
sentencia2
sentencia3
FinPara
PSEUDOCODIGO
c) SENTENCIA REPETITIVA : PARA
c
I
c
l
o
F
PSEUDOCODIGO
c) SENTENCIA REPETIR - PARA
La sentencia Para tiene los siguientes elementos:
Vc: es la variable de control de la estructura repetitiva y
actúa como un contador.
Vi: es el valor inicial que inicializa la variable de control
(número de repeticiones) de la estructura repetitiva.
Inc: es el elemento de incremento que aumenta o
disminuye la variable de control (contador) cada vez
que se ejecuta el ciclo.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA N° 10
Escribir un algoritmo que lea un
número enteros positivos “n” y
luego
imprima su factorial.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
Proceso Problema10
Leer n;
factorial <- 1;
Para i <- 1 hasta n Hacer
factorial<- factorial * i;
FinPara
Escribir " El Factorial de N es = ", factorial ;
FinProceso
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
** Ejecución Iniciada. ***
5
El Factorial de N es = 120
** Ejecución Finalizada. ***
F
PSEUDOCODIGO
c) SENTENCIA REPETIR PARA
Los CICLOS ANIDADOS son utilizados cuando un ciclo
Para interior esta contenido dentro de otro ciclo exterior.
Para i 1 hasta 5 // inicio del ciclo exterior
Escribir “i toma el valor de”, i;
Para j  1 hasta 4 // inicio del ciclo interior* j
Escribir “ j = “, j ;
FinPara
Finpara // fin del ciclo exterior *i
F
PSEUDOCODIGO
c) SENTENCIA REPETIR PARA
La salida del algoritmo sería la siguiente:
i toma el valor de 1 // ciclo exterior
j = 1, j = 2, j = 3, j = 4 // ciclo interior j
i toma el valor de 2
j = 1, j = 2, j = 3, j = 4 // ciclo interior j
ESTRUCTURAS REPETITIVAS ANIDADAS
Es posible insertar un bucle dentro de otro. La estructura interna
debe estar incluida totalmente dentro de la externa y no puede
existir solapamiento.
BUCLE ANIDADO
CORRECTAMENTE
BUCLE ANIDADO
INCORRECTAMENTE
PSEUDOCÓDIGOPSEUDOCÓDIGO
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA N° 11
Diseñar un programa que permita
determinar el promedio de tres
prácticas luego de eliminar la
menor nota.
CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS
PROBLEMA N°12
Escribir un algoritmo que lea un
número compuesto por más un
dígito y luego muestre:
total de dígitos,
total de dígitos pares e impares,
número invertido,
total de suma de dígitos pares e
impares respectivamente.

Más contenido relacionado

La actualidad más candente

Presentacion Pseint
Presentacion PseintPresentacion Pseint
Presentacion Pseint
egalindo1104
 
Taller realizado por aldo estrada con pseint
Taller realizado por aldo estrada con pseintTaller realizado por aldo estrada con pseint
Taller realizado por aldo estrada con pseint
Aldo Estrada Torres
 
Estructuras de Lenguaje .NET
Estructuras de Lenguaje .NETEstructuras de Lenguaje .NET
Estructuras de Lenguaje .NET
brobelo
 
Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)
Karlos Valladares
 
Ejercicios Whule y Do While
Ejercicios Whule y Do WhileEjercicios Whule y Do While
Ejercicios Whule y Do While
Joshe Varillas
 

La actualidad más candente (20)

Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuenciales
 
Ppt algoritmo
Ppt algoritmoPpt algoritmo
Ppt algoritmo
 
Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
 
diapositivas algoritmos
diapositivas algoritmos diapositivas algoritmos
diapositivas algoritmos
 
Estructura de Lenguaje C++
Estructura de Lenguaje C++Estructura de Lenguaje C++
Estructura de Lenguaje C++
 
Presentacion Pseint
Presentacion PseintPresentacion Pseint
Presentacion Pseint
 
Ejercicios resueltos de c++
Ejercicios resueltos de c++Ejercicios resueltos de c++
Ejercicios resueltos de c++
 
Taller realizado por aldo estrada con pseint
Taller realizado por aldo estrada con pseintTaller realizado por aldo estrada con pseint
Taller realizado por aldo estrada con pseint
 
Greenfoot 8
Greenfoot 8Greenfoot 8
Greenfoot 8
 
Estructuras de Lenguaje .NET
Estructuras de Lenguaje .NETEstructuras de Lenguaje .NET
Estructuras de Lenguaje .NET
 
Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)
 
Manual dfd
Manual dfdManual dfd
Manual dfd
 
Ejercicios Whule y Do While
Ejercicios Whule y Do WhileEjercicios Whule y Do While
Ejercicios Whule y Do While
 
algoritmos-.ppt
algoritmos-.pptalgoritmos-.ppt
algoritmos-.ppt
 
Arquitectura de Computadores - Laboratorios 1,2 y 3 - UNAD
Arquitectura de Computadores - Laboratorios 1,2 y 3 - UNADArquitectura de Computadores - Laboratorios 1,2 y 3 - UNAD
Arquitectura de Computadores - Laboratorios 1,2 y 3 - UNAD
 
Pseint
PseintPseint
Pseint
 
Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
C++ Language
C++ LanguageC++ Language
C++ Language
 
Funciones de estadisticas
Funciones de estadisticasFunciones de estadisticas
Funciones de estadisticas
 

Similar a Lenguaje Borland C - Estructuras Secuenciales y No Secuenciales

INTRODUCCION A LA PROGRAMACION.pptx
INTRODUCCION A LA PROGRAMACION.pptxINTRODUCCION A LA PROGRAMACION.pptx
INTRODUCCION A LA PROGRAMACION.pptx
GASY060730
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2
Noé AG
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
EberCV1
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
EberCV1
 
Bloque 1 guia informatica II
Bloque 1 guia informatica IIBloque 1 guia informatica II
Bloque 1 guia informatica II
Noe Altamirano
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
neyvajms
 
Diapositiva del chino listo
Diapositiva del chino listoDiapositiva del chino listo
Diapositiva del chino listo
chinonegro1721
 

Similar a Lenguaje Borland C - Estructuras Secuenciales y No Secuenciales (20)

Clase 02
Clase 02Clase 02
Clase 02
 
BORLAND
BORLANDBORLAND
BORLAND
 
Apartes De Algoritmos
Apartes De AlgoritmosApartes De Algoritmos
Apartes De Algoritmos
 
Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmo
 
INTRODUCCION A LA PROGRAMACION.pptx
INTRODUCCION A LA PROGRAMACION.pptxINTRODUCCION A LA PROGRAMACION.pptx
INTRODUCCION A LA PROGRAMACION.pptx
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programa
 
Algoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxAlgoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptx
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
 
Bloque 1 guia informatica II
Bloque 1 guia informatica IIBloque 1 guia informatica II
Bloque 1 guia informatica II
 
Bloque i guia informatica ii
Bloque i guia informatica iiBloque i guia informatica ii
Bloque i guia informatica ii
 
Tecnicatura en programacion
Tecnicatura en programacionTecnicatura en programacion
Tecnicatura en programacion
 
Tecnicatura en programacion
Tecnicatura en programacionTecnicatura en programacion
Tecnicatura en programacion
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
 
Diapositiva del chino listo
Diapositiva del chino listoDiapositiva del chino listo
Diapositiva del chino listo
 
Clase 2
Clase 2Clase 2
Clase 2
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadora
 

Último

Catalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmgCatalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmg
dostorosmg
 
CRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docx
CRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docxCRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docx
CRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docx
geuster2
 
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
i7ingenieria
 
GUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docxGUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docx
AmyKleisinger
 
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
Evafabi
 
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxCARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
WILIANREATEGUI
 

Último (20)

Catalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmgCatalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmg
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industral
 
CORRIENTES DEL PENSAMIENTO ECONÓMICO.pptx
CORRIENTES DEL PENSAMIENTO ECONÓMICO.pptxCORRIENTES DEL PENSAMIENTO ECONÓMICO.pptx
CORRIENTES DEL PENSAMIENTO ECONÓMICO.pptx
 
CONSTITUCIÓN POLÍTICA DEL PERÚ al 25082023.pdf
CONSTITUCIÓN POLÍTICA DEL PERÚ al 25082023.pdfCONSTITUCIÓN POLÍTICA DEL PERÚ al 25082023.pdf
CONSTITUCIÓN POLÍTICA DEL PERÚ al 25082023.pdf
 
Reporte Tributario para Entidades Financieras.pdf
Reporte Tributario para Entidades Financieras.pdfReporte Tributario para Entidades Financieras.pdf
Reporte Tributario para Entidades Financieras.pdf
 
Correcion del libro al medio hay sitio.pptx
Correcion del libro al medio hay sitio.pptxCorrecion del libro al medio hay sitio.pptx
Correcion del libro al medio hay sitio.pptx
 
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
 
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
 
Manual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformesManual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformes
 
CRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docx
CRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docxCRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docx
CRITERIOS DE EVALUACIÓN - NIVEL INICIAL.docx
 
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxSostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
 
Presentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdfPresentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdf
 
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
 
GUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docxGUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docx
 
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBREDISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
 
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
 
CAMBIO DE USO DE SUELO LO BARNECHEA - VITACURA - HUECHURABA
CAMBIO DE USO DE SUELO LO BARNECHEA - VITACURA - HUECHURABACAMBIO DE USO DE SUELO LO BARNECHEA - VITACURA - HUECHURABA
CAMBIO DE USO DE SUELO LO BARNECHEA - VITACURA - HUECHURABA
 
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxCARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
 
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADADECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
 
Contabilidad Gubernamental guia contable
Contabilidad Gubernamental guia contableContabilidad Gubernamental guia contable
Contabilidad Gubernamental guia contable
 

Lenguaje Borland C - Estructuras Secuenciales y No Secuenciales

  • 1. ALGORITMOS Y LENGUAJESALGORITMOS Y LENGUAJES DEDE PROGRAMACIONPROGRAMACION CAPITULO IICAPITULO II D I S E Ñ O D E A L G O R I T M O S ESTRUCTURAS SECUENCIALES ESTRUCTURAS NO SECUENCIALES Sentencias selectivas
  • 2. OBJETIVOOBJETIVO El objetivo principal de este Capítulo es capacitar al estudiante en los conceptos básicos de algoritmos, que le permitan obtener la destreza necesaria para diseñar sus propios algoritmos. DISEÑO DE ALGORITMOS
  • 3. DISEÑO DE AGORITMOSDISEÑO DE AGORITMOS • CONCEPTOS BASICOS • DESCRIPCION DE ALGORITMOS • CONSTRUCCION DE ALGORITMOS
  • 4. CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO Un algoritmo es todo proceso, rutina ó método para resolver un problema; mediante una secuencia finita de acciones , cada cual con un significado concreto y cuya ejecución genera un tiempo finito. La ventaja del algoritmo es que el programador se puede concentrar en la lógica del problema y en las estructuras de control del mismo. Dejando de lado las reglas de sintaxis del lenguaje de programación. Algoritmo, es sinónimo de procedimiento computacional y es fundamental para la ciencia de la computación.
  • 5. CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO PROPIEDADES: • Finito La ejecución de un algoritmo acaba en un tiempo finito; un procedimiento que falla en la propiedad de la finitud es simplemente un procedimiento de cálculo. • Preciso Cada instrucción de un algoritmo debe ser precisa; debe tener en cuenta un rigor y no la ambigüedad. Cada frase tiene un significado concreto.
  • 6. CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO PROPIEDADES: • Posee entradas La entrada se toma como un conjunto especifico de valores que inicializan el algoritmo. • Posee salidas Todo algoritmo posee una ó más salidas; la salida es la transformación de la entrada. • Efectivo Un algoritmo es efectivo cuando las operaciones se efectúan de un modo exacto y en un tiempo finito aun usando métodos manuales.
  • 7. CONCEPTOS BASICOS DE ALGORITMOCONCEPTOS BASICOS DE ALGORITMO La solución de un problema exige el diseño de un algoritmo que resuelva el problema propuesto. SOLUCION DE UN PROBLEMA PROBLEMA PROGRAMA DE COMPUTADORA CONSTRUCCION DEL ALGORITMO
  • 8. DESCRIPCIÓN DE ALGORITMOSDESCRIPCIÓN DE ALGORITMOS Para describir un algoritmo se debe utilizar algún método que permita independizar dicho algoritmo del lenguaje de programación. • Diagramas de flujoDiagramas de flujo • PseudoCódicoPseudoCódico
  • 9. DESCRIPCIÓN DE ALGORITMOSDESCRIPCIÓN DE ALGORITMOS Diagramas de flujoDiagramas de flujo Es una representación detallada en forma gráfica (mediante símbolos) de los pasos que se realizan para la solución de un problema unidos por flechas, denominadas líneas de flujo, que indican la secuencia de ejecución.
  • 10. SIMBOLOS DE LOS DIAGRAMAS DE FLUJOSIMBOLOS DE LOS DIAGRAMAS DE FLUJO INICIO - FININICIO - FIN Este símbolo indica el comienzo y el final de un ALGORITMO ENTRADA-SALIDAENTRADA-SALIDA Este símbolo indica operaciones que tienen relación con los dispositivos de entrada/salida. PROCESOPROCESO Este símbolo se utiliza para indicar operaciones aritméticas. DECISIONDECISION Este símbolo se utiliza para indicar en su interior comparaciones de valores tales como: a = b j < i Estas comparaciones admiten dos salidas: verdad ó falso
  • 11. SIMBOLOS DE LOS DIAGRAMAS DE FLUJOSIMBOLOS DE LOS DIAGRAMAS DE FLUJO Líneas de flujoLíneas de flujo Este símbolo indica la dirección del flujo que el programa debe seguir. La secuencia normal de lectura de un diagrama de flujo es de arriba hacia abajo y de izquierda a derecha. Conector dentro de páginaConector dentro de página Este símbolo indica la continuación de la dirección del flujo dentro de la misma
  • 12. SIMBOLOS DE LOS DIAGRAMAS DE FLUJOSIMBOLOS DE LOS DIAGRAMAS DE FLUJO Conector fuera de páginaConector fuera de página Este símbolo indica la continuación de la dirección del flujo de una página a otra. Tiene la misma misión que el anterior, pero este conector se utiliza cuando las partes a enlazar se encuentran en distinta página. Ciclo repetitivoCiclo repetitivo Este símbolo se utiliza para indicar procesos repetitivos
  • 13. PSEUDOCÓDIGOPSEUDOCÓDIGO Es la descripción de un algoritmo mediante una secuencia lógica de acciones, que en su conjunto forman la solución del problema, utilizando generalmente palabras reservadas para representar las acciones.
  • 14. PSEUDOCÓDIGOPSEUDOCÓDIGO Para desarrollar los PseudoCódigos se utilizará el Entorno de Desarrollo Integrado PseInt, que es un lenguaje de programación imperativa simple y escrito en castellano. Es decir, PseInt es un editor e intérprete de programas escritos en PseudoCódigo. Su interfaz gráfica permite crear, almacenar, ejecutar y corregir fácilmente los programas en PseudoCódigo.
  • 15. PSEUDOCÓDIGOPSEUDOCÓDIGO La sencillez del lenguaje PseudoCódigo lo hacen ideal para la enseñanza de la programación. Permitiendo el uso de valores numéricos, números decimales, lógicos, caracteres y arreglos. Provee también funciones de entrada/salida y Funciones matemáticas.
  • 16. PSEUDOCÓDIGOPSEUDOCÓDIGO Estructura de un Programa Proceso <nombre> <secuencia de instrucciones> FinProceso Donde una secuencia de instrucciones es una lista de una o más instrucciones, cada una terminada en punto y coma. <instrucción>; <instrucción>; ...
  • 17. Las palabras y símbolos que pertenecen al pseudocódigo se escriben tal como deben ir, por ejemplo: Proceso; a diferencia de los nombres de variables y otros símbolos y expresiones que pueden variar. PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 18. PSEUDOCÓDIGOPSEUDOCÓDIGO Se pueden introducir comentarios luego de una instrucción, o en líneas separadas, mediante el uso de la doble barra ( // ). Todo lo que precede a //, hasta el fin de la línea, no será tomado en cuenta al interpretar el algoritmo.
  • 19. PSEUDOCÓDIGOPSEUDOCÓDIGO IDENTIFICADORES Los Identificadores son palabras definidas por el programador para identificar variables. Identificador, o nombre de variable, debe constar sólo de letras y números, comenzando siempre por una letra.
  • 20. PSEUDOCÓDIGOPSEUDOCÓDIGO TIPO DE DATOS a) Tipos Simples: Numérica, números enteros y decimales, se usa el punto para separar los decimales. Carácter caracteres o cadena de caracteres se escribe entre comillas (“ “) ó (‘ ‘) Lógicas toma dos valores: Verdadero ó Falso b) Estructura de Datos: Arreglos
  • 21. PSEUDOCÓDIGOPSEUDOCÓDIGO PALABRAS RESERVADAS Las palabras reservadas no llevan acento. Leer , Escribir , Dimension Si-Entonces-Sino, Segun Mientras Hacer, Repetir Hasta Que, Para
  • 22. ESTRUCTURAS SECUENCIALES Las estructuras secuenciales están formadas por las siguientes instrucciones:  Leer Entrada de datos  Escribir Salida de Resultados  Asignación Almacena un valor en una variable PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 23. ESTRUCTURA SECUENCIAL La entrada de datos Definida por la Instrucción Leer que permite el ingreso de datos al algoritmo desde el teclado. Leer <variable1>,<variable2>,…., <variableN>; Leer Numero; PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 24. ESTRUCTURAS SECUENCIALES La salida de Resultados Definida por la Instrucción Escribir y permite mostrar resultados en la pantalla. Escribir <expr1> , <expr2> , ... , <exprN> ; Escribir "Ingrese el nombre:"; Escribir "Resultado:" , x*2 ; PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 25. ESTRUCTURA SECUENCIAL Asignación La Instrucción de Asignación permite almacenar un valor en una variable. <variable>  <expresión> ; PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 26. Para ejecutarse la asignación, primero se evalúa la expresión de la derecha y luego se asigna el resultado a la variable de la izquierda. El tipo de la variable y el de la expresión deben coincidir. n  1; // asigna el número 1 a n suma  suma + 1; // incrementa el valor de PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 27. PSEUDOCÓDIGOPSEUDOCÓDIGO Sentencia de Asignación Ejemplo de sentencia de asignación: a  5 suma  ( 2 + 3 ) * X + T + Z La jerarquía de los operadores matemáticos es igual a la del algebra, aunque puede alterarse con el uso de paréntesis.
  • 28. PSEUDOCÓDIGOPSEUDOCÓDIGO Como ejemplos de sentencias de asignación podemos mencionar: Velocidad  (distancia/(minuto*60+segundo+c/100)) Numero  u + 100 + d+10 + c AT  (s+(s-1) + (s-2) + (s-3))^2 Sentencia de Asignación
  • 29. PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones Las expresiones son combinaciones (asociaciones) de datos con operadores. a  3 b  5 a + b – 7 Cada expresión toma un valor que se determina al evaluar la expresión, el valor puede ser de tipo: numérico, lógico y carácter.
  • 30. PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones De acuerdo a los tipos de datos que se manipulan en las expresiones pueden ser: Expresiones aritméticas (devuelve un número) Expresiones lógicas (devuelve un valor lógico) Expresiones de carácter (devuelve un carácter) . suma  a + b – 3 (expresión aritmética)
  • 31. PSEUDOCÓDIGOPSEUDOCÓDIGO Tipos de Operadores Un operador indica el tipo de operación a realizar sobre los datos. Los operadores se clasifican en: Operadores Aritméticos Operadores relacionales Operadores lógicos.
  • 32. En las expresiones aritméticas se utilizan los siguientes operadores aritméticos: PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones Aritméticas Operador Acción Ejemplo Resultado - Resta 5 – 2 3 + Suma 2 + 3 5 * Multiplicación 4 * 5 20 / División 9 / 3 3 ^ Potencia 5 ^ 2 25
  • 33. Los operadores aritméticos nos permiten, básicamente, hacer cualquier operación aritmética (suma, resta, multiplicación y división) - 3 * 6/3 resultado - 6 - 3 * (6/2) resultado - 9 PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones Aritméticas
  • 34. Las expresiones lógicas son asociaciones de datos con operadores relacionales y de su evaluación siempre se obtiene un valor de tipo lógico (verdadero o falso). PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones Lógicas > Mayor que 5 > 3 >= Mayor o igual que a >= b < Menor que 2 < 4 <= Menor o igual que a <= b = Igual que m = n <> Distinto que 3 <>2 Operador Relacional Acción Ejemplo
  • 35. El operador conjunción (y) y el operador disyunción (o) siempre actúan sobre dos operandos, mientras que, el operador negación (no) sólo actúa sobre un operando. PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones Lógicas Operadores Lógicos Acción Ejemplo & Conjunción ( y ) (5>3) & (5=1) // falso | Disyunción ( 0 ) (7=7) | (4>9) // verdadero. NO Negación (no) NO (4=4) // falso
  • 36. Los operadores lógicos producen un resultado booleano, y sus operandos son también valores lógicos. PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones Lógicas Operadores Lógicos Acción Ejemplo Y Conjunción (5>2) Y (4>1) O Disyunción (2=2) O (a=b) NO Negación No (9>3)
  • 39. PSEUDOCÓDIGOPSEUDOCÓDIGO Expresiones Lógicas Tabla de verdad del operador negación (no): Evaluar : no ( 9 > 5 ) se obtiene como resultado falso
  • 40. PSEUDOCÓDIGOPSEUDOCÓDIGO Prioridad de los operadores Prioridad de los Operador, aritméticos, relacionales y lógicos ( ) Paréntesis . ^ Potencia * , / , NO Multiplicación, división y negación . + , - , Y Signo más, signo menos y conjunción >, <, >=, <=, <>, = , O Mayor que, menor que, mayor igual que, menor igual que, igual que, distinto que y disyunción
  • 41. Funciones Matemáticas FUNCIÓN SIGNIFICADO RC(X) Raíz Cuadrada de X ABS(X) Valor Absoluto de X LN(X) Logaritmo Natural de X EXP(X) Función Exponencial de X SEN(X) Seno de X COS(X) Coseno de X ATAN(X) Arcotangente de X TRUNC(X) Parte entera de X REDON(X) Entero más cercano a X La función raíz cuadrada no debe recibir un argumento negativo. La función exponencial no debe recibir un argumento menor o igual a cero.
  • 42. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema1 Leer a , b; Escribir "a = ", a; Escribir "b = ", b; suma <- a + b; resta <- a -b; multiplica <- a*b; dividir <- a/b; Escribir "suma = " , suma; Escribir "resta = " , resta; Escribir "multiplica = ", multiplica; Escribir "dividir = ", dividir; FinProceso
  • 43. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA N° 2 Leer el radio de un circulo y calcular e imprimir su superficie y la longitud de la circunferencia. Proceso Problema2 pi<-3.1416; Leer radio; Superficie <- pi * radio^2 ; Circunferencia <- 2 * pi * radio; Escribir "Radio", radio; Escribir "Superficie", superficie; Escribir "Circunferencia", circunferencia; FinProceso
  • 44. PSEUDOCÓDIGOPSEUDOCÓDIGO PROBLEMA N°3 2 Calcular las raíces reales de una ecuación cuadrática ax + bx + c = 0 Proceso problema3 Escribir "introdusca las variables a, b y c"; Leer a, b, c; x1<-(-b+RC((b^2)-(4*a*c))/(2*a)); x2<-(-b-RC((b^2)-(4*a*c))/(2*a)); Escribir "las raices son: ", x1, x2; FinProceso
  • 45. ESTRUCTURAS NO SECUENCIALES SENTENCIAS SELECTIVAS: Selección Simple Si-Entonces Selección Doble Si-Entonces-Sino Sentencia Múltiple Segun SENTENCIAS REPETITIVAS: Mientras Hacer Repetir _ Hasta_Que Para PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 46. Se utiliza cuando en el desarrollo de la solución de un problema debemos tomar una decisión, para seleccionar una alternativo a seguir. La toma de decisión se basa en la evaluación de una o más condiciones que nos permitan seleccionar una alternativa de solución al problema planteado. PSEUDOCÓDIGOPSEUDOCÓDIGO SENTENCIAS DE SELECCION
  • 47. PSEUDOCÓDIGOPSEUDOCÓDIGO a) SELECCION SIMPLE : Si <condición> Entonces Sentencia ejecutada si la condición es verdad finSi Si ( nota > = 10 ) Entonces Escribir ( “ingreso”) fin Si Si-Entonces Consiste en evaluar una condición; si el resultado de dicha evaluación es Verdad, se ejecuta la sentencia por verdad y termina la estructura.
  • 48. INICIO CondiciónCondición n FIN V F La sentencia condicional o selectiva evalúa una CONDICION (expresión lógica) PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 49. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA N° 4 Escribir un algoritmo que lea los datos: a , b y calcule e imprimir la suma, la resta, la multiplicación y la división de ellos.
  • 50. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema4 Leer a, b; suma<- a+b; resta<- a-b; multiplica <- a*b; Si b>0 Entonces division <- a/b; FinSi Escribir "suma = ", suma; Escribir "resta = ", resta; Escribir "multiplica = ", multiplica; Escribir "division = ", division; FinProceso
  • 51. La sentencia de selección doble nos permite tomar decisiones entre dos alternativas luego de evaluar una condición (expresión lógica). Si <condición> Entonces <instrucciones> Sino <instrucciones> Finsi PSEUDOCÓDIGOPSEUDOCÓDIGO b) SELECCION DOBLE : Si-Entonces-Sino
  • 52. PSEUDOCÓDIGOPSEUDOCÓDIGO INICIO CondiciónCondición Sentencia por VerdadV Sentencia por Falso F FIN Si - Entonces - Sino Si ( nota > = 10 ) Entonces Escribir ( “ingreso”) Sino Escribir(“no-ingreso”) Finsi
  • 53. b) SENTENCIA DE SELECCIÓN DOBLE : La sentencia de selección doble evalúa una condición e implica la selección de una de dos alternativas. PSEUDOCÓDIGOPSEUDOCÓDIGO IS Sentencia 1 Sentencia 2 Sentencia 3 Sentencia 4 Sentencia 5Sino CONDICIÓN ES VERDAD
  • 54. PSEUDOCÓDIGOPSEUDOCÓDIGO PROBLEMA N° 5 Escribir un algoritmo que lea tres números enteros positivos a, b y c e imprima el mayor de ellos. INICIO Mayor aMayor b a, b ,c a, b, c Mayor FIN a>b NO SI c > Mayor Mayor c si
  • 55. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema5 Leer a, b, c; Si a > b Entonces mayor <- a; Sino mayor <- b; FinSi Si c > mayor Entonces mayor <- c; Finsi Escribir "a = ", a; Escribir "b = ", b; Escribir "c = ", c; Escribir "mayor = ", mayor; FinProceso
  • 56. Es posible utilizar la sentencia Si para diseñar estructuras de selección con más de dos alternativas. Una estructura de selección de n alternativas puede ser construida utilizando una estructura Si . Las estructuras Si interiores a otras estructuras Si se denominan anidadas o encajadas. Debe existir una correspondencia entre las palabras reservadas Si y Finsi. PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 57. PSEUDOCÓDIGOPSEUDOCÓDIGO SENTENCIA DE SELECCIÓN ANIDADASSENTENCIA DE SELECCIÓN ANIDADAS SiSi (condición1) Entonces <instruccion1> Sino SiSi (condición2) Entonces <instrucción2> Sino SiSi (condición3) Entonces <instruccion3> Finsi
  • 58. c) SENTENCIA DE SELECCIÓN MULTIPLE La sentencia de selección múltiple, se usa para seleccionar una de varias alternativas. PSEUDOCÓDIGOPSEUDOCÓDIGO Sentencia 4 Sentencia 5 VALOR DE VARIABLE Según sea Sentencia 1 Sentencia 2 Sentencia 3
  • 59. INICIO SELECTORSELECTOR sentencia 1 1 sentencia N N sentencia 2 C) SELECCION MULTIPLE SENTENCIA Segun 2 ACCION Z FIN PSEUDOCÓDIGOPSEUDOCÓDIGO La selección Múltiple se utiliza cuando existen más de dos alternativas para la selección de una alternativa. El selector puede ser una variable simple o una expresión simple denominada expresión de control.
  • 60. C) SELECCION MULTIPLE: SENTENCIA Segun PSEUDOCÓDIGOPSEUDOCÓDIGO Segun variable_numerica Hacer opcion_1: secuencia_de_acciones_1 opcion_2: secuencia_de_acciones_2 opcion_3: secuencia_de_acciones_3 De Otro Modo: secuencia_de_acciones_dom FinSegun
  • 61. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema6 leer n1, n2; leer opcion; segun opcion Hacer 1: suma <- n1 + n2; Escribir "suma = ", suma; 2: resta <- n1 - n2; Escribir "resta = ", resta; 3: multiplica <- n1*n2; Escribir "multiplica = ", multiplica; 4: divide <- n1/n2; Escribir "divide = ", divide; 5: potencia <- n1^n2; Escribir "potencia = ", potencia; De Otro Modo: Escribir "Numero no Definido" ; FinSegun FinProceso
  • 62. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA Nº 7 Diseñar un algoritmo que lea un entero positivo n y realice las siguientes cálculos: Si N termina en 0 se cambia por el doble Si N termina en 3 se cambia por la décima parte De otro modo matiene su valor inicial
  • 63. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema7 Leer n; Segun n mod 10 Hacer 0: n <- n*2; Escribir "Doble de N = ", n; 3: n <- n/10; Escribir "Decima parte de N = ", n; De Otro Modo: n <- n; Escribir "Numero N = ", n ; FinSegun FinProceso
  • 64. ALGORITMOS Y LENGUAJESALGORITMOS Y LENGUAJES DEDE PROGRAMACIONPROGRAMACION CAPITULO IICAPITULO II ESTRUCTURAS NO SECUENCIALES Sentencias Repetitivas
  • 65. Muchos problemas requieren una capacidad de repetición en la cual el mismo cálculo o secuencia de sentencias se repita, una y otra vez, usando diferentes conjuntos de datos. SENTENCIAS REPETITIVAS PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 66. Los casos de repetición incluyen la verificación continua de las entradas de datos del usuario hasta que se ingrese, una contraseña válida; contar y acumular totales; y la aceptación constante de datos de entrada y el recálculo de valores de salida que sólo se detiene al ingresar un valor centinela. SENTENCIAS REPETITIVAS PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 67. La secuencia de sentencias que se repiten en la solución de un problema se conoce como ciclo, porque después que se ejecuta la última sentencia del ciclo, se regresa, a la primera sentencia de la sección y comienza otra repetición a través de la sección repetitiva. SENTENCIAS REPETITIVAS PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 68. Para las estructuras repetitivas se utilizan dos tipos especiales de variables: Contadores: Son variables que incrementan o disminuyen su valor en una cantidad constante, la misma que debe inicializarse en un valor constante. PSEUDOCÓDIGOPSEUDOCÓDIGO contador  1; contador  contador +1;
  • 69. Acumuladores: Son variables que se usan para incrementar o disminuyen su valor en una cantidad variable, deben ser inicializados su valor. suma  0 ; suma  suma + n ; PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 70. En general, existen tres formas de representar las sentencias repetitivas: • Mientras HacerMientras Hacer • Repetir Hasta QueRepetir Hasta Que • Para.Para. SENTENCIAS REPETITIVAS PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 71. Mientras (Condición) Hacer Sentencia (s) FinMientras ( condición )( condición ) PROCESO: secuencia de sentencias FIN V F PSEUDOCODIGO CICLOS CONTROLADOS EN LA ENTRADA a) SENTENCIA REPETIR : MIENTRAS HACER C I C L O
  • 72. PSEUDOCODIGO Una sentencia Mientras contiene una condición que controla la ejecución de un proceso formado por una o más sentencias, dicho proceso se ejecutará repetidamente si la condición es verdad. La condición contenida dentro del paréntesis es la condición evaluada para determinar si se ejecuta la sentencia que sigue a la condición evaluada. a) SENTENCIA REPETIR : MIENTRAS HACER
  • 73. PSEUDOCODIGO a) SENTENCIA REPETIR : MIENTRAS HACER i). La repetición condicional de cero ciclos Si la primera evaluación de la condición es falsa, entonces la repetición nunca se ejecutará. ii) Repetición indefinida de la secuencia de sentencias. La repetición indefinida que nunca se termina se denomina ciclo indefinido o sin fin, para evitar dichos ciclos indefinidos se debe estipularse una SENTENCIA que permita alterar el valor de la expresión probada en la sección repetitivo. iii) Finalización de bucles con datos de entrada.
  • 74. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA N°8 Escribir un algoritmo que lea un número enteros positivos “n” y luego imprima su factorial.
  • 75. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema8 Leer n; minumero <- n; fact <- 1; MIENTRAS n > 0 Hacer fact <- fact * n; n <- n - 1; FinMientras Escribir "El factorial de n es: " , fact;
  • 76. Repetir Secuencia de sentencias HASTAQUE (condición) sea verdad INICIO ( condición )( condición ) PROCESO: secuencia de sentencias V F FIN PSEUDOCODIGO CICLO CONTROLADO A LA SALIDA b) SENTENCIA REPETIR : HASTA QUE La sentencia HASTA QUE Ejecuta una secuencia de instrucciones hasta que la condición sea verdad. C I C L O
  • 77. PSEUDOCODIGO La condición es una expresión, el valor que representa sólo puede ser verdadero o falso. Se repite una secuencia de sentencias HASTA QUE la condición tome un valor de verdad. El ciclo se ejecuta por lo menos una vez porque la condición se evalúa después de la ejecución de cada iteración. b) SENTENCIA REPETIR HASTA QUE
  • 78. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA N°9 Diseñar un algoritmo que permita calcular la suma acumulada de la serie : 1+2+3+4+….+n El usuario ingresa el numero de términos a sumar.
  • 79. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema9 Leer n; cont <- 1; suma <- 0; Repetir suma <- suma + cont; cont <- cont + 1; Hasta Que ( n < cont ) Escribir " La suma es:" , suma ; FinProceso
  • 80. INICIO PROCESO F V FIN Para Vc=Vi hasta Vf Inc PSEUDOCODIGO c) SENTENCIA REPETITIVA: PARA c i c l o La sentencia PARA se utiliza para implementar un ciclo que se repite un número definido de veces. Donde: Vc: variable de control Vi: valor inicial Vf: valor final Inc: incremento
  • 81. Para Vc = Vi hasta Vf (con Inc) Hacer sentencia1 sentencia2 sentencia3 FinPara PSEUDOCODIGO c) SENTENCIA REPETITIVA : PARA c I c l o
  • 82. F PSEUDOCODIGO c) SENTENCIA REPETIR - PARA La sentencia Para tiene los siguientes elementos: Vc: es la variable de control de la estructura repetitiva y actúa como un contador. Vi: es el valor inicial que inicializa la variable de control (número de repeticiones) de la estructura repetitiva. Inc: es el elemento de incremento que aumenta o disminuye la variable de control (contador) cada vez que se ejecuta el ciclo.
  • 83. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA N° 10 Escribir un algoritmo que lea un número enteros positivos “n” y luego imprima su factorial.
  • 84. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS Proceso Problema10 Leer n; factorial <- 1; Para i <- 1 hasta n Hacer factorial<- factorial * i; FinPara Escribir " El Factorial de N es = ", factorial ; FinProceso
  • 85. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS ** Ejecución Iniciada. *** 5 El Factorial de N es = 120 ** Ejecución Finalizada. ***
  • 86. F PSEUDOCODIGO c) SENTENCIA REPETIR PARA Los CICLOS ANIDADOS son utilizados cuando un ciclo Para interior esta contenido dentro de otro ciclo exterior. Para i 1 hasta 5 // inicio del ciclo exterior Escribir “i toma el valor de”, i; Para j  1 hasta 4 // inicio del ciclo interior* j Escribir “ j = “, j ; FinPara Finpara // fin del ciclo exterior *i
  • 87. F PSEUDOCODIGO c) SENTENCIA REPETIR PARA La salida del algoritmo sería la siguiente: i toma el valor de 1 // ciclo exterior j = 1, j = 2, j = 3, j = 4 // ciclo interior j i toma el valor de 2 j = 1, j = 2, j = 3, j = 4 // ciclo interior j
  • 88. ESTRUCTURAS REPETITIVAS ANIDADAS Es posible insertar un bucle dentro de otro. La estructura interna debe estar incluida totalmente dentro de la externa y no puede existir solapamiento. BUCLE ANIDADO CORRECTAMENTE BUCLE ANIDADO INCORRECTAMENTE PSEUDOCÓDIGOPSEUDOCÓDIGO
  • 89. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA N° 11 Diseñar un programa que permita determinar el promedio de tres prácticas luego de eliminar la menor nota.
  • 90. CONSTRUCCION DE ALGORITMOSCONSTRUCCION DE ALGORITMOS PROBLEMA N°12 Escribir un algoritmo que lea un número compuesto por más un dígito y luego muestre: total de dígitos, total de dígitos pares e impares, número invertido, total de suma de dígitos pares e impares respectivamente.