NOCIONES BÁSICAS de Programacion

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 8

NOCIONES BÁSICAS

¿Qué es un programa?

Un programa no es más que una secuencia de instrucciones que puede ser


interpretada directamente por un ordenador.

Los programas en un ordenador forman parte de la capa Software.

¿Qué es un algoritmo?

Un algoritmo es una secuencia de instrucciones que tiene como objetivo realizar una
tarea.

Un algoritmo es algo más genérico que un programa. En realidad, un programa es un


algoritmo, un algoritmo que a su vez está formado por otros algoritmos, y puede que
estos, a su vez, estén compuestos por otros algoritmos...

¿Qué es un procesador?

Un procesador es una entidad, una persona, un circuito, no importa realmente, capaz


de ejecutar algoritmos.

En un ordenador, el procesador, microprocesador, o CPU, está basado en un circuito


electrónico digital.

¿Cómo se construyen los programas?

Un programa se escribe en un determinado lenguaje de programación y así se obtiene


el código fuente del programa.
Sin embargo los programas que se pueden ejecutar en un ordenador los construyen los
compiladores a partir de su código fuente.

¿Qué es un lenguaje de programación?

Ustedes hablan y entienden español, seguramente saben algo de inglés, y


probablemente conozcan otros idiomas.
Podría decirse que un lenguaje de programación es el "idioma" en que se escriben los
programas.

Un lenguaje de programación tiene bien definidas sus reglas sintácticas y semánticas.


Una sentencia es una línea, una frase que tiene sentido en un determinado lenguaje de
programación.

Los conceptos de sentencia e instrucción pueden utilizarse en algunas ocasiones


indistintamente. Aunque no son equivalentes del todo, aquí los tomaremos como tales.

Lenguajes de programación en la actualidad hay muchos. Algunos de los más


conocidos son, por citar algunos: C, C++, Java, C#, PHP...
¿Qué es el pseudocódigo?

Podríamos decir que el pseudocódigo es una especie de lenguaje de programación


universal, que trata de parecerse a todos los lenguajes de programación existentes sin
llegar a ser como ninguno de ellos. Tiene una sintaxis más flexible que un lenguaje de
programación específico.

La ventaja de escribir un programa en pseudocódigo es que puede adaptarse a


cualquier lenguaje de programación específico con muy poco esfuerzo.
Es por esto que, por lo general, los algoritmos de uso frecuente se escriben en
pseudocódigo.

¿Qué es un compilador?

Un compilador es un programa que es capaz de generar otro programa (aunque


parezca irónico) a partir de su código fuente.

El compilador genera los programas para que se puedan ejecutar en una determinada
arquitectura (PC, SPARC, PowerPC...), y para una determinada plataforma (Windows,
Linux, Mac...).

PROFUNDIZANDO MÁS
Características de un algoritmo

1. Un algoritmo tiene cero o más entradas (input). Una entrada es un dato que
ha de ser proporcionado al algoritmo para que se pueda ejecutar.
2. Un algoritmo tiene una o más salidas (output). Una salida es un dato que el
algoritmo nos proporciona una vez se ha ejecutado.
3. Un algoritmo ha de ser finito en el tiempo. Siempre terminará tras una serie de
pasos.
4. Un algoritmo debe ser preciso. Todas las operaciones a realizar en cada paso
han de quedar perfectamente definidas, sin ambigüedades.
5. Cuanto más eficaz es un algoritmo, mejor. Las tareas que tenga que hacer ha
de hacerlas bien y en el menor tiempo posible.

Capacidades del procesador

Recordemos que con el término "procesador" no solo estamos designando un


microprocesador electrónico, sino que nos referimos a algo mucho más general. Un
procesador podría ser perfectamente una persona por ejemplo.

1. Un procesador "entiende" y ejecuta algoritmos.


Lee los algoritmos "de arriba hacia abajo", ejecutando instrucción por
instrucción, de la misma forma que usted lee esta página.
2. Un procesador conoce un conjunto de instrucciones elementales. Algunas de
estas instrucciones elementales podrían ser leer datos, escribir datos, efectuar
operaciones aritméticas (sumas, restas, multiplicaciones, divisiones...), o
comparaciones lógicas (mayor que, menor que, igual que...).
Pero otro procesador podría tener un conjunto de instrucciones totalmente
distinto.
3. Un procesador es capaz de obedecer estructuras de control, que permiten
manejar el flujo de ejecución de instrucciones dentro del programa:
o Ejecución secuencial: se ejecutan todas las instrucciones: una
instrucción detrás de otra.
o Ejecución selectiva: se ejecutan unas instrucciones sí, y otras no.
o Ejecución iterativa: se ejecuta el mismo grupo de instrucciones un
número determinado de veces.
4. Un procesador dispone de memoria para el almacenamiento de datos. Los datos
podrían ser de cualquier tipo, pero por lo general serán numéricos, caracteres o
lógicos. Se puede acceder a ellos de una o más formas: especificando un
nombre, una dirección...

