You are on page 1of 9

Tema 6. Introducción a la programación de ordenadores.

 1º de Bachillerato

Tema 6. Introducción a la programación de ordenadores.

1. Algoritmos y programas.
2. Lenguajes de programación.
• Lenguajes de bajo nivel.
• Lenguajes de alto nivel: 
➢ Lenguajes de tercera generación.
➢ Lenguajes de cuarta generación.
➢ Lenguajes orientados a objetos.
3. Creación de un programa.
4. Variables y constantes.
5. Operadores aritméticos básicos.
6. Operadores relacionales y lógicos.
7. Instrucciones
• Simples.
• Compuestas.

1.­ Algoritmos y programas
La palabra Programación resulta muy cercana y familiar; se puede relacionar con un programa
de televisión, con un programa político, con la programación de horas de estudio, etc.
Al fijarnos en los ejemplos anteriores, vemos que todos ellos tienen algo en común: intentan
realizar una actividad de un modo ordenado.
Cuando se especifican y determinan los pasos que se deben dar, así como el orden en que han
de  realizarse para poder  llevar  a cabo cualquier  actividad, estamos  especificando lo que  se
define como algoritmo.

Página 1
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

Supongamos que queremos escuchar un disco de música. Para hacer esto necesitamos definir
una serie de pasos que constituirán el algoritmo:
1. Dirigirnos a la estantería.
2. Seleccionar el CD a escuchar.
3. Sacar el CD seleccionado de la estantería.
4. Abrir la funda y extraer el CD.
5. Abrir la bandeja del reproductor de CD.
6. Introducir en la bandeja el CD seleccionado.
7. Cerrar la bandeja del reproductor.
8. Pulsar play.

Se puede definir un  algoritmo  como la sucesión de pasos que se deben realizar desde que se


plantea el problema hasta que este queda perfectamente resuelto.
Un  programa  es   similar   a   un   algoritmo:   la   gran   diferencia   es   que   los   pasos   que   permiten
resolver el problema deben escribirse en un determinado lenguaje de programación para que el
ordenador pueda ejecutarlos y encontrar así la solución.

2.­ Lenguajes de programación
La programación es la rama de la informática que permite crear programas propios para resolver
distintos   problemas.   Para   ello   es   necesario   utilizar   un   software   especial,   denominado
genéricamente lenguajes de programación.
Existen distintos criterios para clasificar los lenguajes de programación; uno de ellos permite
dividirlos en cuatro grandes grupos:
✗ Lenguajes de bajo nivel.
✗ Lenguajes de alto nivel:
➢ Lenguajes de tercera generación
➢ Lenguajes de cuarta generación
➢ Lenguajes orientados a objetos.

Lenguajes de bajo nivel
Los principales lenguajes de bajo nivel son el lenguaje máquina y el lenguaje ensamblador.
El lenguaje máquina
Éste es el único lenguaje que entiende el ordenador, ya que utiliza el alfabeto binario, es decir, 0
y 1.
Fue   el   primer   lenguaje   que   se   empleó   en   la   programación   de   ordenadores,   pero   dejó   de

Página 2
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

utilizarse,   ya   que   era   muy   frecuente   cometer   errores   y   resultaba   difícil   de   memorizar   las
distintas instrucciones.
Hay que resaltar que el lenguaje máquina no es portable; es decir, un mismo programa no puede
ser utilizado en ordenadores de características diferentes.

El lenguaje ensamblador
El lenguaje ensamblador fue el primer intento de sustituir el lenguaje máquina por otro más
parecido a los que utilizan las personas. En este lenguaje, cada instrucción está formada por un
conjunto de hasta cuatro caracteres más los operadores, lo cual resulta más sencillo de recordar
que una cadena de unos y ceros (bits); además, se disminuye la probabilidad de cometer errores
durante su escritura.
Debido a que utiliza instrucciones, el lenguaje ensamblador necesita un compilador, es decir, un
programa que traduzca las instrucciones escritas en lenguaje máquina, único lenguaje que el
ordenador puede entender.

