Sei sulla pagina 1di 11

UNIDAD 3 INTRODUCCION A LA PROGRAMACION DE UN LENGUAJE

ESTRUCTURADO.
3.1 INTRODUCCION A LA PROGRAMACION DE UN LENGUAJE
ESTRUCTURADO.
En 1995 Edgeser W. Dijsktra public los principios de la programacin estructura en su
libro Notas de programacin estructurada, con estas notas como eje, C. Boehm y G.
Jacopini establecen en 1996 un lenguaje de programacin que sera utilizado como base
para la mayora de las plataformas de desarrollo que se conocen en nuestros das,
Lenguaje C.
El concepto bsico de la programacin estructurada consiste en la formacin bsica de
texto de programacin (enunciados de programacin) que al ser ledo, pueda explicar el
funcionamiento de un programa. Un programa secuencial debe cumplir con las siguientes
caractersticas:

Debe de ser fcil de leer y de comprender leyendo el propio cdigo.


Debe ser fcil de depurar (localizar errores del programa).
Debe ser fcil de mantener (ampliar con nuevas especificaciones o modificar las
ya existentes).
Permitir el trabajo en equipo sobre un mismo programa.

3.2 ESTRUCTURA BASICA DE UN PROGRAMA.


Los programas estructurales se deben construir en bloques pequeos que sean bien
definidos en cuanto a su funcin, al nivel de ser perfectos en tareas breves y concisas.
Una vez perfeccionado el programa, se probara su capacidad como mdulo atmico, es
decir, la verificacin lnea a lnea de sentencias del tipo Si-Entonces-Haz, mientras, etc..
Una de las caractersticas distintivas del lenguaje C es esta modularidad, debido a que los
programas estn constituidos por funciones, donde la funcin principal es conocida como
funcin main (principal).
Los programas estructurales deben estar bien organizados y definidos por los siguientes
principios:
Teorema estructura.
Este es definido por tres bloques bsicos, los cuales son conocidos como:

Caja de proceso.
Decisin binaria.
Mecanismo de repeticin.

Programa.
El cual enuncia las acciones a realizar para satisfacer una necesidad y debe cumplir con
las siguientes caractersticas:

Tope del bloque con una entrada nica.


Lectura secuencial de arriba hacia abajo
Tener una salida o resultado.

Todas las funciones contienen instrucciones que se ejecutan cuando el programa hace
una llamada explicita a la funcin correspondiente. Las funciones contienen declaraciones
de las variables y definiciones de las constantes que se utilizan dentro de ellas.
El programa comienza mediante la ejecucin de la primera instruccin de la funcin main,
que establece su camino u origen lgico de la ejecucin. Para ello en el cuerpo de la
funcin principal se incluyen instrucciones y/o llamadas al resto de las funciones definidas
en el programa.
Por ejemplo, la estructura general de un programa escrito en C quedara de la siguiente
forma:
1. Archivos de cabecera (header files).
Son archivos que incluyen la declaracin (asociacin de un tipo de dato) de las
variables, constantes y otras funciones utilizadas en el programa.
2. Declaraciones globales.
Declaraciones de variables y constantes que pueden ser utilizadas por todas las
funciones del programa.
3. Declaraciones locales.
Declaraciones de variables y constantes que slo pueden ser utilizadas dentro de
una funcin determinada.
4. Tipo fi (lista de parmetros).
Tipo: Es el tipo de dato del resultado que proporciona la funcin.
Fi: Es el nombre de la funcin i.
Lista parmetros: Es la lista de parmetro o variables de entrada que utiliza la
funcin. Constituye la declaracin de una o varias variables, que funcionan como
variables locales.
5. Instrucciones.
Instrucciones o sentencias que forman parte de las funciones. El smbolo punto y
coma (;) incluido al final de una lnea la identifica como una instruccin o sentencia
del lenguaje C. Para que el programa sea fcilmente intangible conviene escribir
cada instruccin en una lnea.
6. Tipo main (lista de parmetros).
Definicin de la funcin principal del programa: Las herramientas de desarrollo
incluyen muchas veces bibliotecas (libraries) de funciones estndar o
normalizadas, para que los usuarios no tengan que programarlas.
El resultado quedara de la siguiente forma:
/* Hola mundo en Lenguage C */
#include <stdio.h> Cabecera
void main() Funcin principal
{
printf("Hola mundo"); Instrucciones
}
3.3 TIPOS DE DATOS.
Existen dos tipos de datos a utilizar durante un programa, variables y constantes. Las
variables son un tipo de dato cuyo valor contenido en l puede cambiar a lo largo de un
programa, las constantes son los tipos de datos que a lo largo del programa mantienen
integro su valor contenido.
El tipo de valor que reside en la variable o constante es una forma de representar
informacin para la que se reserva un espacio de memoria, de acuerdo con sus
caractersticas. Los datos que procesa una computadora se clasifican en simples y
estructurados. La principal caracterstica de los tipos de datos simples es que ocupan solo
una casilla de memoria. Dentro de este grupo de datos se encuentran principalmente los
enteros, los reales y los caracteres. La utilizacin de la memoria depende de la correcta
eleccin del tipo de dato asignado a las variables de un programa, porque en algunos
casos, no suele disponer de una memoria de datos o programa de elevada capacidad.
En el lenguaje C se definen los cinco tipos de datos bsicos:

3.4 IDENTIFICADORES.
Los identificadores (IDs) son smbolos lxicos que nombran entidades. El concepto es
anlogo al de "nombres de procesamiento de la informacin". Nombrar las entidades hace
posible referirse a las mismas, lo cual es esencial para cualquier tipo de procesamiento
simblico.
En los lenguajes informticos, los identificadores son elementos textuales (tambin
llamados smbolos) que nombran entidades del lenguaje. Algunas de las de entidades que
un identificador puede denotar son las variables, las constantes, los tipos de dato, las
etiquetas, las subrutinas (procedimientos y funciones) y los paquetes.
En muchos lenguajes algunas secuencias tienen la forma lxica de un identificador pero
son conocidos como palabras clave (o palabras reservadas). Lo habitual es que si un
identificador se corresponde con una palabra clave o reservada, ste ya no pueda
utilizarse para referirse a otro tipo de entidades como variables o constantes (en unos
pocos lenguajes, como PL/1, esta distincin no est del todo clara).
Los lenguajes informticos normalmente ponen restricciones en qu caracteres pueden
aparecer en un identificador. Por ejemplo, en las primeras versiones de C y C++, los
identificadores estn restringidos para que sean una secuencia de una o ms letras
ASCII, dgitos numricos (que en ningn caso deben aparecer como primer carcter) y
barras bajas. Las versiones posteriores de estos lenguajes, as como otros muchos ms
lenguajes modernos soportan casi todos los caracteres Unicode en un identificador. Una
restriccin comn es que no est permitido el uso de espacios en blanco ni operadores
del lenguaje.
En lenguajes de programacin compilados, los identificadores generalmente son
entidades en tiempo de compilacin, es decir, en tiempo de ejecucin el programa
compilado contiene referencias a direcciones de memoria y offsets ms que
identificadores textuales (estas direcciones de memoria u offsets, han sido asignadas por
el compilador a cada identificador).
En lenguajes interpretados los identificadores estn frecuentemente en tiempo de
ejecucin, a veces incluso como objetos de primera clase que pueden ser manipulados y
evaluados libremente. En Lisp, stos se llaman smbolos.
Los compiladores e intrpretes normalmente no asignan ningn significado semntico a
un identificador basado en la secuencia de caracteres actual. Sin embargo, hay
excepciones. Por ejemplo:
En Perl una variable se indica utilizando un prefijo llamado sigil, que especifica
aspectos de cmo se interpreta la variable en las expresiones.
En Ruby una variable se considera automticamente como inmutable si su
identificador empieza con una letra mayscula.
En Fortran, la primera letra de una variable indica si por defecto es creada
como entero o como flotante.

3.5 ALMACENAMIENTO, DIRECCIONAMIENTO Y REPRESENTACION DE


MEMORIA.
Almacenamiento

La computadora posee determinada cantidad de almacenamiento interno denominado


