25
1 PROGRAMACIÓN ESTRUCTURADA EN LENGUAJE C++ AUTOR: JOHANA VARGAS FECHA: 21/10/2013 PERIODO: SEP 2013-FEB 2014

Programacion estructurada

Embed Size (px)

Citation preview

Page 1: Programacion estructurada

1

PROGRAMACIÓN

ESTRUCTURADA

EN LENGUAJE C++

AUTOR: JOHANA VARGAS

FECHA: 21/10/2013

PERIODO: SEP 2013-FEB 2014

Page 2: Programacion estructurada

2

INDICE

Contenido

INTRODUCCIÓN A LA PROGRAMACIÓN ...................................................................4

LENGUAJE DE PROGRAMACIÓN C++ .........................................................................5

CARACTERÍSTICAS .........................................................................................................8

...................................................................................................................... 10 VENTAJAS

............................................................................................................... 10 DESVENTAJAS

VARIABLES..................................................................................................................... 10

Nombres de las variables ................................................................................................ 11

Declaración de variables .................................................................................................. 12

Inicialización de variables................................................................................................ 12

Tipos de Datos................................................................................................................ 13

Operadores aritméticos ................................................................................................... 14

Operadores lógicos.......................................................................................................... 14

LIBRERÍAS....................................................................................................................... 14

La función printf y las variables ........................................................................................... 15

La función gotoxy ............................................................................................................... 16

SENTENCIAS ....................................................................................................................... 16

TIPOS:................................................................................................................................ 16

Sentencias de selección ...................................................................................................... 16

IF: .................................................................................................................................. 16

SWITCH.......................................................................................................................... 18

REPETITIVAS:...................................................................................................................... 19

FOR................................................................................................................................ 19

CONDICIONANTES: ............................................................................................................. 19

Page 3: Programacion estructurada

3

WHILE ............................................................................................................................ 19

DO WHILE ...................................................................................................................... 20

RETURN ......................................................................................................................... 21

BREAK ............................................................................................................................ 21

EXIT ............................................................................................................................... 21

CADENAS DE FORMATO ...................................................................................................... 22

SECUENCIA DE ESCAPE ....................................................................................................... 22

FUNCIONES ................................................................................................................... 23

FUNCIONES CON VOID COMO ARGUMENTO. .................................................... 23

Bibliografía:........................................................................................................................ 25

Page 4: Programacion estructurada

4

INTRODUCCIÓN A LA PROGRAMACIÓN

Sobre los últimos 50 años, los idiomas que programan han evolucionado del

código binario de máquina a herramientas poderosas que crean las

abstracciones complejas. Es importante entender por qué los idiomas han

evolucionado, y qué capacidades que los idiomas más nuevos nos dan.

Un lenguaje de programación es una técnica estándar de comunicación que

permite expresar las instrucciones que han de ser ejecutadas en una

computadora

Estas instrucciones permiten la construcción de programas con los cuales

podemos realizar operación de entrada y salida, almacenamiento, cálculos y

lógica de comparación.

Un lenguaje de programación permite a un programador especificar de manera

precisa: sobre qué datos una computadora debe operar, cómo deben ser estos

almacenados y transmitidos y qué acciones debe tomar bajo una variada gama

de circunstancias. Todo esto, a través de un lenguaje que intenta estar

relativamente próximo al lenguaje humano o natural, tal como sucede con el

lenguaje Léxico

En sus inicios, la programación de computadoras se basó exclusivamente en el

modelo imperativo (también denominado procedimental), que semeja más la

forma en que la máquina maneja las instrucciones u órdenes.

Conforme la programación de computadoras fue utilizándose para resolver

nuevos tipos de problemas, se requirió la creación de nuevos modelos o

paradigmas para el desarrollo de las aplicaciones.

La programación orientada a objetos es una forma de concebir un programa de

computadora. Se puede pensar en un programa como una lista de instrucciones

que le indica a la computadora qué hacer, o un paquete de pequeños programas

que responden a eventos específicos indicados por la entrada del usuario.

La programación orientada a objetos ve a un programa como un conjunto de

objetos que cooperan entre sí para resolver un problema.

