Diferencia entre revisiones de «Seudo código para la escritura de algoritmos»

Línea 16: Línea 16:
 
A veces, la secuencia 2 de acciones no se necesita y en ese caso se omite la palabra else.
 
A veces, la secuencia 2 de acciones no se necesita y en ese caso se omite la palabra else.
 
==Estructuras repetitivas==
 
==Estructuras repetitivas==
Sirven para que se ejecute repetidamente una secuencia de acciones. La secuencia se repite hasta que se satisface una cierta condición. Se emplearán tres tipos de estructuras repetitivas: do -
+
Sirven para que se ejecute repetidamente una secuencia de acciones. La secuencia se repite hasta que se satisface una cierta condición. Se emplearán tres tipos de estructuras repetitivas: '''do''' -
While, repeat - until y for.
+
'''While''', '''repeat''' - '''until''' y '''for.'''
  
 
La estructura '''do - while''' tiene la forma:
 
La estructura '''do - while''' tiene la forma:
Línea 33: Línea 33:
 
La estructura repetitiva '''for''', permite repetir una secuencia de acciones un número de veces que está previamente fijado, bajo el control de una variable que toma valores enteros consecutivos desde un número inicial hasta un número final, ambos prefijados.
 
La estructura repetitiva '''for''', permite repetir una secuencia de acciones un número de veces que está previamente fijado, bajo el control de una variable que toma valores enteros consecutivos desde un número inicial hasta un número final, ambos prefijados.
  
La estructura for tiene la forma:
+
La estructura '''for''' tiene la forma:
 
[[Imagen: Seudocodigofor.jpg |center]]
 
[[Imagen: Seudocodigofor.jpg |center]]
 
Realmente las tres estructuras repetitivas no son imprescindibles. Un mismo algoritmo, por lo general, puede expresarse utilizando una u otra. El objetivo de utilizar las tres formas es buscar en cada caso mayor claridad y brevedad.
 
Realmente las tres estructuras repetitivas no son imprescindibles. Un mismo algoritmo, por lo general, puede expresarse utilizando una u otra. El objetivo de utilizar las tres formas es buscar en cada caso mayor claridad y brevedad.
Línea 41: Línea 41:
  
 
==Ejemplo 1==
 
==Ejemplo 1==
Escriba un seudo código para obtener las raíces reales de una ecuación de segundo grado: “ax”<sup>2</sup>+“bx”+ “c”=0 (“a”≠ 0)  
+
Escriba un seudo código para obtener las raíces reales de una ecuación de segundo grado: ''ax''<sup>2</sup>+''bx''+ ''c''=0 (''a''≠ 0)  
 
utilizando la fórmula general.
 
utilizando la fórmula general.
Solución:
+
===Solución:===
Como se sabe, si el discriminante ''D''=''b'' <sup>2</sup> - 4 “ac” es negativo, las raíces son imaginarias. En caso contrario las raíces son reales y se obtienen como:
+
Como se sabe, si el discriminante ''D''=''b'' <sup>2</sup> - 4 ''ac'' es negativo, las raíces son imaginarias. En caso contrario las raíces son reales y se obtienen como:
 
[[Imagen: Seudocodigo1.jpg |center]]
 
[[Imagen: Seudocodigo1.jpg |center]]
  
Línea 52: Línea 52:
  
 
==Ejemplo 2==
 
==Ejemplo 2==
Realice en seudo código un algoritmo que permita obtener los elementos de una progresión aritmética de incremento” d” > 0  y valor inicial a, que sean menores o iguales que un cierto valor conocido
+
Realice en seudo código un algoritmo que permita obtener los elementos de una progresión aritmética de incremento '''d''' > 0  y valor inicial a, que sean menores o iguales que un cierto valor conocido
Solución:
+
===Solución:===
 
Los elementos de la progresión se obtendrán mediante la fórmula:
 
Los elementos de la progresión se obtendrán mediante la fórmula:
“x”<sub>k</sub>;  =” x”<sub>” k”-1 </sub>; para” k”=”2,3, 4”....
+
''x''<sub>k</sub>;  = ''x''<sub> ''k''-1 </sub>; para ''k''=''2,3, 4''....
con “x” <sub>1</sub> =” a”
+
con ''x'' <sub>1</sub> = ''a''
 
El algoritmo de cálculo puede expresarse así:
 
El algoritmo de cálculo puede expresarse así:
 
[[Imagen: Seudocodigo6.jpg |center]]
 