memoria principal, memoria RAM o memoria voltil. Esta memoria se activa al encender
la computadora y se desactiva al apagarla. Para que un programa se ejecute, debe
cargarse en la memoria principal, as como los datos necesarios. Como es ms costosa,
es un recurso escaso donde slo se almacenan los datos que se requieren de inmediato,
y los dems se relegan a los dispositivos de almacenamiento externo, donde la capacidad
de almacenamiento es mayor, pero tambin el tiempo de recuperacin. Por otra parte, el
costo del almacenamiento externo es ms bajo.
Direccionamiento

La memoria principal de la computadora se divide en pequeas unidades de tamao


uniforme denominadas palabras, que tienen una direccin nica.
Cada una de stas palabras es capaz de almacenar una unidad de informacin (como,
por ejemplo, resultados numricos), y determina el nmero ms grande y el ms pequeo
que puede almacenar.
El tamao de la palabra depende de la computadora, pero siempre se especifica en
mltiplos de 8 bits. As, existen computadoras con tamaos de palabra de 8, 16, 32 y 64
bits. Cada palabra de la memoria principal tiene una direccin fija que va de cero hasta el
nmero total de palabras - 1. Las direcciones de memoria sirven para identificar cada
palabra individualmente, de tal manera que pueda accederse al dato contenido en ella. A
fin de simplificar su comprensin, las memorias se consideran como una hilera de
palabras.

Representacin en memoria

La representacin en memoria de los caracteres no reviste mayor complicacin, debido a


que los cdigos utilizados, como el ASCII (American Standard Code for Information
Interchange), les asignan valores enteros positivos.

En el caso de los datos numricos hay que considerar la distincin entre nmeros
negativos y positivos, y la que hay entre nmeros de punto flotante y enteros. Los signos
se manejan normalmente mediante el bit ms significativo de la palabra (el situado a la
extrema izquierda), y se le denomina bit de signo. Cuando el bit de signo almacena un
cero, el nmero se considera positivo; cuando almacena un uno el nmero es negativo.

Es por esto que, si el tamao de la palabra es de m bits, quedan m-1 bits para representar
la magnitud del nmero almacenado. Los nmeros de punto flotante se manejan en
formato logartmico, con un nmero fijo de bits para la base y otro para la mantisa. El
estndar para los nmeros de punto flotante lo fija el IEEE. Debido al formato logartmico,
los clculos que se hacen con tipos de punto flotante no son tan precisos como los que se
hacen con tipos enteros.
Secure Digital (SD).

Estn basadas en el formato Multimedia Card (MMC). Las tarjetas


marcadas como HC (High Capacity) funcionan a alta velocidad y tienen
tasas de transferencia de datos muy altas; algunas cmaras fotogrficas
digitales requieren este tipo de tarjetas para poder grabar video con
fluidez o para capturar mltiples fotografas en sucesin rpida.
Starmedia.

Tambin conocidas como (Tarjeta de Disco Floppy en Estado Slido).


Son duraderas y su apariencia fsica es similar a la de un disquete, pero
con el tamao aproximado de una estampilla de correo. Su forma impide
introducirlas en su ranura en sentido contrario.

Memory Stick.

Tarjetas digitales con memoria flash diseadas con la compaa


Sony. Adems de ser aptas para cmaras digitales de esta marca,
las Memory Stick se pueden utilizar en una gran variedad de
aparatos digitales. Estas tarjetas sirven para almacenar imgenes,
msica, datos, textos y grficos Ofrecen una alta velocidad de
acceso y o necesitan ningn dispositivo para la reproduccin, pues
disponen de un adaptador para disquetes.
Minini SD FLASH MEMORY.

Por su tamao tan reducido, este formato de tarjeta se utiliza


especialmente en telfonos celulares. Combina gran capacidad de
almacenamiento, alta tasa de transferencia de datos, confiabilidad,
seguridad y bajo consumo de energa. Tambin se utiliza en
reproductores de audio, cmaras digitales (por medio de un
adaptador) y asistentes digitales personales (PDA).
Micro SD CARD.

Este formato de tarjeta solo mide 10.9mm x 14.9mm x 1mm y


puede almacenar vrios GB de informacin. Al igual que el MINI SD,
es my utilizando en telfonos celular.