Page 5: Programacion estructurada

5

LENGUAJE DE PROGRAMACIÓN C++

C++ es un lenguaje de programación orientado a objetos. Se

suele decir que es un lenguaje híbrido, ya que permite la

programación estructurada.

Los compiladores de C++ generan código nativo con un alto

grado de optimización en memoria y velocidad, lo que lo

convierte en uno de los lenguajes más eficientes.

Es un lenguaje de nivel intermedio, pudiéndose utilizar tanto

para escribir software de bajo nivel, como drivers y

componentes de sistemas operativos, como para el desarrollo

rápido de aplicaciones, según el marco de trabajo con el que se

disponga, como VCL de Borland C++ Builder.

Page 6: Programacion estructurada

6

Una de las características más

interesantes del lenguaje es la

sobrecarga de operadores. Es decir que a

los operadores intrínsecos del lenguaje

se les puede redefinir la semántica: se

pueden escribir funciones que en vez de

tener un nombre, se asocian a un

operador, que debe tener por lo menos

un parámetro de tipo clase.

Un programa C puede

estar formado por

diferentes módulos o

fuentes. Es conveniente

mantener las fuentes de

un tamaño no muy

grande, para que la

compilación sea rápida.

La libre utilización de

punteros por parte de los

programadores, aporta

eficiencia, pero es una fuente

de errores de lógica. Por este

motivo, lenguajes derivados

de C++, como C# y Java,

quitaron este recurso y solo

permiten referencias a objetos

Page 7: Programacion estructurada

7

Page 8: Programacion estructurada

8

CARACTERÍSTICAS

Las principales características del Lenguaje C son:

Permite la separación de un programa en módulos que admiten compilación

independiente.

Originalmente el Lenguaje C estuvo muy ligado al sistema operativo UNIX

como se había mencionado antes que, en su mayor parte, está escrito en C. Más

adelante se comenzó a utilizar en otros sistemas operativos para programar

editores, compiladores, etc. Aunque se le conoce como un lenguaje de

programación de sistemas, no se adapta mal al resto de aplicaciones. De hecho,

Hoy en día un alto porcentaje de software para ordenadores personales está

escrito en Lenguaje C. Por ejemplo, el sistema operativo MS-DOS.

Tiene un conjunto completo de

instrucciones de control.

Permite la agrupación de instrucciones

Incluye el concepto de puntero (variable que contiene la dirección

de otra variable).

Los argumentos de las funciones se

transfieren por su valor.

E/S no forma parte del lenguaje, sino que se proporciona a través de una biblioteca de

funciones

Page 9: Programacion estructurada

9

Algunas de las características más importantes que definen el lenguaje y que

han permitido que sea tan popular, como lenguaje de programación son:

Las diversas razones por la cual se ha convertido en un lenguaje de uso

profesional son:

El uso de constructores de alto nivel.

El poder manejar actividades de bajo-nivel.

El generar programas eficientes.

La posibilidad de poder ser compilado en una variedad de

computadoras, con pocos cambios (portabilidad).

Un punto en contra es que tiene una detección pobre de errores, lo cual

en ocasiones es problemático para los principiantes

Uso extensivo de llamadas a funciones.

Tamaño pequeño.

Comandos breves (poco

tecleo).

Lenguaje estructur

ado.

Implementación de apuntadores -

uso extensivo de apuntadores para la memoria,

arreglos, estructuras y

funciones

Programación de

bajo nivel (nivel bit)

Page 10: Programacion estructurada

10

VARIABLES

VENTAJAS

Muy veloz y potente, lo

que permite un

software efectivo

Permite general

programas de fácil

modificación

Posibilita una programación

estructurada o modular

El código fuente se escribe

mayoritariamente en

minúscula

Es un lenguaje

compilado

Produce programas de

código compacto y

eficiente

Es un lenguaje muy

flexible

Muy apropiado para

controlar rutinas hechas

en ensamblador

DESVENTAJAS

Poco legible y

eminentemente críptico

No es recomendable para

desarrollo de páginas Web.

No dispone de editor propio

Elaborar un sistema en C++ es como

construir un rascacielos: tiene buen soporte