Lenguajes de alto nivel
Estos lenguajes son posteriores a los de bajo nivel, y se crearon con los siguientes objetivos:
• Lograr la independencia del ordenador, ya que estos lenguajes sí son portables.
• Aproximar aún más sus instrucciones al lenguaje humano (mayor nivel de abstracción), de
modo que los programas se puedan leer y escribir más fácilmente. Para ello utilizan palabras
en lugar de cadenas de símbolos sin aparente significado, reduciendo así las posibilidades de
cometer errores.  
• Suministrar librerías de rutinas, con las funciones de uso frecuente: entrada/salida, manejo de
tablas, manejo de ficheros, etc; de este modo se evita tener que crearlas cada vez que se
necesiten.
Los lenguajes de alto nivel no son inteligibles directamente para el ordenador, sino que utilizan
un   intérprete   que  va  traduciendo  en programa  para   que el  ordenador  pueda  ejecutarlo.   Las
diferencias entre un compilador y un intérprete se pueden resumir de la siguiente forma: el
intérprete traduce y ejecuta cada línea del programa siguiendo la secuencia del mismo; por el
contrario, el compilador traduce el programa completo, creando uno nuevo ya inteligible para el
ordenador,   llamado  programa  objeto.   Posteriormente   ,   éste   debe   ser   montado   (linkado),
operación que consiste en enlazarlo con las librerías de rutinas, para crear así un nuevo fichero
ejecutable por el ordenador, denominado programa ejecutable.

Lenguajes de tercera generación
Existen distintos tipos de estos lenguajes (lógicos, funcionales,...) entre los que destacamos los
lenguajes procedimentales, que son aquellos que especifican mediante algoritmos la serie de
paso a seguir para obtener la solución a un determinado problema.
Entre los componentes de este tipos de lenguajes, nos encontramos con los datos, con los que

Página 3
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

nos permitirá trabajar dicho lenguaje y un conjunto de instrucciones con los que describimos los
algoritmos.   
Los lenguajes de tercera generación más conocidos son Fortran, Pascal, Lisp, y C. 

Lenguajes de cuarta generación
Los lenguajes de cuarta generación nacieron para solucionar problemas muy concretos. Hasta el
momento, se habían creado únicamente lenguajes de propósito general que no eran válidos para
generar   algunos   programas   específicos;   por   ello   se   comenzaron   a   crear   lenguajes   más
especializados.
Para  el  usuario, estos lenguajes  son muy intuitivos, ya que se centran en necesidades  muy
específicas. En la mayoría de los casos suelen estar formados por una serie de precompiladores,
llamados así porque traducen previamente su código a un lenguaje de alto nivel (normalmente
lenguaje C) y posteriormente a lenguaje máquina para obtener el fichero ejecutable.
Entre los lenguajes de cuarta generación podemos destacar:
SQL. Se trata de un lenguaje de consulta a base de datos.
4GL. Permite generar aplicaciones con ayuda de una gran cantidad de módulos preprogramados
en lenguaje C.

Lenguajes orientados a objetos
Los   lenguajes   de   alto   nivel   se   basan   principalmente   en   la   programación   estructurada;   sin
embargo, los lenguajes orientados a objetos se centran en los datos,  objetos, indicando cómo
han de ser y definiendo las operaciones a las que se les va a someter.
Existen varios lenguajes que soportan programación orientada a objetos : Visual Basic, Object
Pascal, Smalltalk, C++, C#, Visual C++, Visual J, etc.

3.­ Creación de un programa

Cuando un programador se plantea la necesidad de crear un programa, no se lanza a escribir
directamente   las   instrucciones   que   solucionan   el   problema,   ya   que   lo   habitual   es   que   un
programa real necesite 1.000, 5.000, 10.000 o más líneas de instrucciones.
La creación de un programa se realiza en una serie de fases, que deben llevarse a cabo de forma
secuencial   y   ordenada:   análisis   del   problema   y  división   en  subproblemas   (si   es   necesario),
búsqueda del algoritmo, codificación en el lenguaje de programación adecuado, compilación del
programa fuente, montaje o linkado del programa, ejecución para comprobar su funcionamiento
y, por último, explotación y mantenimiento del programa.
Búsqueda del algoritmo. Se suelen usar distintas herramientas: organigramas, pseudocódigo,
etc. Se puede decir que es en esta fase donde realmente se resuelve el problema, ya que un buen
algoritmo garantiza, casi siempre, un buen funcionamiento del programa.