3.6 PROPOSICION DE ASIGNACION.


Proposicin de asignacin es una letra o una frase, a la cual, se le puede asignar dos
valores: o bien es verdadera, o bien es falsa, pero no ambas cosas. La forma de una
proposicin de asignacin es: a=b, donde b es una expresin permitida, y a es el valor
donde se dejar el valor resultante de evaluar b.
El signo igual, =, de a=b tiene el sentido de asignar a la variable a el valor que resulte de
evaluar la expresin permitida b. Es decir, a=b tiene el sentido a b, que no es la misma
definicin usada en matemticas para =.
Lo mismo que en otros lenguajes de programacin, en C se tienen los operadores
aritmticos ms usuales (+ suma, - resta, * multiplicacin, / divisin y % mdulo).
El operador de asignacin es =, por ejemplo: i=4; ch='y'; Incremento ++ y decremento --
unario. Los cuales son ms eficientes que las respectivas asignaciones.
Por ejemplo: x++ es ms rpido que x=x+1. Los operadores ++ y -- pueden ser prefijos o
postfijos. Cuando son prefijos, el valor es calculado antes de que la expresin sea
evaluada, y cuando es postfijo el valor es calculado despus que la expresin es
evaluada.
En el siguiente ejemplo, ++z es prefijo y -- es postfijo:
int x,y,z;
main()
{
x=( ( ++z ) - ( y-- ) ) % 100;
}
Que es equivalente a:
int x,y,z;
main()
{
z++;
x = ( z-y ) % 100;
y--;
}
El operador % (mdulo o residuo) solamente trabaja con enteros, aunque existe una
funcin para flotantes (15.1 mod () ) de la biblioteca matemtica.
El operador divisin / es para divisin entera y flotantes. Por lo tanto hay que tener
cuidado. El resultado de x = 3 / 2; es uno, an si x es declarado como float. La regla es: si
ambos argumentos en una divisin son enteros, entonces el resultado es entero. Si se
desea obtener la divisin con la fraccin, entonces escribirlo como: x = 3.0 / 2; o x = 3 /
2.0 y an mejor x = 3.0 / 2.0.
Por otra parte, existe una forma ms corta para expresar clculos en C. Por ejemplo, si se
tienen expresiones como: i = i + 3; o x = x * (y + 2);
Por lo que podemos reescribir las expresiones anteriores como: i += 3; y x *= y + 2;
respectivamente.

3.7 OPERADORES, OPERANDOS Y EXPRESIONES.


Los operadores especifican el tipo de clculo que se desea realizar con los elementos de
una frmula. Microsoft Excel incluye cuatro tipos diferentes de operadores de clculo:
aritmtico, comparacin y referencia.
Operadores aritmticos
Para ejecutar las operaciones matemticas bsicas como suma, resta o multiplicacin,
combinar nmeros y generar resultados numricos, utilice los siguientes operadores
aritmticos.
Operadores de comparacin
Se pueden comparar dos valores con los siguientes operadores. Cuando se comparan
dos valores utilizando estos operadores, el resultado es un valor lgico: VERDADERO o
FALSO.
Operadores de referencia
Combinan rangos de celdas para los clculos.
OPERANDO: En matemticas, un operando es una de las entradas (argumentos) de un
operador.

3.8 PRIORIDAD DE OPERADORES, EVALUACION DE EXPRESIONES.