y es robusto, pero si existen errores en los

pisos inferiores toda la parte superior se

viene abajo terriblemente.

Page 11: Programacion estructurada

11

Nombres de las variables

A las variables no se les puede dar cualquier nombre, deben seguir estas reglas:

En C, al igual que en otros lenguajes de programación, es importante poder manejar datos. Los datos se almacenan en variables .

Una variable es un identificador o nombre dado por el usuario que contiene un valor numérico, de tipo texto, etc.

El contenido de las variables se puede cambiar en cualquier momento a lo largo de la ejecución del programa

Nombres de las

variables

No se puede poner más que letras de la

'a' a la 'z' (la ñ no vale), números y el

símbolo '_'. Los acentos no valen.

No se pueden poner signos

de admiración, ni de

interrogación...

El nombre de una variable puede

contener números, pero su

primer carácter no puede serlo.

Page 12: Programacion estructurada

12

Ejemplos de nombres de variables válidos:

Camiones, x, numero, x2, valor_residual

Ejemplos de nombres de variables no válidos:

1abc, ?valor, número

Declaración de variables

Ejemplos:

Char una letra;

Int x;

Float numero_pi;

Inicialización de variables

Para guardar un dato dentro de una variable hay que usar el símbolo =.

Ejemplos:

Las variables que se declaran dentro de una función se les llaman variables locales, y sólo pueden ser usadas dentro de esa función.

Las variables se suelen declarar al principio de la función. Para poder usar una variable tiene que haber sido declarada previamente.

Para declarar una variable hay que poner el tipo de datos seguido del nombre que queramos

Se pueden crear todas las variables que se quiera

pero todas deben tener nombres distintos.

Page 13: Programacion estructurada

13

Una letra = 'p';

x = 34;

numero_pi = 3.1415;

Tipos de Datos

Para declara una variable es necesario indicar qué tipo de dato va a contener.

Los tipos de datos que permite el lenguaje C son, entre otros.

Tipos datos: char, int, float, long, long long, short, double, void.

PALABRAS RESERVADAS EN LENGUAJE C++

Tienen un significado especial para el compilador y representan una instrucción

propia de su lenguaje, no se pueden utilizar para identificar variables y se escriben

siempre en minúsculas.

FLOAT : Almacena un valor numérico real,

con decimales. Rango [3.4e-38 , 3.4e38]

INT : Almacena un valor numérico entero (integer). Rango [-32768, 32768]

CHAR : Almacena un carácter ASCII como A, B, C, ... a, b, c, ...

1, 2, ...;( )

OJO: Las variables de tipo CHAR sólo pueden almacenar una

letra y debe estar entre comillas simples ' '.

Page 14: Programacion estructurada

14

Operadores aritméticos

Los operadores que se pueden utilizar con variables int y float son:

+ Suma - Resta * Multiplicación

/ División % Módulo (Resto de la división) ++ Incrementa en 1

-- Decremento en 1

Operadores lógicos

Se pueden hacer comparaciones utilizando los siguientes operadores:

> Mayor que >= Mayor o igual que < Menor que <= Menor o igual que

== Igual que != No igual que && Función lógica Y

|| Función lógica O ! Función lógica NO

LIBRERÍAS

La cadena de control tiene los caracteres que se deben mostrar en la pantalla y

los caracteres de formato que indican cómo mostrar la lista de argumentos.

Assert.h Contiene una macro para el diagnóstico dentro de los programas. Ctype.h Contiene varias funciones para comprobación de tipos y

transformación de caracteres. Errno.h Contiene varias macros usadas para informar de errores.

Limits.h Contienen varias macros que definen constantes para el tamaño de tipo enteros.

Page 15: Programacion estructurada

15

%s Para variables del tipo char

%d Para variables del tipo int

%f Para variables del tipo float

Float.h Contienen varias macros que definen constantes para el tamaño de tipo

flotante. Locale.h Contienen varias macros, funciones y tipos para unidades locales,

como unidad monetaria, tiempo, dígitos, etc. Math.h Contiene una macro y varias funciones matemáticas.

Setjmp.h Contienen declaraciones que proporcionan una forma de evitar la

