Sei sulla pagina 1di 21

1.

³Algoritmos y Programas, Concepto de Algoritmos y Programas,


Lenguaje algorítmico y de programación, Partes de un algoritmo. o
Características y elementos para construir un algoritmo, Formas de
representar un algoritmo: Lenguaje Natural, pseudocódigo y diagrama
de flujo, Traza de un algoritmo (corrida en frío)´
ë 

 al algoritmo trata de resolver problemas mediante


programas.
 Fases:
 Análisis preliminar o evaluación del problema: astudiar
el problema en general y ver que parte nos interesa.
 Definición o análisis del problema: Ver que es lo que
entra y que es lo que sale, las posibles condiciones o
restricciones, ...
 Diseño del algoritmo: Diseñar la solución.
 al programa: Codificación del algoritmo en un lenguaje
de programación.
 ajecución del programa y las pruebas: Ver si el
programa hace lo que queríamos.
a  


 
 as una fórmula para resolver un
problema. as un conjunto de acciones ó
secuencia de operaciones que
ejecutadas en un determinado orden
resuelven el problema. a isten ³n´
algoritmos, hay que coger el más
efectivo.
„   
 Tiene que ser preciso.
 Tiene que estar bien definido.
 Tiene que ser finito.

La programación es adaptar el algoritmo al


ordenador.
al algoritmo es independiente según donde
lo implemente.
La definición de un algoritmo debe
describir tres partes : a  

 6
u
  


as un conjunto de instrucciones escritas


en un lenguaje de programación que
indican a la computadora la secuencia
de pasos para resolver un problema.
Ô   


Los algoritmos pueden describirse
utilizando diversos lenguajes. Cada uno de
estos lenguajes permiten describir los
pasos con mayor o menor detalle.
La clasificación de los lenguajes para
algoritmos puede enunciarse de la
siguiente manera :
 Lenguaje Natural.
 Lenguaje de Diagrama de Flujo.
 Lenguaje Natural de Programación.
 Lenguaje de Programación de Algoritmos.
Ô    

as aquél que describe en español, para


nuestro caso, los pasos a seguir
utilizando un vocabulario cotidiano. Se
le conoce como w   cuando
se utilizan términos especializados de
una determinada ciencia, profesión o
grupo.
Ô      

as aquél que se vale de diversos


símbolos para representar las ideas o
acciones a desarrollar. as útil para
organizar las acciones o pasos de un
algoritmo pero requiere de etapas
posteriores para implementarse en un
sistema de cómputo.
  
   

 Ô   
      

  
  

 

  6 
  
  
  


     
  
   
      6
 Ô    
 
 
  

  
     
     
 
    

      
  


  
       

  6
Ô      

 
Son aquéllos que están orientados a la solución
de problemas que se definen de una manera
precisa. Generalmente son aplicados para la
elaboración de fórmulas o métodos científicos.
al lenguaje natural tiene las siguientes
características:
 avita la ambigüedad (algo confuso que se
puede interpretar de varias maneras).
 Son precisos y bien definidos.
 Utilizan términos familiares al sentido común.
 alimina instrucciones innecesarias.
Ô   
  
 
 

as aquél que se utiliza para introducir en
la computadora un algoritmo específico.
Se les conoce también como Ô  
 
 Ô    


as un conjunto de palabras, símbolos y reglas
sintácticas mediante los cuales puede indicarse a la
computadora los pasos a seguir para resolver un
problema.
Los lenguajes de programación pueden clasificarse por
diversos criterios, siendo el más común su nivel de
semejanza con el lenguaje natural, y su capacidad de
manejo de niveles internos de la máquina.
Ô
   
 
   



 Lenguaje Máquina.
 Lenguaje de bajo Nivel (ensamblador).
 Lenguajes de Alto Nivel.
Ô  
Son aquéllos que están escritos en lenguajes
directamente inteligibles por la máquina
(computadora), ya que sus instrucciones son
 
 

cadenas o series de
caracteres de dígitos 0 y 1) que especifican
una operación y las posiciones (dirección) de
memoria implicadas en la operación se
denominan 

  
 6al código máquina es el
conocido  
Ô  
ë 
 Ô   

 Ô  
   
 Posibilidad de cargar  Dificultad y lentitud en la
codificación.
(transferir un programa a  Poca fiabilidad.
la memoria) sin  Gran dificultad para verificar y
necesidad de traducción poner a punto los programas.
 Los programas solo son
posterior, lo que supone ejecutables en el mismo
una velocidad de procesador (CPU).
ejecución superior a  an la actualidad, las
desventajas superan a las
cualquier otro lenguaje ventajas, lo que hace
de programación. prácticamente no
recomendables a los
lenguajes máquinas.
 
 
Son más fáciles de utilizar que los lenguajes
máquina, pero al igual que ellos, dependen
de la máquina en particular. al lenguaje de
bajo nivel por e celencia es el
 .