Página 4
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

Ejemplo de algoritmo en pseudocódigo:

inicio
num1 = 0
num2 = 0
leer de teclado num1 y num2
si num1 > num2
visualizar “Mayor =”, num1
si no
visualizar “Mayor=”, num2
fin

Codificación del programa. En esta fase se escribe el algoritmo obtenido en la fase anterior en el
lenguaje de programación elegido. El resultado final será la creación de un fichero con las
instrucciones   necesarias   para   resolver   el   problema,   denominado  programa  fuente.   Esta   fase
debería ser la más corta, ya que se trata simplemente de escribir las instrucciones indicadas por
el   algoritmo.   A   continuación   se   muestra   el   algoritmo   anterior   escrito   en   un   lenguaje   de
programación (lenguaje C):

#include <stdio.h>
void main ()
{
int num1, num2;
prinf(“Introduce el primer número: “);
scanf(“%d”, &num1);
prinf(“Introduce el segundo número: “);
scanf(“%d”, &num2);
if (num1>num2)
printf(“El mayor es %d”, num1);
else
printf(“El mayor es %d”, num2);
}

4.­ Variables y constantes.

Podemos   decir   que   las   variables   y   constantes   son   espacios   reservados   en   la   memoria   del
ordenador a los que se les puede dar un nombre donde uno puede almacenar diferentes tipos de
datos.   Estos   datos   son   los   que   nuestro   programa   usa   durante   su   ejecución.   En   el   ejemplo
anterior  num1  y  num2  son   dos   variables   que   almacenan   números.   La   diferencia   entre   una
variable y una constante es que la información contenida en una variable puede variar a lo largo
de la ejecución del programa mientras que el una constante toma el valor al comienzo de la
ejecución del programa y este valor no se puede cambiar durante la ejecución del programa.
Las constantes se utilizan para almacenar valores ya establecidos con un nombre más fácil de
recordar. Por ejemplo, si necesitamos utilizar el número pi en nuestro programa varias veces,
podemos almacenar el valor de pi en una constante y referenciar esa constante cada vez que
necesitemos el número pi.

Página 5
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

Existen diferentes tipos de variables en función del tipo de dato que almacenen. La variable se
define siempre  antes de su uso  y en esta definición (declaración) se indica qué tipo de dato
almacenará.
Los diferentes tipos de variables pueden variar en función del lenguaje utilizado, pero todos
usan unos tipo generales como pueden ser: números enteros, números reales, carácter, cadenas
de caracteres, booleano (verdadero o falso), etc.

Instrucciones de entrada y salida
Son instrucciones que se usan para introducir datos desde el exterior (por ejemplo el teclado) en
una variable o mostrar su valor a través de un dispositivo externo (por ejemplo la pantalla). 

5.­ Operadores aritméticos básicos
La función de los operadores aritméticos es permitir realizar las operaciones básicas (sumas,
restas, divisiones y multiplicaciones) con los datos de las distintas variables. Los operadores
aritméticos básicos y la acción que realiza cada uno de ellos, son los que se muestran en la
siguiente tabla.

Operación Operador Acción


Suma + Calcula la suma de dos o más variables numéricas.
Diferencia ­ Calcula la diferencia entre dos variables numéricas.
Multiplicación * Multiplica el valor de las variables numéricas.
División / Calcula el valor de la división de dos variables numéricas.

El orden en el que se van a ejecutar los distintos operadores aritméticos en una misma fórmula
es el habitual:

1º Multiplicaciones    2º Divisiones    3º Sumas    4º Restas

Cuando existen varias operaciones con la misma prioridad, se realizan de izquierda a derecha.
Los paréntesis modifican el orden de la prioridad (se realizan primero las operaciones incluidas
en ellos), y en caso de que existan paréntesis dentro de otros, se ejecutan en primer lugar las
operaciones indicadas en los paréntesis interiores.

Página 6
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

Ejercicios
Calcula las siguientes expresiones  e indica el valor del resultado
num1 = 2
num2 = 8
num3 = 3
num4 = 12
num5 = 1