secuencia normal de llamada y regreso de funciones. Signal.h Contiene un tipo, dos funciones y varias macros para manejar

condiciones excepcionales que aparecen durante la ejecución, tal como una señal de interrupción de una fuente externa o un error en la ejecución.

Stdarg.h Contiene un tipo y tres macros que proporcionan recursos para

recorrer una lista de argumentos de función de tamaño y tipo desconocido. Stddef.h Contiene varios tipos y macros que también están definidas en otras

librerías, como size_t. Stdio.h Contiene tipos, macros y funciones para la realización de tareas de E/S.

Stdlib.h Contiene tipos, macros y funciones para la conversión numérica,

generación de números aleatorios, búsquedas y ordenación, gestión de memoria

y tareas similares.

String.h Contiene tipos, macros y funciones para la manipulación de cadenas

de caracteres. Time.h Contiene tipos, macros y funciones para la manipulación de

información sobre fechas y horas.

La función printf

y las variables

Si queremos mostrar por pantalla el valor de una variable

utilizando printf debemos de utilizar unos caracteres

especiales según el tipo de dato que queramos mostrar:

La función printf tiene la siguiente forma general:

Printf (<cadena de control>, lista de argumentos)

Page 16: Programacion estructurada

16

SENTENCIAS

Sirven para etiquetar una sentencia de forma que el control del

programa pueda ser transferido a ella. Se separan de la sentencia

por dos puntos ":".

TIPOS:

Sentencias de selección

IF:

Significa GO TO (x, y), es decir ir a (x, y), donde (x, y) es una coordenada

de nuestra pantalla. Se suele usar antes de un printf, para poner el texto en

una cierta parte de la pantalla.

Su sintaxis es la siguiente:

Gotoxy (columna, renglón);

La función gotoxy

Page 17: Programacion estructurada

17

La sentencia if (SI,en español) es una sentencia muy usada en los lenguajes de programación. Su funcionamiento es simple. Se evalúa una condición, si es

verdadera se ejecuta un proceso y si es falsa se ejecuta

otro.

