SlideShare una empresa de Scribd logo
1 de 11
Pseudocódigo
En ciencias de la computación, y análisis numérico, el pseudocódigo (o falso lenguaje) es
una descripción de alto nivel compacta e informal1 del principio operativo de un programa
informático u otro algoritmo.
Utiliza las convenciones estructurales de un lenguaje de programación real,2 pero 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 del
lenguaje de programación convencional, ya que es una descripción eficiente y con un
entorno independiente de los principios fundamentales de un algoritmo. Se utiliza
comúnmente en los libros de texto y publicaciones científicas que se documentan varios
algoritmos, y también en la planificación del desarrollo de programas informáticos, para
esbozar la estructura del programa antes de realizar la efectiva codificación.
Aplicaciones
Generalmente se utiliza pseudocódigo en los libros de texto y publicaciones científicas
relacionadas con la informática y la computación numérica, para la descripción de
algoritmos, de manera que todos los programadores puedan entenderlo, aunque no todos
conozcan el mismo lenguaje de programación. Generalmente, en los libros de texto se
adjunta una explicación que acompaña a la introducción y que explica las convenciones
particulares en uso. El nivel de detalle del pseudocódigo puede, en algunos casos,
acercarse a la de formalizar los idiomas de propósito general.
Un programador que tiene que aplicar un algoritmo específico, sobre todo uno
desfamiliarizado, generalmente comienza con una descripción en pseudocódigo, y luego
"traduce" esa descripción en el lenguaje de programación meta y lo modifica para que
interactúe correctamente con el resto del programa. Los programadores también pueden
iniciar un proyecto describiendo la forma del código en pseudocódigo en el papel antes de
escribirlo en su lenguaje de programación, como ocurre en la estructuración de un enfoque
de Top-down y Bottom-up arriba hacia abajo.
Sintaxis[editar]
En la actualidad y por lo general, el pseudocódigo, como su nombre lo indica, no obedece
a las reglas de sintaxis de ningún idioma en particular ni es de forma estándar sistemática,
a pesar de que cualquier escritor en particular vaya a pedir prestado las estructuras de
control general, la sintaxis y el estilo, por ejemplo, de algún lenguaje de programación
convencional. Pero en caso de que se quiera ejecutar, se debe llevar a forma tipo, para
que no genere mensajes de error. Las fuentes populares incluyen la sintaxis
de Pascal, BASIC, C, C++, Java, Lisp, y ALGOL. Por lo general, se omiten las
declaraciones de variables. A veces, las llamadas a funciones, los bloques de código y el
código contenido dentro de un loop se remplazan por una sentencia de una línea en
lenguaje natural.
Dependiendo del escritor, el pseudocódigo puede variar mucho en su estilo, yendo desde
en un extremo, una imitación casi exacta de un lenguaje de programación real, hasta al
acercarse a una descripción en prosa de formato de pseudocódigo en el otro extremo.
Este es un ejemplo de pseudocódigo (para el juego matemático bizz buzz):
Pseudocódigo
estilo Fortran:
programa bizzbuzz
hacer i = 1 hasta 100
establecer
print_number a
verdadero
si i es divisible
por 3
escribir
"Bizz"
establecer
print_number a falso
si i es divisible
por 5
escribir
"Buzz"
establecer
print_number a falso
si print_number,
escribir i
escribir una
nueva línea
fin del hacer
Pseudocódigo estilo Pascal:
procedimiento bizzbuzz
para i := 1 hasta 100
hacer
establecer
print_number a
verdadero;
Si i es divisible
por 3 entonces
escribir
"Bizz";
establecer
print_number a falso;
Si i es divisible
por 5 entonces
escribir
"Buzz";
establecer
print_number a falso;
Si print_number,
escribir i;
escribir una nueva
línea;
fin
Pseudocódigo estilo C:
subproceso funcion
bizzbuzz
para (i <- 1; i<=100;
i++) {
establecer
print_number a
verdadero;
Si i es divisible
por 3
escribir
"Bizz";
establecer
print_number a falso;
Si i es divisible
por 5
escribir
"Buzz";
establecer
print_number a falso;
Si print_number,
escribir i;
escribir una nueva
línea;
}
Definición de datos del pseudocódigo
La definición de datos se da por supuesta, sobre todo en las variables sencillas, si se
emplea formaciones: pilas, colas, vectores o registros, se pueden definir en la cabecera del
algoritmo, y naturalmente cuando empleemos el pseudocódigo para definir estructuras de
datos, esta parte la desarrollaremos adecuadamente.
Funciones y operaciones
Cada autor usa su propio pseudocódigo con sus respectivas convenciones. Por ejemplo, la
instrucción "reemplace el valor de la variable por el valor de la variable " puede ser
representado como:
 asigne a el valor de
