Sie sind auf Seite 1von 29

UNIVERSIDAD TCNICA DE AMBATO.

Facultad De Ciencias Humanas Y De La Educacin.

DOCENCIA EN INFORMTICA Y COMPUTACIN.

PROGRAMACIN I Generalidades de la programacin estructurada.


ALUMNA: Jhoselyn Zapata Segundo Semestre. Elemento 1 ING: WILMA GAVILANES

Agosto 2013- Febrero 2014


1

INDICE.
INTRODUCCION........................................................................................................................ 3 CONCEPTO BSICO SOBRE PROGRAMACIN............................................................... 4 LENGUAJE DE PROGRAMACION......................................................................................... 4 CARACTERSTICAS DE C....................................................................................................... 5 FORMA DE UN PROGRAMA EN C ........................................................................................ 6 Variables: ................................................................................................................................. 6 Funciones: ............................................................................................................................... 7 ALGUNAS CONSIDERACIONES AL ESCRIBIR UN PROGRAMA .................................. 9 Ensamblador ......................................................................................................................... 10 Ligador ................................................................................................................................... 11 USO DE LAS BIBLIOTECAS.................................................................................................. 11 ESTRUCTURA ......................................................................................................................... 12 TIPOS DE INSTRUCCIONES ................................................................................................ 12 TIPOS DE DATOS ............................................................................................................... 15 Datos de tipo cadena ........................................................................................................... 16 ESTRUCTURAS DE CONTROL EN C++ ............................................................................ 16 ESTRUCTURA SECUENCIAL ............................................................................................... 17 ESTRUCTURA CONDICIONAL, SELECTIVA O ALTERNATIVA .................................... 17 Instruccin IF ......................................................................................................................... 17 Instruccin switch ................................................................................................................. 18 ESTRUCTURAS REPETITIVAS O ITERATIVAS ............................................................... 19 Instruccin while ................................................................................................................... 20 Instruccin do... while. ......................................................................................................... 20 Instruccin for........................................................................................................................ 21 BUCLES ANIDADOS. .............................................................................................................. 22 FUNCIONES EN C++ .............................................................................................................. 23 MATRIZ ...................................................................................................................................... 26 VECTOR .................................................................................................................................... 26 Bibliografa. ................................................................................................................................ 29