Las instrucciones en lenguaje ensamblador
son instrucciones conocidas como
 
. Por ejemplo, nemotécnicos
típicos de operaciones aritméticas son:
 an inglés: ADD, SUB, DIV, etc.
 an español: SUM, RaS, DIV, etc.
 
 
Una instrucción típica de suma sería:
 ADD M, N, P
asta instrucción significa "sumar el contenido en la posición
de memoria M al número almacenado en la posición de memoria N
y situar el resultado en la posición de memoria P" . avidentemente
es más sencillo recordar la instrucción anterior con un nemotécnico
que su equivalente en código máquina.
0110 1001 1010 1011
Un programa escrito en lenguaje ensamblador, requiere de una
fase de  al lenguaje máquina para poder ser ejecutado
directamente por la computadora.
al programa original escrito en lenguaje ensamblador se denomina
!"  y el programa traducido en lenguaje máquina se
conoce como ! , el cual ya es directamente
entendible por la computadora.
 
 
ë 
    

   

 "     
 
 
 Dependencia total de la máquina lo que
 Mayor facilidad de impide la transportabilidad de los
programas (posibilidad de ejecutar un
codificación y, en programa en diferentes máquinas. al
lenguaje ensamblador del PC es distinto
general, su velocidad de del lenguaje ensamblador del Apple
Macintosh.
cálculo.  La formación de los programadores es
más compleja que la correspondiente a
los programadores de alto nivel, ya que
e ige no solo las técnicas de
programación, sino también el
conocimiento del interior de la máquina.
 Los lenguajes ensamblador tienen sus
aplicaciones muy reducidas, se centran
básicamente en aplicaciones de tiempo
real, control de procesos y de
dispositivos electrónicos.
 
ë 

astos lenguajes son los más utilizados por los


programadores. astán diseñados para que las
personas escriban y entiendan los programas de un
modo mucho más fácil que los lenguajes máquina y
ensambladores. Un programa escrito en lenguaje de
alto nivel es independiente de la máquina (las
instrucciones no dependen del diseño del hardware o
de una computadora en particular), por lo que estos
programas son !

!
6Los
programas escritos en lenguaje de alto nivel pueden ser
ejecutados con poca o ninguna modificación en
diferentes tipos de computadoras.


al   (falso lenguaje) es una descripción de alto nivel
de un algoritmo que emplea una mezcla de lenguaje natural con
algunas convenciones sintácticas propias de lenguajes de
programación, como asignaciones, ciclos y condicionales. as
utilizado para describir algoritmos en libros y publicaciones
científicas, y como producto intermedio durante el desarrollo de un
algoritmo.
al pseudocódigo está pensado para facilitar a las personas el
entendimiento de un algoritmo, y por lo tanto puede omitir detalles
irrelevantes que son necesarios en una implementación. Programadores
diferentes suelen utilizar convenciones distintas, que pueden estar
basadas en la sinta is de lenguajes de programación concretos. Sin
embargo, el pseudocódigo en general es comprensible sin necesidad de
conocer o utilizar un entorno de programación específico, y es a la vez
suficientemente estructurado para que su implementación se pueda hacer
directamente a partir de él.
`   
ë 
 

Todo
  en pseudocódigo tiene la siguiente estructura general:

Proceso SinTitulo
accion 1;
accion 1;
.
.
.
accion n;
FinProceso
Comienza con la palabra clave Proceso seguida del nombre del
programa, luego le sigue una secuencia de instrucciones y finaliza con
la palabra FinProceso. Una secuencia de instrucciones es una lista de
una o más instrucciones, cada una terminada en punto y coma.
Las acciones incluyen operaciones de entrada y salida, asignaciones
de variables, condicionales si-entonces o de selección múltiple y/o
lazos mientras, repetir o para
 
ë 

ë 
  
 
 

  

    
   
 al tiempo de formación de los  Incremento del tiempo de puesta a
programadores es relativamente punto al necesitarse diferentes
corto comparado con otros traducciones del programa fuente
lenguajes. para conseguir el programa
 La escritura de programas se basa definitivo.
en reglas sintácticas similares a los  No se aprovechan los recursos
lenguajes humanos. Nombres de internos de la máquina que se
las instrucciones tales como RaAD, e plotan.
WRITa, PRINT, OPaN, etc.  mucho mejor en lenguajes máquina
 Las modificaciones y puestas a y ensambladores.
punto de los programas son más  Aumento de la ocupación de
fáciles. memoria.
 Reducción del costo de los  al tiempo de ejecución de los
programas. programas es mucho mayor.
 Transportabilidad. 

Potrebbero piacerti anche