Las operaciones aritméticas se representan de la forma usual en matemáticas.
Estructuras de control
En la redacción del pseudocódigo se utiliza tres tipos de estructuras de control: las
secuenciales, las selectivas y las iterativas.
Estructuras secuenciales
Las instrucciones se siguen en una secuencia fija que normalmente viene dada por el
número de renglón. Es decir que las instrucciones se ejecutan de arriba hacia abajo.
Estructuras selectivas
Las instrucciones selectivas representan instrucciones que pueden o no ejecutarse, según
el cumplimiento de una condición.
Diagrama de flujo que muestra el funcionamiento de la instrucción condicional.
La condición es una expresión booleana. Instrucciones es ejecutada sólo si la condición es
verdadera.
Selectiva doble (alternativa)
La instrucción alternativa realiza una instrucción de dos posibles, según el cumplimiento de
una condición.
Diagrama de flujo que muestra el funcionamiento de la instrucción condicional.
La condición es una variable booleana o una función reducible a booleana (lógica,
Verdadero/Falso). Si esta condición es cierta se ejecutaInstrucciones1, si no es así,
entonces se ejecuta Instrucciones2.
Selectiva múltiple
También es común el uso de una selección múltiple que equivaldría a anidar varias
funciones de selección.
En este caso hay una serie de condiciones que tienen que ser mutuamente excluyentes, si
una de ellas se cumple las demás tienen que ser falsas necesariamente, hay un casosi
no que será cierto cuando las demás condiciones sean falsas.
En esta estructura si Condición1 es cierta, entonces se ejecuta sólo Instrucciones1. En
general, si Condicióni es verdadera, entonces sólo se ejecuta Instruccionesi
Selectiva múltiple-Casos
Una construcción similar a la anterior (equivalente en algunos casos) es la que se muestra
a continuación.
En este caso hay un Indicador es una variable o una función cuyo valor es comparado en
cada caso con los valores "Valori", si en algún caso coinciden ambos valores, entonces se
ejecutarán las Instruccionesi correspondientes. La sección en otro caso es análoga a la
sección si no del ejemplo anterior.
Estructuras iterativas
Las instrucciones iterativas representan la ejecución de instrucciones en más de una vez.
Bucle mientras
Artículo principal: Bucle while
El bucle se repite mientras la condición sea cierta, si al llegar por primera vez al bucle
mientras la condición es falsa, el cuerpo del bucle no se ejecuta ninguna vez.
Diagrama de flujo que muestra el funcionamiento de la instrucciónmientras
Bucle repetir
Existen otras variantes que se derivan a partir de la anterior. La estructura de
control repetir se utiliza cuando es necesario que el cuerpo del bucle se ejecuten al menos
una vez y hasta que se cumpla la condición:
La estructura anterior equivaldría a escribir:
Bucle hacer
El Bucle hacer se utiliza para repetir un bloque de código mientras se cumpla cierta
condición.
Bucle para
Artículo principal: Bucle for
Una estructura de control muy común es el ciclo para, la cual se usa cuando se desea
iterar un número conocido de veces, empleando como índice una variable que se
incrementa (o decrementa): Plantilla:Definiciones
la cual se define como:
Bucle para cada
Por último, también es común usar la estructura de control para cada. Esta sentencia se
usa cuando se tiene una lista o un conjunto y se quiere iterar por cada uno de sus
elementos:
Si asumimos que los elementos de son , entonces esta sentencia
equivaldría a:
Que es lo mismo que:
Sin embargo, en la práctica existen mejores formas de implementar esta instrucción
dependiendo del problema.
Es importante recalcar que el pseudocódigo no es un lenguaje estandarizado. Eso significa
que diferentes autores podrían dar otras estructuras de control o bien usar estas mismas
estructuras, pero con una notación diferente. Sin embargo, las funciones matemáticas y
lógicas toman el significado usual que tienen en matemática y lógica, con las mismas
expresiones.
El anidamiento
Cualquier instrucción puede ser sustituida por una estructura de control. El siguiente
ejemplo muestra el pseudocódigo del ordenamiento de burbuja, que tiene varias
estructuras anidadas. Este algoritmo ordena de menor a mayor los elementos de una
lista .
En general, las estructuras anidadas se muestran indentadas, para hacer más sencilla su
identificación a simple vista. En el ejemplo, además de la indentación, se ha conectado con
flechas los pares de delimitadores de cada nivel de anidamiento.
Desarrollo de algoritmos
Con este pseudocódigo se puede desarrollar cualquier algoritmo que:
 Tenga un único punto de inicio.
 Tenga un número finito de posibles puntos de término.
 Haya un número finito de caminos, entre el punto de inicio y los posibles puntos de