INTRODUCCION. C++ es un lenguaje de programacin orientado a objetos que toma la base del lenguaje C y le agrega la capacidad de abstraer tipos como en Smalltalk. La intencin de su creacin fue el extender al exitoso lenguaje de programacin C con mecanismos que permitieran la manipulacin de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje hbrido [por? fusionar con el siguiente]. Posteriormente se aadieron facilidades de programacin genrica, que se sum a los otros dos paradigmas que ya estaban admitidos (programacin estructurada y la programacin orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programacin multiparadigma.

CONCEPTO BSICO SOBRE PROGRAMACIN

CONCEPTO BSICO SOBRE PROGRAMACIN

Un programa es un conjunto de rdenes para un ordenador.

Estas rdenes se le deben dar en un cierto lenguaje, que el ordenador sea capaz de comprender.

LENGUAJE DE PROGRAMACION.

LENGUAJES DE PROGRAMACION

notacin o conjunto de caracteres caracteres que se combinan entre si smbolos siguiendo las reglas de una sintaxis predefinida

CARACTERSTICAS DE C

C proporciona distintos tipos de datos bsicos

Lenguaje estructurado que permite muchas posibilidades en programacin. Permiten definir las tareas de un programa y codificarlas por separado

Caracteristicas de c

Las maysculas y las minsculas son diferentes.

Tiene la ventaja de usar compilador en lugar de intrprete, es ms rpido.

Palabras claves

Auto, break, case, char, const, continue, default, do, doubl, else, enum, extern, float, for, goto, if,.Int. Long, register, return, short, signed, sizeof, static, struct, switch, typedef, unin, unsigned, void, volatile, while
5

TURBO C permite partir un programa en muchos archivos y que cada uno sea compilado por separado. Una vez que han sido compilados todos los programas se enlazan entre s, junto con las rutinas de la biblioteca, para formar el cdigo objeto completo. La ventaja de la compilacin separada es que un cambio en el cdigo de uno de los archivos no requiere la recopilacin del programa entero. En cualquier proyecto, salvo en los ms simples, el ahorro de tiempo es sustancial.-

FORMA DE UN PROGRAMA EN C Un programa en C, cualquiera sea su tamao, est formado por funciones y variables.

Variables: almacenan los valores utilizados durante los clculos.

Funciones: contienen proposiciones que indican las operaciones de clculo que se van a realizar, normalmente se les puede dar cualquier nombre, excepto la funcin main(), que como ya dijimos debe estar en todo programa y es la primera en ejecutarse.

(1) indica al compilador que debe incluir informacin acerca de la biblioteca estndar de E/S (Standard Input-Output). (2) cualquier carcter entre /* y */ es ignorado por el compilador y es tratado como un comentario, estos pueden aparecer en cualquier lugar dnde se pueda colocar un espacio en blanco, un tabulador (\t) o un enter (\n).Obs.: los comentarios no se pueden anidar, por ej., este fragmento de cdigo producira un error de compilacin.

(3) define la funcin main( ), que es la funcin principal del programa, est seguida por un par de parntesis vacos, lo que significa que no hay transferencia de argumentos. En otras funciones entre los parntesis se coloca la lista de argumentos que transfieren valores entre la funcin que llama y la funcin llamada.(4) las proposiciones de main() o de cualquier otra funcin van entre llaves { } (5) en C se deben declarar todas las variables antes de su uso, al principio de la funcin y antes de cualquier proposicin ejecutable. Una declaracin est formada por un nombre de tipo y una lista de variables.(6) proposicin de asignacin, inicializa las variables. Cada proposicin individual termina con ;.(7) se asigna a la variable c el resultado de una operacin aritmtica.(8) main llama a la funcin de biblioteca printf con el argumento:

\n representa el carcter nueva lnea y hace avanzar la impresin al margen izquierdo de la siguiente lnea, printf no proporciona una nueva lnea automticamente (\n representa un solo carcter). Una secuencia de caracteres entre comillas dobles se llama cadena de caracteres o constante de cadena.

ALGUNAS CONSIDERACIONES AL ESCRIBIR UN PROGRAMA

Escoger nombres de variables con significado Utilizar lneas en blanco para separar las distintas secciones de la funcin ALGUNAS CONSIDERACIONES AL ESCRIBIR UN PROGRAMA

Utilizar comentarios

Utilizar sangrado

Espacios en blanco entre los operadores

Mantener una lnea con el posicionamiento de las llaves

Escribir una sentencia por lnea. TURBO C permite escribir varias sentencias en una misma lnea o, por el contrario, espaciar una sentencia en varias lneas, el ejemplo siguiente es vlido:

Ya que el C averigua dnde termina una sentencia y comienza la siguiente por medio de los puntos y coma introducidos, de todas maneras el programa quedar mucho ms legible si se lo escribe teniendo en cuenta las pautas antes mencionadas, o sea:

Ensamblador El ensamblador crea a partir del cdigo fuente los archivos objeto. (.obj)

10

Ligador Si algn archivo fuente hace referencia a funciones de una biblioteca o funciones que estn definidas en otros archivos fuentes.

USO DE LAS BIBLIOTECAS

Bibliotecas estndar de funciones para varias finalidades.

Un programador puede tambin desarrollar sus propias funciones de biblioteca.

USO DE LAS BIBLIOTECAS

Las bibliotecas contienen el cdigo objeto de muchos programas que permiten hacer cosas comunes, como leer el teclado, escribir en la pantalla

Las bibliotecas estn clasificadas por el tipo de trabajos que hacen, hay bibliotecas de entrada y salida, matemticas, de manejo de memoria, de manejo de textos, etc.

11

ESTRUCTURA Un programa escrito en C est compuesto por una o ms funciones. Como ya es sabido, una funcin es un programa que sirve para realizar una tarea determinada, por ejemplo, la funcin scanf sirve para leer datos desde el teclado. Existe una funcin que est presente en todos los programas escritos en C, su misin es marcar el inicio y fin de la ejecucin de cada uno de ellos; es la funcin principal, la primera que se ejecuta; es la funcin main. Su sintaxis "bsica" es: int main() { <bloque_de_instrucciones> } La funcin main contiene al bloque de instrucciones principal de un programa, dentro de los caracteres abrir llave ({) y cerrar llave (}).

TIPOS DE INSTRUCCIONES Un bloque de instrucciones puede estar compuesto por una o ms instrucciones, que, a su vez, pueden ser instrucciones de expresin, de control y/o compuestas nuevamente. Las instrucciones de expresin, tambin conocidas como instrucciones simples o elementales, son aquellas que representan a las acciones ms pequeas (elementales) que se pueden ejecutar en un programa, y siempre van seguidas de un carcter punto y coma ( , el cual indica que la instruccin ha terminado: <instruccin_de_expresin>; Una instruccin de expresin es, en s misma, una expresin. De modo que, la accin que se ejecuta es la evaluacin de dicha expresin: <expresin>;

12

En cuanto a las instrucciones de control, existen de distintos tipos, y todas sirven para modificar el flujo de control de un programa. Veremos que, algunas de ellas deben ir seguidas del carcter punto y coma ( , pero otras no.
Ejemplo: Se quiere escribir un programa que muestre por pantalla un mensaje de saludo: "Hola mundo"

Obsrvese que, el saludo se visualiza justo en la esquina superior izquierda de la pantalla. Ms adelante se estudiar cmo se puede mostrar en otro lugar de la pantalla. En C, el cdigo fuente de dicho programa puede ser:

#include <stdio.h> int main() { printf( "Hola mundo" ); return 0; }

Programa: Hola_mundo Todas las funciones de la biblioteca estndar de C son subprogramas que ya estn compilados, es decir, junto a cualquier compilador de C se acompaan los cdigos objeto de todas las funciones de su biblioteca estndar, pero no sus cdigos fuente. printf( "Hola mundo" ); Para que el compilador conozca la declaracin de la funcin printf, hay que utilizar la directiva del preprocesador #include: #include<stdio.h> En este caso, la directiva #include indica, al preprocesador, que debe incluir, antes de la compilacin, en el cdigo fuente del programa, el contenido del archivo <stdio.h> (stdio, Standard Input/Output). Las funciones de la biblioteca estndar de C estn clasificadas en base a su funcionalidad, y sus

13

declaraciones se agrupan en archivos con extensin (.h), los cuales son llamados archivos de cabecera. Adems de stdio.h, algunos de los archivos de cabecera ms utilizados en C son: math.h, string.h y stdlib.h. En ellos estn escritas, respectivamente, las declaraciones de las funciones matemticas, funciones de cadena y funciones de utilidad de la biblioteca estndar de C. Despus de #include, el nombre del archivo de cabecera se puede escribir entre los caracteres menor y mayor (<stdio.h> , o entre comillas dobles ("stdio.h" . Cuando se escriba entre comillas dobles, el preprocesador buscar dicho archivo en el directorio actual de trabajo, y de no encontrarlo ah, entonces lo buscar en el directorio especificado por el compilador. En el caso de escribirse entre los caracteres menores y mayor, el proceso de bsqueda ser al revs. Toda funcin retorna un valor. En nuestro primer programa se ha escrito: return0; Esto quiere decir que la funcin main devuelve el valor 0. Precediendo a main se ha escrito la palabra reservada int, indicando as, que la funcin retornar un valor de tipo int (entero). intmain() En general, la instruccin return suele ser la ltima del bloque de instrucciones de la funcin main. Al retornar el valor 0, indica (informa al sistema operativo) que el programa finaliz correctamente, es decir, sin producirse ningn error en su ejecucin. La instruccin return es una de las instrucciones de control que existen en C. Por tanto, es una palabra reservada. Despus del valor de retorno (que es una expresin) se debe escribir un punto y coma (. La sintaxis de la instruccin return es: return<expresin>;

14

TIPOS DE DATOS

TIPOS DE DATOS

Datos de tipo entero

Datos de tipo real

Datos de tipo carcter

Datos sin valor

Datos de tipo lgico

(int) es aquel que puede tomar por valor un nmero perteneciente al conjunto de los nmeros enteros

(float o double) es aquel que puede tomar por valor un nmero perteneciente al conjunto de los nmeros reales (R), el cual est formado por los nmeros racionales e irracionales.

(char) es aquel que puede tomar por valor un carcter perteneciente al conjunto de los caracteres que puede representar el ordenador.

valor (void) es un dato que no puede tomar por valor ningn valor, es decir, es un dato vaco (nulo).

puede tomar un valor de verdadero o falso

15

Datos de tipo cadena De todos los tipos de datos que no son bsicos se dice que son derivados, ya que, estn basados en alguno que s lo es. Por ejemplo, los datos de tipo cadena son aquellos que pueden tomar por valor una secuencia de caracteres. En C, el valor de un dato de tipo cadena se debe representar entre comillas dobles (. Ejemplo 5: El ttulo de un libro y el nombre de su autor, son datos de tipo cadena. Ttulo...: "La Odisea" (cadena de 9 caracteres) Autor....: "Homero" (cadena de 6 caracteres) Ejemplo: #include <stdio.h> int main() { int a, b; printf( "Introduzca el primer nmero: " ); scanf( "%d", &a ); printf( "Introduzca el segundo numero: " ); scanf( "%d", &b ); printf( "Los valores son: %d, %d ", a, b ); return 0; }

ESTRUCTURAS DE CONTROL EN C++ Las estructuras de control determinan la secuencia en la que se ejecutarn las instrucciones de un programa. Las estructuras de control se dividen en tres categoras en funcin del flujo de ejecucin:

16

Estructura secuencial. Estructura alternativa o condicional. Estructura iterativa o repetitiva. ESTRUCTURA SECUENCIAL La estructura secuencial est formada por una secuencia de instrucciones que se ejecutan en orden una a continuacin de la otra. Ejemplo: { instruccin 1; instruccin 2; instruccin 3; ..... instruccin N; }

Sin embargo, en caso de que el bloque de sentencias este constituido por una nica sentencia no es obligatorio el uso de las llaves de apertura y cierre ({ }). ESTRUCTURA CONDICIONAL, SELECTIVA O ALTERNATIVA. Las estructuras condicionales controlan si una sentencia o bloque de sentencias se ejecutan, en funcin del cumplimiento o no de una condicin C++ tiene dos estructuras de control para la seleccin, if y switch. Instruccin IF Esta instruccin hace que se ejecuten unas sentencias u otras dependiendo del valor que toma una condicin. Las instrucciones if-else se pueden anidar obtenindose una estructura condicional mltiple:

if(condicion1) instruccin1; else if(condicion2) instruccin2; else if(condicion3) instruccin3; else if(condicion4) instruccion4; else instruccin5; instruccin 6; instruccin 7;

17

En este caso se evala la condicion1; si es cierta, se ejecuta la instruccin1 y se contina por la instruccin 6 despus del bloque de if-else anidados. Si la Instruccin switch La sentencia switch selecciona una de entre mltiples alternativas. La forma general de esta expresin es la siguiente:

switch (expresin) { case constante1: instrucciones; break; case constante 2: instrucciones; break; default: instrucciones; }
En una instruccin switch, expresin debe ser una expresin con un valor entero, y constante1, constante2,..., deben ser constantes enteras, constantes de tipo carcter o una expresin constante de valor entero. Expresin tambin puede ser de tipo char, ya que los caracteres individuales tienen valores enteros Dentro de un case puede aparecer una sola instruccin o un bloque de instrucciones. La instruccin switch evala la expresin entre parntesis y compara su valor con las constantes de cada case. Se ejecutarn las instrucciones de aquel case cuya constante coincida con el valor de la expresin, y contina hasta el final del bloque o hasta una instruccin que transfiera el control fuera del bloque del switch (una instruccin break, o return). Si no existe una constante igual al valor de la expresin, entonces se ejecutan las sentencias que estn a continuacin

18

de default si existe (no es obligatorio que exista, y no tiene porqu ponerse siempre al final). Ejemplo de uso de la instruccin switch en C++. Programa que lee dos nmeros y una operacin y realiza la operacin entre esos nmeros. #include <iostream> using namespace std; int main(void) { int A,B, Resultado; char operador; cout << "Introduzca un numero:"; cin >> A; cout << "Introduzca otro nmero:"; cin >> B; cout <<"Introduzca un operador (+,-,*,/):"; cin >> operador; Resultado = 0; switch (operador) { case '-' : Resultado = A - B; break; case '+' : Resultado = A + B; break; case '*' : Resultado = A * B; break; case '/' : Resultado = A / B; //suponemos B!=0 break; default : cout << "Operador no valido"<< endl; } cout << "El resultado es: "; cout << Resultado << endl; system("pause"); }

ESTRUCTURAS REPETITIVAS O ITERATIVAS. C++ dispone de tres estructuras repetitivas: While, Do-while

19

For. Instruccin while. while (condicion) { instruccin 1; .............. instruccin N; }

Ejecuta una instruccin o un bloque de instrucciones cero o ms veces, dependiendo del valor de la condicin. Se evala la condicin, y si es cierta, se ejecuta la instruccin o bloque de instrucciones y se vuelve a evaluar la condicin; pero si la condicin es falsa, se pasa a ejecutar la siguiente instruccin despus del while. Ejemplo. /*Programa que lee nmeros hasta que se lee un negativo y muestra la Suma de los nmeros ledos */ #include <iostream> using namespace std; int main(void) { int suma, num; suma = 0; cout << "Introduzca un numero: "; cin >> num; while (num >= 0) { suma = suma + num; cout << "Introduzca un numero: "; cin >> num; } cout << endl << "La suma es: " << suma << endl; system("pause"); } do { instruccin 1; .............. instruccin N; } while (condicion);

Instruccin do... while.

20

Ejecuta una instruccin o un bloque de instrucciones, una o ms veces, dependiendo del valor de la condicin. Si la condicin es cierta, se vuelve a ejecutar la instruccin o bloque de instrucciones, y si es falsa, pasa a ejecutarse la siguiente instruccin despus del do-while. Ejemplo de instruccin do while en C++. Programa que lee un nmero entero. El nmero debe estar comprendido entre 1 y 100. /* Lee un nmero entre 1 y 10 */ #include <iostream> using namespace std; int main(void) { int numero; do { cout << "Introduzca un numero entre 1 y 100: "; cin >> numero; } while (numero < 1 || numero > 100); }

Instruccin for. Un bucle for hace que una instruccin o bloque de instrucciones se repitan un nmero determinado de veces mientras se cumpla la condicin. for(inicializacin; condicion; incremento/decremento) { instruccin 1; ........... instruccin N; }

Ejemplo de instruccin for en C++. Programa que muestra los nmeros del 1 al 10. /* Muestra los nmeros de 1 a 10 */

21

#include <iostream> using namespace std; int main(void) { int n; for (n = 1; n <= 10; n++) { cout << n << endl; } system("pause"); }

Se ha de tener cuidado y al escribir el punto y coma (;) despus del parntesis final del bucle for.

BUCLES ANIDADOS. Hablamos de bucles anidados cuando se incluyen instrucciones for, while o dowhile unas dentro de otras. Ejemplo. Programa que muestra el primer nmero perfecto mayor que 100.Un nmero es perfecto cuando la suma de sus divisores excepto l mismo es igual al propio nmero. Por ejemplo 6 es perfecto ya que sus divisores son 1, 2 ,3 y suman 6 #include <iostream> using namespace std; int main(void) { int nmero, cont, suma; bool encontrado; encontrado = false; numero = 101; while (!encontrado) { suma = 1; for (cont = 2; cont < numero; cont++) { if (numero % cont == 0) { suma = suma + cont; } } if (suma == numero) { encontrado = true; } else { numero++; } } cout << "El primero numero perfecto mayor que 100 = " << numero << endl; 22 system("pause"); }

FUNCIONES EN C++ Primero pedimos un nombre, lo guardamos en una variable y se le mandamos a la funcin para que lo muestre. #include<iostream> using namespace std; void hola(char nombre[50]) { cout << "Hola " << nombre << "!"; } int main() { char nombre[50]; cout << "Cul es tu nombre?: "; cin.getline(nombre, 50, '\n'); hola(nombre); }

funciones
Reciben y Retornan Ahora queremos que No reciben ni retornan Para eso tenemos que nuestra funcin Retornan y No Reciben hacer una funcin Las ms sencillas. Para nicamente sume, el usarlas slo tenemos capaz de recibir datos, Pedir los nmeros en la main se va a encargar entonces la sintaxis que saber cmo funcin, pero mostrar de pedir los nmeros y cambia un poco: crearlas y cmo el resultado en el sumar los resultados. main. Para eso llamarlas. Una funcin Tipo nombre Para eso necesitamos necesitamos una se crea de esta forma (tipo_var1 que nuestra funcin funcin que retorne. general dato (int, float, nombre_var1, reciba las variables y void, char) tipo_var2 adems retorne el nombre_var2) {} resultado. Reciben y No Retornan

23

:No recibe ni retorna. #include<iostream> using namespace std; void sumar() { int num1, num2, r; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; r = num1 + num2; cout << "La suma es " << r; } int main() { sumar(); }

Recibe y no retorna. #include<iostream> using namespace std; void sumar(int num1, int num2) { int r; r = num1 + num2; cout << "La suma es " << r; }

int main()
{ int num1, num2; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; . } sumar(num1, num2);

24

recibe y retorna #include<iostream> using namespace std; int sumar() { int num1, num2, r; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; r = num1 + num2;

return r;
} int main() { int r; r = sumar(); cout << "La suma es " << r; }

Las funciones de la librera math.h son en su mayora de este tipo. sqrt(); pow(); sin(); #include<iostream> using namespace std; int sumar(int num1, int num2) { return num1 + num2; } int main() { int num1, num2; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; cout << "La suma es " << sumar(num1, num2); }

25

MATRIZ

Es un vector de vectores

Varios vectores consecutivos ordenados en la memoria

La primera fila como un vector, y despus la otra sucesivamente, etc

Existen vectores bidimensionales y tridimensionales.

26

VECTOR

Contenedor de secuencias del mismo tipo. Ingresar elementos individuales Elementos ordenados en una secuencia lineal estricta.

Aadir y eliminar elementos de secuencia

VECTOR

Capacidad de cambio de tamao consumiendo ms memoria.

Manipular sobre los elementos en cualquier orden. Permite que se expanda y contraiga como sea necesario.

Almacenamiento de vectores es automtico.

27

SINTAXIS PARA CREAR UN VECTOR

PLANTILLA: Tipo de los elementos o el modelo de memoria ms simple de asignacin.

VECTOR[X]:Unidi ELEMENTO:var [TAMAO]:Rep mensional, el iable, constante resenta la ndice se utilizados para cantidad de representara de definir la elementos asignacin de contenidos en el forma grfica y el nmero de almacenamiento. vector. elementos.

Ejemplo
#include <iostream> using namespace std; int main() { int dim; cout << "Ingresa la dimension del vector" << endl; cin >> dim; // Supongamos que ingrese 10 int vector[dim]; // mi vector es de tamanyo 10 for(int i = 0; i < dim; i++){ vector[i] = i * 10; cout << vector[i] << endl; } return 0; }

28

Bibliografa. http://c.conclase.net/ http://es.kioskea.net/forum/affich-734903-para-que-sirve-el-programa-c http://www.sisoft.ucm.es/Manuales/C++.pdf http://es.wikipedia.org/wiki/Vector_(inform%C3%A1tica) http://trevinca.ei.uvigo.es/~jgarcia/TO/cursilloCpp/4_vectores_basico.html http://ronnyml.wordpress.com/2009/07/04/vectores-matrices-y-punteros-en-c/ http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C%2B%2B/Funciones http://codigoc.org/ http://www.unav.es/adi/UserFiles/File/80971550/4.Funciones.pdf

29