Determina el orden en que habrn de realizarse las operaciones en una expresin
determinada. Para obtener la prioridad se deben conocer las siguientes reglas:
Las operaciones que estn encerradas entre parntesis se evalan primero. Si existen
diferentes parntesis anidados (interiores unos a otros), las expresiones ms internas se
evalan primero. En caso de coincidir varios operadores de igual prioridad en una
expresin o sub-expresin encerrada entre parntesis, el orden de prioridad en este caso
es de izquierda a derecha.
Cuando se desea realizar una operacin con baja prioridad por adelantado, debe
agruparse a los operandos involucrados. Los parntesis tienen prioridad sobre el resto de
las operaciones. Determina el orden en que habrn de realizarse las operaciones en una
expresin determinada.
Para obtener la prioridad se deben conocer las siguientes reglas:
Las operaciones que estn encerradas entre parntesis se evalan primero. Si existen
diferentes parntesis anidados (interiores unos a otros), las expresiones ms internas se
evalan primero.
En caso de coincidir varios operadores de igual prioridad en una expresin o sub-
expresin encerrada entre parntesis, el orden de prioridad en este caso es de izquierda a
derecha.
Cuando se desea realizar una operacin con baja prioridad por adelantado, debe
agruparse a los operandos involucrados.
A continuacin se muestra una pequea tabla donde se ilustra el orden de prioridad:
3.9 ELABORACION DE PROGRAMAS.
Se puede crear un archivo que contenga el programa completo, como en los ejemplos
que se tienen ms adelante. Se puede usar cualquier editor de textos ordinario con el que
se est familiarizado. Un editor disponible en la mayora de los sistemas UNIX es vi, y en
Linux se puede usar pico. Por convencin el nombre del archivo debe terminar con ``.c''
Por ejemplo: Mi programa C Pro. Prueba. C
El contenido del archivo deber obedecer la sintaxis de C.

Ejecucin de programa.
El siguiente estado es correr el programa ejecutable. Para correr un ejecutable en UNIX,
simplemente se escribe el nombre del archivo que lo contiene, en este caso programa (o
a.out). Con lo anterior, se ejecuta el programa, mostrando algn resultado en la pantalla.
En ste estado, podra haber errores en tiempo de ejecucin (run-time errors), tales como
divisin por cero, o bien, podran hacerse evidentes al ver que el programa no produce la
salida correcta. Si lo anterior sucede, entonces se debe regresar a editar el archivo del
programa, recompilarlo, y ejecutarlo nuevamente. Sin embargo, se da alguna informacin
bsica para algunos programas de C. El preprocesador acepta el cdigo fuente como
entrada y es responsable de:
Quitar los comentarios.
Interpretar las directivas del preprocesador las cuales inician con #.
Por ejemplo:
#include -- incluye el contenido del archivo nombrado. Estos son usualmente llamados
archivos de cabecera (header).
Por ejemplo:
#include <math.h> -- Archivo de la biblioteca estndar de matemticas.
#include <stdio.h> -- Archivo de la biblioteca estndar de Entrada/Salida.
#define -- define un nombre simblico o constante. Sustitucin de macros.
#define TAM_MAX_ARREGLO 100
Compilador de C
El compilador de C traduce el cdigo fuente en cdigo de ensamblador. El cdigo fuente
es recibido del preprocesador.
Ensamblador.
El ensamblador crea el cdigo fuentei o los archivos objeto. En los sistemas con UNIX se
podrn ver los archivos con el sufijo .o.

Ligador
Si algn archivo fuente hace referencia a funciones de una biblioteca o de funciones que
estn definidas en otros archivos fuentes, el Ligador combina estas funciones (con main
()) para crear un archivo ejecutable.

Bibliografa
http://moodle2.unid.edu.mx/dts_cursos_mdl/lic/TI/PE/S01/PE01_Lectura.pdf.
https://prezi.com/s0zmr_9dr6p8/39-elaboracion-de-programas/.
http://fundamdeprog-anarquia88.blogspot.mx/2007/12/45-prioridad-de-operadores-
evaluacin-de.html.
http://algoritmosylenguajes.blogspot.mx/2008/05/unidad-iii_31.html.
https://prezi.com/1zmzrlehgzv5/124-proposicion-de-asignacion/.

INDICE

3.1 INTRODUCCION A LA PROGRAMACION DE UN LENGUAJE ESTRUCTURADO.

3.2 ESTRUCTURA BASICA DE UN PROGRAMA.

3.3 TIPOS DE DATOS.

3.4 IDENTIFICADORES.

3.5 ALMACENAMIENTO, DIRECCIONAMIENTO Y REPRESENTACION DE MEMORIA.

3.6 PROPOSICION DE ASIGNACION.

3.7 OPERADORES, OPERANDOS Y EXPRESIONES.

3.8 PRIORIDAD DE OPERADORES, EVALUACION DE EXPRESIONES.


3.9 ELABORACION DE PROGRAMAS.

Potrebbero piacerti anche