término.
Funciones y procedimientos
Muchas personas prefieren distinguir entre funciones y procedimientos. Una función, al
igual que una función matemática, recibe uno o varios valores de entrada y regresa
unasalida mientras que un procedimiento recibe una entrada y no genera ninguna salida
aunque en algún caso podría devolver resultados a través de sus parámetros de entrada si
estos se han declarado por referencia (ver formas de pasar argumentos a una función o
procedimiento).
En ambos casos es necesario dejar en claro cuáles son las entradas para el algoritmo,
esto se hace comúnmente colocando estos valores entre paréntesis al principio o bien
declarándolo explícitamente con un enunciado. En el caso de las funciones, es necesario
colocar una palabra como regresar o devolver para indicar cuál es la salida generada por
el algoritmo. Por ejemplo, el pseudocódigo de una función que permite calcular (un
número elevado a potencia ).
Un ejemplo de procedimiento seria el algoritmo de Ordenamiento de burbuja, por el que
partiendo de una lista de valores estos se ordenan, nótese que en un procedimiento, no se
calcula el valor de una función, sino que se realiza una acción, en este caso ordenar la
lista.
Ventajas del pseudocódigo sobre los diagramas de flujo
Los pseudocódigos presentan los siguientes beneficios:
1. Ocupan mucho menos espacio en el desarrollo del problema.
2. Permite representar de forma fácil operaciones repetitivas complejas.
3. Es más sencilla la tarea de pasar de pseudocódigo a un lenguaje de programación
formal.
4. Si se siguen las reglas de identación se puede observar claramente los niveles en
la estructura del programa.
5. En los procesos de aprendizaje de los alumnos de programación, éstos están más
cerca del paso siguiente (codificación en un lenguaje determinado, que los que se
inician en esto con la modalidad Diagramas de Flujo).
6. Mejora la claridad de la solución de un problema.
Ejemplo: Realizar el pseudocódigo de un programa que permita calcular el área de un
rectángulo. Se debe introducir la base y la altura para poder realizar el cálculo..
Programa; área
Entorno: BASE, ALTURA, AREA son número enteros
Algoritmo:
escribir “Introduzca la base y la altura”
leer BASE, ALTURA
calcular AREA = BASE * ALTURA
escribir “El área del rectángulo es “AREA
Finprograma
Ejemplo: Realizar el pseudocódigo que permita al usuario introducir por teclado dos notas,
calculando la suma y el producto de las notas.
Programa: SumaProducto
Entorno: NOTA1,NOTA2,SUMA,PRODUCTO son números enteros
Algoritmo:
escribir “Introduzca las notas”
leer NOTA1,NOTA2
calcular SUMA = NOTA1 + NOTA2
calcular PRODUCTO = NOTA1 * NOTA2
escribir “La suma de las dos notas es:” SUMA
escribir “El producto de las dos notas es :”PRODUCTO
Finprograma

Más contenido relacionado

La actualidad más candente

Tecnología taller grupal 9 3 (1)
Tecnología taller grupal 9 3 (1)Tecnología taller grupal 9 3 (1)
Tecnología taller grupal 9 3 (1)NANCYMEJIAVANEGAS
 