Estructura: if(condición) { // proceso 1 } else { // proceso 2 }

El proceso 1 es el que se realiza en caso de que la condición sea verdadera. El proceso 2 no es obligatorio, es decir, puede o no estar, y se ejecuta si la condición es falsa.

Page 18: Programacion estructurada

18

SWITCH

Es una instrucción de decisión múltiple, donde el compilador prueba o busca el valor contenido en una variable contra

una lista de constantes ints o chars.

cuando el computador encuentra el valor de igualdad entre variable y constante, entonces ejecuta el grupo de instrucciones asociados a dicha constante

switch(var int o char)

{

case const1: instrucción(es);

break;

case const2: instrucción(es);

break;

case const3: instrucción(es);

break; ………………

default: instrucción(es);

};

si no encuentra el valor de igualdad entre variable y constante, entonces ejecuta un grupo de instrucciones asociados a un default, aunque este ultimo es opcional.

Page 19: Programacion estructurada

19

REPETITIVAS:

FOR

CONDICIONANTES:

WHILE

Es una sentencia usada en los lenguajes de programación para repeticiones. Con esta sentencia se define una variable numérica y se repite un determinado proceso

la cantidad de veces que se le indica en la declaración de la

sentencia.

for(definición de la variable;numero de veces que se repetirá el proceso;suma numérica del contador) { // proceso que se repite }

En la definición de variable se coloca la variable que utilizaremos para la repetición. El el numero de veces que se repetirá el proceso se coloca la condición mediante la cual se repetirá el proceso.

(MIENTRAS, en español) es una sentencia usada en los

lenguajes de programación para repeticiones. Con esta

sentencia se evalúa una condición y se repite un

determinado proceso hasta que la condición deje de

ser verdadera.

Page 20: Programacion estructurada

20

DO WHILE

Estructura:

while(condición)

{

// proceso

}

En la condición colocaremos la variable afectada por la

condición.

El proceso de realizar mientras que la condición sea

verdadera.

(HACER MIENTRAS, en español) funciona igual que el

While con la diferencia de que radica en que el While

común, el proceso, a menos que se cumpla la

condición puede nunca ejecutarse

Estructura:

do

{

// Proceso

}

while(condición);

El proceso se realizara al menos una vez y

luego se comprobara si la condición es

verdadera, de serlo se repetirá el proceso, de lo

contrario seguirá la ejecución del programa.

Page 21: Programacion estructurada

21

Sentencias de salto

RETURN

BREAK

EXIT

Se usa para volver de una función. Se trata de una

sentencia de salto porque hace que la ejecución vuelva al

punto en que se hizo la llamada a la función. Si hay

algún valor asociado con return, se trata del valor de

vuelta de la función. Si no se especifica un valor de

vuelta, se asume que devuelve un valor sin sentido.

Donde expresión es opcional. Se pueden usar tantas

sentencias return como se quiera en una función. Sin

embargo, la función termina al encontrar el primero,

expresión es opcional. Se pueden usar tantas sentencias

return como se quiera en una función. Sin embargo, la

función termina al encontrar el primero.

Igual que se puede interrumpir un bucle, se puede salir

anticipadamente de un programa usando la función exit ()

de la biblioteca estándar. Esta función da lugar a la

terminación inmediata del programa, forzando la vuelta al

sistema operativo.

Tiene dos usos: para finalizar un case en una sentencia

switch y para forzar la terminación inmediata de un

bucle, saltando la evaluación condicional normal del

ciclo. Cuando se encuentra la sentencia break dentro de

un bucle, el bucle finaliza inmediatamente y el control

sigue en la sentencia posterior al bucle.

Page 22: Programacion estructurada

22

Función exit () es:

Void exit (int código_de_vuelta);

CADENAS DE FORMATO

d, i entero decimal con signo

o entero octal sin signo

u entero decimal sin signo

x entero hexadecimal sin signo (en

minúsculas)

X entero hexadecimal sin signo (en

mayúsculas)

f Coma flotante en la forma [-]dddd.dddd

e Coma flotante en la forma [-]d.dddd

e[+/-]ddd

g Coma flotante según el valor

E Como e pero en mayúsculas

G Como g pero en mayúsculas

c un carácter

s cadena de caracteres terminada en '\0'

% imprime el carácter %

p puntero

SECUENCIA DE ESCAPE

\a Alerta

\b Espacio atrás

\f Salto de página

Page 23: Programacion estructurada

23

\n Salto de línea

\r Retorno de carro

\t Tabulación horizontal

\v Tabulación vertical

\\ Barra invertida

\' Comilla simple

\" Comillas dobles

FUNCIONES

FUNCIONES CON VOID COMO ARGUMENTO.

Una función es un conjunto de líneas de código que realizan

una tarea específica y puede retornar un valor. Las funciones

pueden tomar parámetros que modifiquen su funcionamiento.

Cuando una función es invocada se le pasa el control a la

misma, una vez que esta finalizó con su tarea el control es

devuelto al punto desde el cual la función fue llamada

Page 24: Programacion estructurada

24

Cuando se llama a una función, todos los parámetros con los que la llamamos son copiados y pasados a la función (paso por valor). Esto significa que si la función cambia el valor de los parámetros,

solo lo hace dentro del ámbito de la función.

La función main pasa la dirección de a y b, por lo que a la función

change_values se le pasa una copia de las direcciones

La llamada a la función no ha cambiado el valor de las variables que

se le han pasado

La función cambia las copias de lo que

se le ha pasado. Si queremos pasar

parámetros por referencia hay que pasar punteros a

los datos

Utilizando las direcciones de a y b, la función puede acceder

a los datos directamente.

Para hacer esto,

utilizamos el operador &,

que da la dirección de una variable

ESTRUCTURA:

Page 25: Programacion estructurada

25

Bibliografía:

http://www.gratiszona.com/apuntes/lenguaje-c/09-

funciones.htm

http://cbasesdedatos.blogspot.com/

http://blog.utp.edu.co/jnsanchez/files/2011/03/Palabras-

reservadas-librerias-datos-etc.pdf

http://www.unav.es/adi/UserFiles/File/80971550/2.Sent

encias.pdf

http://www.fismat.umich.mx/mn1/manual/node7.html