[[Imagen: Seudocodigo6.jpg |center]]

Revisión del 18:53 24 feb 2015

Seudo código para la escritura de algoritmos
Información sobre la plantilla

Seudo código para la escritura de algoritmos. Utilizar un seudo código en lugar de un lenguaje completamente formal (Como Fortran, Basic, Pascal, C, Matlab, etc..) tiene varias ventajas: por una parte, un seudo código no está sujeto a reglas de sintaxis tan estrictas y no hay que sacrificar la preferencia del lector por un lenguaje u otro. Por otra parte, el seudo código que se utilizará es cercano a la mayoría de los lenguajes de computación en uso, de manera que no será difícil, para el lector interesado, traducir los algoritmos al lenguaje que desee.

El operador de asignación

Se utilizará el signo := para indicar que la expresión que aparezca a la derecha debe ser asignada a la variable que aparece a la izquierda. Por ejemplo, Area := 45 significa que a la variable llamada Area se le debe asignar el valor 45; n := n - 1, indica que a la variable llamada n debe asignársele el valor que tome la expresión n - 1. Observe que este símbolo indica una orden, no una relación de igualdad.

La estructura alternativa

Se utiliza para indicar que, si se cumple una condición, se ejecute una secuencia de acciones y en caso contrario, se ejecute otra. Su estructura general es la siguiente:

Seudocodigoif.jpg

A veces, la secuencia 2 de acciones no se necesita y en ese caso se omite la palabra else.

Estructuras repetitivas

Sirven para que se ejecute repetidamente una secuencia de acciones. La secuencia se repite hasta que se satisface una cierta condición. Se emplearán tres tipos de estructuras repetitivas: do - While, repeat - until y for.

La estructura do - while tiene la forma:

Seudocodigodo.jpg

La secuencia de acciones se ejecuta una y otra vez mientras la condición siga siendo cierta. Tan pronto como deje de cumplirse la condición, la ejecución del algoritmo pasa a la instrucción que siga a la palabra end. A diferencia de la estructura do - while. en la cual la se analiza la veracidad de la condición como requisito previo para entrar dentro del ciclo, la estructura repeat - until permite entrar directamente en la secuencia de acciones correspondiente y, después de ejecutadas estas acciones, se analiza la validez de una condición para permitir o no repetir la secuencia de acciones.

La estructura repeat - until tiene la forma:

Seudocodigorepeat.jpg

Como se observa, aquí no se necesita la palabra end para indicar el final de la secuencia de acciones. ya que la palabra until realiza esta función. Después de ejecutadas las acciones de la secuencia se analiza si la condición es cierta y, si lo es, se pasa a ejecutar la instrucción que siga a la palabra until. En otras palabras, la secuencia de acciones se ejecuta una y otra vez, hasta que la condición se cumple.

La estructura repetitiva for, permite repetir una secuencia de acciones un número de veces que está previamente fijado, bajo el control de una variable que toma valores enteros consecutivos desde un número inicial hasta un número final, ambos prefijados.

La estructura for tiene la forma:

Seudocodigofor.jpg

Realmente las tres estructuras repetitivas no son imprescindibles. Un mismo algoritmo, por lo general, puede expresarse utilizando una u otra. El objetivo de utilizar las tres formas es buscar en cada caso mayor claridad y brevedad.

A continuación se muestran ejemplos de algoritmos escritos con el seudo código adoptado.


Ejemplo 1

Escriba un seudo código para obtener las raíces reales de una ecuación de segundo grado: ax2+bx+ c=0 (a≠ 0) utilizando la fórmula general.

Solución:

Como se sabe, si el discriminante D=b 2 - 4 ac es negativo, las raíces son imaginarias. En caso contrario las raíces son reales y se obtienen como:

Seudocodigo1.jpg

El algoritmo de cálculo será como sigue:

Seudocodigo4.jpg

Ejemplo 2

Realice en seudo código un algoritmo que permita obtener los elementos de una progresión aritmética de incremento d > 0 y valor inicial a, que sean menores o iguales que un cierto valor conocido

Solución:

Los elementos de la progresión se obtendrán mediante la fórmula: xk; = x k-1 ; para k=2,3, 4.... con x 1 = a El algoritmo de cálculo puede expresarse así:

Seudocodigo6.jpg

Fuentes

MATEMÁTICA NUMERICA II EDICIÓN, Manuel Álvarez, Alfredo Guerra, Rogelio Lau