Programacion lenguaje-c
Programacion lenguaje-cProgramacion lenguaje-c
Programacion lenguaje-cClariza
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionBoris Salleg
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoLeidiCaro1
 
Estructuras básicas tecnología
Estructuras básicas  tecnología Estructuras básicas  tecnología
Estructuras básicas tecnología valentinacrdenas6
 
Disenoestructuradoalgoritmos
DisenoestructuradoalgoritmosDisenoestructuradoalgoritmos
Disenoestructuradoalgoritmosarmando_franco
 
1.2.3.- Pseudocódigo
1.2.3.- Pseudocódigo1.2.3.- Pseudocódigo
1.2.3.- PseudocódigoYenny Salazar
 
Conceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje deConceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje de'Felipe Lozada
 
Intropseint
IntropseintIntropseint
IntropseintTensor
 
Comandos de raptor
Comandos de raptorComandos de raptor
Comandos de raptor0cero
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicoscbertolotti
 
Programacion logica 1
Programacion logica 1Programacion logica 1
Programacion logica 1profedelvalle
 

La actualidad más candente (18)

Tecnología taller grupal 9 3 (1)
Tecnología taller grupal 9 3 (1)Tecnología taller grupal 9 3 (1)
Tecnología taller grupal 9 3 (1)
 
Programacion lenguaje-c
Programacion lenguaje-cProgramacion lenguaje-c
Programacion lenguaje-c
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacion
 
1. conceptos básicos sobre algoritmos adsi
1. conceptos básicos sobre algoritmos adsi1. conceptos básicos sobre algoritmos adsi
1. conceptos básicos sobre algoritmos adsi
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
Estructuras básicas tecnología
Estructuras básicas  tecnología Estructuras básicas  tecnología
Estructuras básicas tecnología
 
00000
0000000000
00000
 
Disenoestructuradoalgoritmos
DisenoestructuradoalgoritmosDisenoestructuradoalgoritmos
Disenoestructuradoalgoritmos
 
1.2.3.- Pseudocódigo
1.2.3.- Pseudocódigo1.2.3.- Pseudocódigo
1.2.3.- Pseudocódigo
 
Logica algoritmos
Logica algoritmosLogica algoritmos
Logica algoritmos
 
Conceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje deConceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje de
 
Intropseint
IntropseintIntropseint
Intropseint
 
Algoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujoAlgoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujo
 
Comandos de raptor
Comandos de raptorComandos de raptor
Comandos de raptor
 
Lógica y Algoritmos
Lógica y AlgoritmosLógica y Algoritmos
Lógica y Algoritmos
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
 
Programacion logica 1
Programacion logica 1Programacion logica 1
Programacion logica 1
 
Clase 1 lógica de programación
Clase 1 lógica de programaciónClase 1 lógica de programación
Clase 1 lógica de programación
 

Similar a Bucles (20)

Pseudocodigos
PseudocodigosPseudocodigos
Pseudocodigos
 
Estructura de control en la Programación. Luis Rondón
Estructura de control en la Programación. Luis RondónEstructura de control en la Programación. Luis Rondón
Estructura de control en la Programación. Luis Rondón
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
 
Ciclos
CiclosCiclos
Ciclos
 
Ciclos
CiclosCiclos
Ciclos
 
Introducción a Python
Introducción a PythonIntroducción a Python
Introducción a Python
 
Programacin estructurada
Programacin estructuradaProgramacin estructurada
Programacin estructurada
 
Daniel carrera 2
Daniel carrera 2Daniel carrera 2
Daniel carrera 2
 
Python_Introduccion_a_la_programacion.pptx
Python_Introduccion_a_la_programacion.pptxPython_Introduccion_a_la_programacion.pptx
Python_Introduccion_a_la_programacion.pptx
 
Trabajo algoritmo
Trabajo algoritmo Trabajo algoritmo
Trabajo algoritmo
 
Computacion para ingenieros las variables
Computacion para ingenieros las variablesComputacion para ingenieros las variables
Computacion para ingenieros las variables
 
La programación informática o programación algorítmica, acortada
La programación informática o programación algorítmica, acortadaLa programación informática o programación algorítmica, acortada
La programación informática o programación algorítmica, acortada
 