Un ejemplo de procesador podría ser un lenguaje de programación y otro un


microprocesador de ordenador.
Ambos pueden ejecutar algoritmos, pero está claro que no entienden el mismo
conjunto de instrucciones, no tienen por qué tener las mismas estructuras de control,
ni tampoco coinciden en los tipos de datos que pueden almacenar en memoria, etc.

Sintaxis del pseudocódigo

Ya hemos dicho que el pseudocódigo es un lenguaje genérico, universal, por tanto a la


hora de escribir en pseudocódigo vamos a considerar:

1. Instrucciones elementales disponibles: leer dato, escribir dato, operaciones


aritméticas, y comparaciones lógicas.
2. Estructuras de control disponibles:
o Ejecución secuencial:

instrucciones

o Ejecución selectiva:
o si condición entonces
o instrucciones
o si no
o instrucciones

fin si

o Ejecución iterativa (bucle):


o mientras condición hacer
o instrucciones

fin mientras

3. En cuanto a la memoria, disponemos de variables. En una variable se pueden


guardar datos de cualquier tipo, también se puede consultar el contenido de
una variable, o modificar cuantas veces se quiera.

Todas estas consideraciones son relativas puesto que el pseudocódigo es un "medio-


lenguaje", siempre es algo flexible.
Diagramas de flujo

Los diagramas de flujo sirven para representar algoritmos de forma gráfica.


En la práctica resultan muy útiles ya que ayudan a entender el funcionamiento de un
algoritmo antes de leer su código.

Elementos disponibles:

1. Inicio / Fin

2. Flujo de ejecución

3. Acción

4. Decisión

5. Conexión

Estos son los elementos más extendidos y básicos, pero se pueden encontrar con
muchos otros.

Calidad de los programas


Los programas se pueden implementar de una infinidad de formas, pero ¿en qué
podemos basarnos para saber si un programa está bien hecho o no?

1. Un buen programa es conforme a las especificaciones: hace lo que se pide y


no hace lo que no se pide.
2. Un buen programa es eficiente: utiliza los mínimos recursos (tiempo y
memoria) posibles.
3. Un buen programa es robusto: es capaz de responder ante situaciones
excepcionales, o no esperadas.
4. Un buen programa es mantenible: puede ser modificado con facilidad en caso
de ser necesario.
5. Un buen programa es portable: tiene una gran independencia con respecto al
entorno (hardware y software) en el que se va a ejecutar.
6. Un buen programa tiene claridad en su diseño: su código fuente está
estructurado y es fácil de entender.
7. Un buen programa tiene documentación: comentarios dentro de su código
fuente (documentación interna) y papeles externos con descripciones detalladas
(documentación externa).

EJEMPLOS SENCILLOS DE ALGORITMOS


Algoritmo que pide un número 'x' y a continuación dice si es positivo,
negativo o cero

En pseudocódigo:

 Entradas: un entero 'x'.


 Salidas: una cadena de caracteres que dice si 'x' es mayor que 0, menor o
igual.

Podemos observar que las sentencias pueden anidarse unas dentro de otras sin
problemas.

A la variable 'x' podríamos haberla llamado de cualquier otra forma. El nombre de las
variables es irrelevante, sin embargo es mucho mejor darles un nombre que esté
relacionado con su cometido. De esta forma el código resultante será más legible,
sobretodo para aquellos que no tuvieron nada que ver en la elaboración del algoritmo.

Su diagrama de flujo:
Algoritmo que calcula la suma de los 'n' primeros numeros naturales

En pseudocódigo:

 Entradas: un entero 'n' hasta el que se quiere sumar.


 Salidas: una cadena de caracteres indicando la suma 1+2+...+n

La sentencia de asignación evalúa primero la expresión de la derecha y guarda el


resultado en la variable de la izquierda.

Dentro del bucle "mientras" precísamente aparecen dos sentencias de asignación que
pueden parecer extrañas o erróneas, pero es que a una variable se le puede asignar
algo que involucre cálculos con ella misma. Esto es perfectamente correcto ya que,
como acabamos de decir, primero se evalúa la expresión de la derecha antes de
asignar.
Su diagrama de flujo:

También podría gustarte