resultado = num4-num3+num2*num1+num5
resultado = num4-(num3+num2)*num1+num5
resultado = (num4-(num3+num2))*num1+num5
resultado = num4-(num3+num2)*(num1+num5)

6.­ Operadores relacionales y lógicos

Los operadores relacionales son los habituales: mayor que, menor que, menor o igual que...,
aunque algunos de ellos se escriben de un modo especial.
En la siguiente tabla se muestran los operadores relacionales junto a su escritura.

Operador Símbolo
Mayor que >
Menor que <
Mayor o igual que >=
Menor o igual que <=
Igual que ==
Distinto que !=

Operadores lógicos
A la hora de expresar una condición, además de los operadores relacionales, se puede utilizar
alguno de los denominados operadores lógicos: Y, O y NO.
Operador NO. También conocido como operador negación. Al aplicarlo sobre una expresión,
hace que ésta tome el valor verdadero cuando la condición no se cumpla, y falso cuando sí se
cumpla. Debe tenerse en cuenta que la expresión sobre la que actúa este operador debe estar
encerrada entre paréntesis.
Operador Y. Este operador permite relacionar dos o más expresiones en una condición; en ese
caso, la condición sólo tomará el valor verdadero cuando se cumplan todas las expresiones; si

Página 7
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

hubiera al menos una expresión que no se cumpliera, el valor de la condición sería falso.
Operador O. Este operador relaciona varias expresiones en una misma función si, de modo que
ésta tomará el valor verdadero en cuanto se cumpla, al menos, una de las expresiones; sólo
tomará el valor falso si todas las expresiones de la condición son falsas.
Es posible utilizar varios operadores lógicos a la vez. En este caso el programa los evaluará en
el siguiente orden:

1º Operador NO     2º Operador Y     3º Operador O

Para   modificar   este   orden   deben   emplearse   paréntesis;   las   expresiones   escritas   entre
paréntesis se evaluarán en primer lugar.

Los valores de los operadores quedan resumidos en las siguientes tablas (tablas de verdad):

a NO a a b a  Y  b a b a  O  b


V F V V V V V V
F V V F F V F V
F V F F V V
F F F F F F

Ejercicios
Evalúa  las  siguientes   expresiones  como   verdaderas   o  falsas,  si:  a=1,  b=2,
c=3, d=4.
• a > b  &&  c > d
• a > b  ||  c > d
• b > a  &&  c > d
• a != b
• c <= a  ||  c >=d

7.­ Instrucciones

Instrucciones Simples

Página 8
Tema 6. Introducción a la programación de ordenadores. 1º de Bachillerato

Instrucciones declarativas
Son instrucciones que se utilizan para declarar los objetos que se van a usar en el programa,
estos objetos son los datos con los que trabajaremos en el programa y que estarán almacenados
en una determinada zona de memoria.
Instrucciones de entrada y salida
Las instrucciones de  salida  se utilizan para presentar, en pantalla o impresora, comentarios,
mensajes al usuario, contenidos de las variables, resultados de una expresión,...
Las instrucciones de entrada se utilizan para tomar datos del exterior y guardarlos en variables.
Una   instrucción   de   entrada   detiene   la   ejecución   del   programa   y   espera   a   que   el   usuario
introduzca un dato por teclado.  El valor tecleado se introduce en la variable que se indique en
la instrucción y continua la ejecución del programa. 
Una   intrucción   de   entrada   suele   estar   precedida   por   una   de   salida,   para   que   en   ésta   le
indiquemos al usuario la información que queremos que introduzca.
Instrucciones de asignación
Este tipo de instrucciones se utilizan para asignar valores a las variables dentro de un programa,
teniendo en cuenta que si la variable ya contenía un valor, éste será destituido por el valor
nuevo que se le asigne.  
Instrucciones de control.
Este tipo de instrucciones modifican el flujo de control secuencial que sigue un programa.  Son
de varios tipos, y las veremos en el tema siguiente. 
Instrucciones Compuestas
Estas instrucciones están formadas por un conjunto de instrucciones simples que desarrolladas
en un lugar apartado del resto y agrupadas bajo un nombre son llamadas desde cualquier punto
del programa.  Una vez ejecutadas el control del programa vuelve a la instrucción siguiente que
realizó dicha llamada.  

Página 9

You might also like