Estructuras de Control
Estructuras de ControlEstructuras de Control
Estructuras de Control
 
Estructuras de Control
Estructuras de Control Estructuras de Control
Estructuras de Control
 
Alejandra gomez
Alejandra gomezAlejandra gomez
Alejandra gomez
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)
 
Estructuras
EstructurasEstructuras
Estructuras
 
Sintaxis de lenguaje de programacion
Sintaxis de lenguaje de programacionSintaxis de lenguaje de programacion
Sintaxis de lenguaje de programacion
 
Pseudocodigos2
Pseudocodigos2Pseudocodigos2
Pseudocodigos2
 

Último

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 

Último (20)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 

Bucles

  • 1. Pseudocódigo En ciencias de la computación, y análisis numérico, el pseudocódigo (o falso lenguaje) es una descripción de alto nivel compacta e informal1 del principio operativo de un programa informático u otro algoritmo. Utiliza las convenciones estructurales de un lenguaje de programación real,2 pero 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 del lenguaje de programación convencional, ya que es una descripción eficiente y con un entorno independiente de los principios fundamentales de un algoritmo. Se utiliza comúnmente en los libros de texto y publicaciones científicas que se documentan varios algoritmos, y también en la planificación del desarrollo de programas informáticos, para esbozar la estructura del programa antes de realizar la efectiva codificación. Aplicaciones Generalmente se utiliza pseudocódigo en los libros de texto y publicaciones científicas relacionadas con la informática y la computación numérica, para la descripción de algoritmos, de manera que todos los programadores puedan entenderlo, aunque no todos conozcan el mismo lenguaje de programación. Generalmente, en los libros de texto se adjunta una explicación que acompaña a la introducción y que explica las convenciones particulares en uso. El nivel de detalle del pseudocódigo puede, en algunos casos, acercarse a la de formalizar los idiomas de propósito general. Un programador que tiene que aplicar un algoritmo específico, sobre todo uno desfamiliarizado, generalmente comienza con una descripción en pseudocódigo, y luego "traduce" esa descripción en el lenguaje de programación meta y lo modifica para que interactúe correctamente con el resto del programa. Los programadores también pueden iniciar un proyecto describiendo la forma del código en pseudocódigo en el papel antes de escribirlo en su lenguaje de programación, como ocurre en la estructuración de un enfoque de Top-down y Bottom-up arriba hacia abajo. Sintaxis[editar] En la actualidad y por lo general, el pseudocódigo, como su nombre lo indica, no obedece a las reglas de sintaxis de ningún idioma en particular ni es de forma estándar sistemática, a pesar de que cualquier escritor en particular vaya a pedir prestado las estructuras de control general, la sintaxis y el estilo, por ejemplo, de algún lenguaje de programación
  • 2. convencional. Pero en caso de que se quiera ejecutar, se debe llevar a forma tipo, para que no genere mensajes de error. Las fuentes populares incluyen la sintaxis de Pascal, BASIC, C, C++, Java, Lisp, y ALGOL. Por lo general, se omiten las declaraciones de variables. A veces, las llamadas a funciones, los bloques de código y el código contenido dentro de un loop se remplazan por una sentencia de una línea en lenguaje natural. Dependiendo del escritor, el pseudocódigo puede variar mucho en su estilo, yendo desde en un extremo, una imitación casi exacta de un lenguaje de programación real, hasta al acercarse a una descripción en prosa de formato de pseudocódigo en el otro extremo. Este es un ejemplo de pseudocódigo (para el juego matemático bizz buzz): Pseudocódigo estilo Fortran: programa bizzbuzz hacer i = 1 hasta 100 establecer print_number a verdadero si i es divisible por 3 escribir "Bizz" establecer print_number a falso si i es divisible por 5 escribir "Buzz" establecer print_number a falso si print_number, escribir i escribir una nueva línea fin del hacer Pseudocódigo estilo Pascal: procedimiento bizzbuzz para i := 1 hasta 100 hacer establecer print_number a verdadero; Si i es divisible por 3 entonces escribir "Bizz"; establecer print_number a falso; Si i es divisible por 5 entonces escribir "Buzz"; establecer print_number a falso; Si print_number, escribir i; escribir una nueva línea; fin Pseudocódigo estilo C: subproceso funcion bizzbuzz para (i <- 1; i<=100; i++) { establecer print_number a verdadero; Si i es divisible por 3 escribir "Bizz"; establecer print_number a falso; Si i es divisible por 5 escribir "Buzz"; establecer print_number a falso; Si print_number, escribir i; escribir una nueva línea; }
  • 3. Definición de datos del pseudocódigo La definición de datos se da por supuesta, sobre todo en las variables sencillas, si se emplea formaciones: pilas, colas, vectores o registros, se pueden definir en la cabecera del algoritmo, y naturalmente cuando empleemos el pseudocódigo para definir estructuras de datos, esta parte la desarrollaremos adecuadamente. Funciones y operaciones Cada autor usa su propio pseudocódigo con sus respectivas convenciones. Por ejemplo, la instrucción "reemplace el valor de la variable por el valor de la variable " puede ser representado como:  asigne a el valor de Las operaciones aritméticas se representan de la forma usual en matemáticas. Estructuras de control En la redacción del pseudocódigo se utiliza tres tipos de estructuras de control: las secuenciales, las selectivas y las iterativas. Estructuras secuenciales Las instrucciones se siguen en una secuencia fija que normalmente viene dada por el número de renglón. Es decir que las instrucciones se ejecutan de arriba hacia abajo.
  • 4. Estructuras selectivas Las instrucciones selectivas representan instrucciones que pueden o no ejecutarse, según el cumplimiento de una condición. Diagrama de flujo que muestra el funcionamiento de la instrucción condicional. La condición es una expresión booleana. Instrucciones es ejecutada sólo si la condición es verdadera. Selectiva doble (alternativa) La instrucción alternativa realiza una instrucción de dos posibles, según el cumplimiento de una condición. Diagrama de flujo que muestra el funcionamiento de la instrucción condicional.
  • 5. La condición es una variable booleana o una función reducible a booleana (lógica, Verdadero/Falso). Si esta condición es cierta se ejecutaInstrucciones1, si no es así, entonces se ejecuta Instrucciones2. Selectiva múltiple También es común el uso de una selección múltiple que equivaldría a anidar varias funciones de selección. En este caso hay una serie de condiciones que tienen que ser mutuamente excluyentes, si una de ellas se cumple las demás tienen que ser falsas necesariamente, hay un casosi no que será cierto cuando las demás condiciones sean falsas. En esta estructura si Condición1 es cierta, entonces se ejecuta sólo Instrucciones1. En general, si Condicióni es verdadera, entonces sólo se ejecuta Instruccionesi Selectiva múltiple-Casos Una construcción similar a la anterior (equivalente en algunos casos) es la que se muestra a continuación.
  • 6. En este caso hay un Indicador es una variable o una función cuyo valor es comparado en cada caso con los valores "Valori", si en algún caso coinciden ambos valores, entonces se ejecutarán las Instruccionesi correspondientes. La sección en otro caso es análoga a la sección si no del ejemplo anterior. Estructuras iterativas Las instrucciones iterativas representan la ejecución de instrucciones en más de una vez. Bucle mientras Artículo principal: Bucle while El bucle se repite mientras la condición sea cierta, si al llegar por primera vez al bucle mientras la condición es falsa, el cuerpo del bucle no se ejecuta ninguna vez. Diagrama de flujo que muestra el funcionamiento de la instrucciónmientras
  • 7. Bucle repetir Existen otras variantes que se derivan a partir de la anterior. La estructura de control repetir se utiliza cuando es necesario que el cuerpo del bucle se ejecuten al menos una vez y hasta que se cumpla la condición: La estructura anterior equivaldría a escribir: Bucle hacer El Bucle hacer se utiliza para repetir un bloque de código mientras se cumpla cierta condición. Bucle para Artículo principal: Bucle for Una estructura de control muy común es el ciclo para, la cual se usa cuando se desea iterar un número conocido de veces, empleando como índice una variable que se incrementa (o decrementa): Plantilla:Definiciones la cual se define como:
  • 8. Bucle para cada Por último, también es común usar la estructura de control para cada. Esta sentencia se usa cuando se tiene una lista o un conjunto y se quiere iterar por cada uno de sus elementos: Si asumimos que los elementos de son , entonces esta sentencia equivaldría a: Que es lo mismo que: Sin embargo, en la práctica existen mejores formas de implementar esta instrucción dependiendo del problema. Es importante recalcar que el pseudocódigo no es un lenguaje estandarizado. Eso significa que diferentes autores podrían dar otras estructuras de control o bien usar estas mismas estructuras, pero con una notación diferente. Sin embargo, las funciones matemáticas y lógicas toman el significado usual que tienen en matemática y lógica, con las mismas expresiones. El anidamiento Cualquier instrucción puede ser sustituida por una estructura de control. El siguiente ejemplo muestra el pseudocódigo del ordenamiento de burbuja, que tiene varias estructuras anidadas. Este algoritmo ordena de menor a mayor los elementos de una lista .
  • 9. En general, las estructuras anidadas se muestran indentadas, para hacer más sencilla su identificación a simple vista. En el ejemplo, además de la indentación, se ha conectado con flechas los pares de delimitadores de cada nivel de anidamiento. Desarrollo de algoritmos Con este pseudocódigo se puede desarrollar cualquier algoritmo que:  Tenga un único punto de inicio.  Tenga un número finito de posibles puntos de término.  Haya un número finito de caminos, entre el punto de inicio y los posibles puntos de término. Funciones y procedimientos Muchas personas prefieren distinguir entre funciones y procedimientos. Una función, al igual que una función matemática, recibe uno o varios valores de entrada y regresa unasalida mientras que un procedimiento recibe una entrada y no genera ninguna salida aunque en algún caso podría devolver resultados a través de sus parámetros de entrada si estos se han declarado por referencia (ver formas de pasar argumentos a una función o procedimiento). En ambos casos es necesario dejar en claro cuáles son las entradas para el algoritmo, esto se hace comúnmente colocando estos valores entre paréntesis al principio o bien declarándolo explícitamente con un enunciado. En el caso de las funciones, es necesario colocar una palabra como regresar o devolver para indicar cuál es la salida generada por
  • 10. el algoritmo. Por ejemplo, el pseudocódigo de una función que permite calcular (un número elevado a potencia ). Un ejemplo de procedimiento seria el algoritmo de Ordenamiento de burbuja, por el que partiendo de una lista de valores estos se ordenan, nótese que en un procedimiento, no se calcula el valor de una función, sino que se realiza una acción, en este caso ordenar la lista. Ventajas del pseudocódigo sobre los diagramas de flujo Los pseudocódigos presentan los siguientes beneficios:
  • 11. 1. Ocupan mucho menos espacio en el desarrollo del problema. 2. Permite representar de forma fácil operaciones repetitivas complejas. 3. Es más sencilla la tarea de pasar de pseudocódigo a un lenguaje de programación formal. 4. Si se siguen las reglas de identación se puede observar claramente los niveles en la estructura del programa. 5. En los procesos de aprendizaje de los alumnos de programación, éstos están más cerca del paso siguiente (codificación en un lenguaje determinado, que los que se inician en esto con la modalidad Diagramas de Flujo). 6. Mejora la claridad de la solución de un problema. Ejemplo: Realizar el pseudocódigo de un programa que permita calcular el área de un rectángulo. Se debe introducir la base y la altura para poder realizar el cálculo.. Programa; área Entorno: BASE, ALTURA, AREA son número enteros Algoritmo: escribir “Introduzca la base y la altura” leer BASE, ALTURA calcular AREA = BASE * ALTURA escribir “El área del rectángulo es “AREA Finprograma Ejemplo: Realizar el pseudocódigo que permita al usuario introducir por teclado dos notas, calculando la suma y el producto de las notas. Programa: SumaProducto Entorno: NOTA1,NOTA2,SUMA,PRODUCTO son números enteros Algoritmo: escribir “Introduzca las notas” leer NOTA1,NOTA2 calcular SUMA = NOTA1 + NOTA2 calcular PRODUCTO = NOTA1 * NOTA2 escribir “La suma de las dos notas es:” SUMA escribir “El producto de las dos notas es :”PRODUCTO Finprograma