• No se han encontrado resultados

TIC -INTRODUCCIÓN A LA PROGRAMACIÓN DE ORDENADORES- Andrés Veses

N/A
N/A
Protected

Academic year: 2021

Share "TIC -INTRODUCCIÓN A LA PROGRAMACIÓN DE ORDENADORES- Andrés Veses"

Copied!
6
0
0

Texto completo

(1)

TIC -INTRODUCCIÓN A LA PROGRAMACIÓN DE ORDENADORES- Andrés Veses

informá[email protected]

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.

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)

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:

o Lenguajes de tercera generación o 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ó deutilizarse, 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.

(3)

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 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.

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

(4)

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.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.

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.

O

Oppeerraacciónn OOppeerraaddoorr AAcccciónn

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.

(5)

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.

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 = ((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.

O

Oppeerraaddoorr Símmbobolloo

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 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.

(6)

a

b

a Y b

V

V

V

V

F

F

F

V

F

F

F

F

a

b

a O b

V

V

V

V

F

V

F

V

V

F

F

F

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 V F F V

7.- Instrucciones

Instrucciones Simples

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.

Referencias

Documento similar

Sanz (Universidad Carlos III-IUNE): &#34;El papel de las fuentes de datos en los ranking nacionales de universidades&#34;.. Reuniones científicas 75 Los días 12 y 13 de noviembre

(Banco de España) Mancebo, Pascual (U. de Alicante) Marco, Mariluz (U. de València) Marhuenda, Francisco (U. de Alicante) Marhuenda, Joaquín (U. de Alicante) Marquerie,

o Si dispone en su establecimiento de alguna silla de ruedas Jazz S50 o 708D cuyo nº de serie figura en el anexo 1 de esta nota informativa, consulte la nota de aviso de la

Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de

En este trabajo estudiamos la obra poética en español del escritor y profesor argelino Salah Négaoui, a través de la recuperación textual y análisis de Poemas la voz, texto pu-

Las manifestaciones musicales y su organización institucional a lo largo de los siglos XVI al XVIII son aspectos poco conocidos de la cultura alicantina. Analizar el alcance y

En la parte central de la línea, entre los planes de gobierno o dirección política, en el extremo izquierdo, y los planes reguladores del uso del suelo (urbanísticos y

اهعضوو يداصتق�لا اهطاشنو ةينارمعلا اهتمهاسم :رئازجلاب ةيسلدنأ�لا ةيلاجلا« ،ينوديعس نيدلا رصان 10 ، ، 2 ط ،رئازجلاب يسلدنأ�لا دوجولاو يربي�لا ريثأاتلا