Fundamentos de Programación - Unidad II: Introducción a la Programación

JosAntonioSandovalAc 1,599 views 37 slides Aug 12, 2017
Slide 1
Slide 1 of 37
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37

About This Presentation

TECNOLÓGICO NACIONAL DE MÉXICO
Ingeniería en Sistemas Computacionales
Fundamentos de Programación
Unidad II: Introducción a la Programación
Retícula ISIC-2010-224: Programa: AED-1285


Slide Content

TECNOLÓGICO NACIONAL DE MÉXICO Instituto Tecnológico Superior de Guasave Ingeniería en Sistemas Computacionales Unidad II: Introducción a la Programación Mtro. José Antonio Sandoval Acosta Retícula ISIC-2010-224: Programa : AED-1285 FUNDAMENTOS DE PROGRAMACIÓN

FUNDAMENTOS DE PROGRAMACION Competencia : Conoce y aplica un lenguaje de programación para la resolución de problemas.

Marco Histórico de Lenguaje C Creado entre 1970 y 1972 por Brian Kernighan y Dennis Ritchie para escribir el código del sistema operativo UNIX. Desde su nacimiento se fue implantando como el lenguaje de programación de sistemas favorito para muchos programadores, sobre todo por ser un lenguaje que conjugaba la abstracción de los lenguajes de alto nivel con la eficiencia del lenguaje máquina. Los programadores de sistemas que trabajaban sobre MS-DOS y Macintosh también utilizaban C. FUNDAMENTOS DE PROGRAMACIÓN

A mediados de los ochenta el Lenguaje C se convierte en un estándar internacional ISO. Este estándar incluye tanto la definición del lenguaje como una enorme biblioteca de funciones para entrada/salida, tratamiento de textos, matemáticas, etc. A mediados de los ochenta se crea el Lenguaje C++, extensión de C orientada a objetos. El C++ se convierte en estándar ISO en 1998. En el momento actual, el lenguaje C no va a modificarse más. Será el C++ el que incorporará nuevos cambios. FUNDAMENTOS DE PROGRAMACIÓN

Características Orientado a la programación de sistemas Es altamente transportable Es muy flexible Genera código muy eficiente Es muy expresivo (se pueden realizar muchas funciones escribiendo pocas líneas de código) Es muy poco modular FUNDAMENTOS DE PROGRAMACIÓN

El preprocesador Transforma el programa fuente, convirtiéndolo en otro archivo fuente “ predigerido ”. El compilador Convierte el archivo fuente entregado por el preprocesador en un archivo en lenguaje máquina FUNDAMENTOS DE PROGRAMACIÓN

El enlazador Un archivo objeto es código máquina, pero no se puede ejecutar, porque le falta código que se encuentra en otros archivos binarios. El enlazador genera el ejecutable binario, a partir del contenido de los archivos objetos y de las bibliotecas . Las bibliotecas contienen el código de funciones precompiladas , a las que el archivo fuente llama. FUNDAMENTOS DE PROGRAMACIÓN

Bibliotecas estándares El lenguaje C++ es muy simple. Carece de tipos y servicios que forman parte de otros lenguajes. No tiene tipo booleano, ni manejo de cadenas, ni manejo de memoria dinámica. No obstante, el estándar de C++ define un conjunto de bibliotecas de funciones, que necesariamente vienen con todo entorno de compilación de C++ y que satisfacen estos servicios elementales. FUNDAMENTOS DE PROGRAMACIÓN

Las interfaces de estos servicios vienen definidas en unos Archivos Cabeceras ( header files ). El nombre de estos archivos suele terminar en “ .h”   Algunos de los servicios proporcionados por las bibliotecas estándares son: entrada y salida de datos ( stdio.h ) manejo de cadenas ( string.h ) memoria dinámica ( stdlib.h ) rutinas matemáticas ( math.h ) FUNDAMENTOS DE PROGRAMACIÓN

Componentes del lenguaje C ++ Sigue el paradigma de la programación estructurada: Algoritmos + estructuras de datos = programas. Estructuras de datos literales tipos básicos (todos numéricos) tipos enumerados tipos estructurados ( struct , union ) punteros y vectores FUNDAMENTOS DE PROGRAMACIÓN

# include < biblioteca1.h > ... otras bibliotecas ... using namespace std ; ... declaraciones de funciones ... ... definiciones (cuerpos de funciones) ... ... declaraciones de variables globales ... int main ( int argc , char * argv []) { ... instrucciones del main ... cin.get (); return 0; } FUNDAMENTOS DE PROGRAMACIÓN Estructura de un archivo fuente Un archivo fuente en lenguaje C++ tendrá esta estructura típica:

# include < iostream > # include < cstdlib > # include < stdio.h > # include < conio.h > using namespace std ; int main ( int argc , char * argv []) { // código fuente system (" pause"); return 0; } FUNDAMENTOS DE PROGRAMACIÓN Estructura de un archivo fuente Archivo fuente con instrucciones básicas

Tipos de variables en C++: Tipos Numéricos int : -32.768 y +32.767, incluyendo el cero (0) long : - 2.347.483.648 y +2.347.483.647 char : -128 y +127 Todos pueden ser modificados con los calificadores “ signed ” “ unsigned ”. FUNDAMENTOS DE PROGRAMACIÓN

FUNDAMENTOS DE PROGRAMACIÓN

Variables de número real o punto flotante: Un número real ó de punto flotante es aquel que además de una parte entera, posee fracciones de la unidad. FUNDAMENTOS DE PROGRAMACIÓN

Variables tipo Carácter: El lenguaje C++ guarda los caracteres como números de 8 bits de acuerdo a la norma ASCII extendida, que asigna a cada carácter un número comprendido entre 0 y 255. Es común entonces que las variables que vayan a alojar caracteres sean definidas como: char x; FUNDAMENTOS DE PROGRAMACIÓN

Existen una serie de caracteres que no son imprimibles . Un caso típico sería el de "nueva línea" ó ENTER. Con el fin de tener acceso a los mismos es que aparecen ciertas secuencias de escape convencionales. Las mismas están listadas en la tabla 3 y su uso es idéntico al de los caracteres normales, así para resolver el caso de una asignación de "nueva línea " se escribirán los caracteres de la tabla siguiente: FUNDAMENTOS DE PROGRAMACIÓN

FUNDAMENTOS DE PROGRAMACIÓN

Constantes: Es una mala práctica colocar en un programa valores constantes de manera literal, sobre todo, cuando se usa varias veces en un programa, es mejor asignar el valor a una variable y usar dicha variable, la forma de hacerlo es usando la directiva “#define”: Ejemplos: #define PI 3.1416 #define GRV 9.81 FUNDAMENTOS DE PROGRAMACIÓN

Funciones cin y cout : cin es el flujo de entrada estándar que normalmente es el teclado y cout es el flujo de salida estándar que por lo general es la pantalla. Sintaxis: cout << “ El total es: ” << total ; (el texto es entre comillas) iostream es el archivo de encabezado del flujo de entrada/salida. Este archivo debe incluirse cuando se utilicen cin o cout . cin >> variable ; La instrucción cin obtiene un valor desde el teclado. El usuario debe introducir un valor y luego enter . FUNDAMENTOS DE PROGRAMACIÓN

Ejemplo: include < stdio.h > using namespace std ; int main ( int argc , char * argv []) { int i1, i2, sum; cout << “Ingrese el 1er numero entero\n”; cin >> i1; cout << “Ingrese el 2do numero entero\n”; cin >> i2; sum = i1+i2; cout << “\n La suma es ”; cout << sum; system (“pause”); return 0; } FUNDAMENTOS DE PROGRAMACIÓN

FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio: realiza el programa para solucionar el área de un círculo: a=pi*(r*r) utilizar también la directiva #define FUNDAMENTOS DE PROGRAMACIÓN

# include < cstdlib > # include < iostream > # include < stdio.h > # include < conio.h > using namespace std ; int main ( int argc , char * argv []) { float area , radio, PI ; PI=3.1416; cout << "Teclea el Radio del Circulo: \n"<< endl ; cin >> radio; area = PI*radio*radio; cout << "El area del circulo es: "; cout << area << endl ; system ("pause"); return 0; } FUNDAMENTOS DE PROGRAMACIÓN Ejemplo:

Ejercicio : hacer el programa para solucionar el área, el perímetro y la superficie de un triángulo; Fórmulas : área=(b*h)/2 superficie=b*h perímetro=2( b+h ) Nota : debes declarar las variables necesarias para ser capturadas: FUNDAMENTOS DE PROGRAMACIÓN

abs ; sintaxis: int abs ( int x); Macro que devuelve el valor absoluto de un entero. sqrt ; sintaxis: double sqrt ( double x); Calcula la raíz cuadrada. Devuelve la raíz cuadrada de x. Si se llama con un número negativo se produce un error de dominio. atof ; sintaxis: double atof ( const char *s); Convierte cadena a punto flotante. Devuelve el valor contenido en s convertido a tipo double , o 0 si s no puede ser convertido. cabs ; sintaxis: double cabs ( struct complex z); Valor absoluto de un número complejo. Devuelve el valor absoluto de z como un double . ceil ; sintaxis: double ceil ( double x); Redondea por arriba. Devuelve el menor entero mayor o igual que x. exp ; sintaxis: double exp ( double x); Calcula e elevando a la x- éxima potencia. fabs ; sintaxis: double fabs ( double x); Valor absoluto de valor en punto flotante. floor ; sintaxis: double floor ( double x); Redondea por abajo. Devuelve el mayor entero que no es mayor que x. FUNDAMENTOS DE PROGRAMACIÓN

fmod ; sintaxis: double fmod ( double x, double y); Calcula x módulo y. labs ; sintaxis: long int labs ( long int x); Calcula el valor absoluto de un long . ldexp ; sintaxis: double ldexp ( double x, int exp ); Calcula el producto entre x y 2 elevado a exp . modf ; sintaxis: double modf ( double x, double * parte_entera ); Descompone en parte entera y parte fraccionaria. La función modf () descompone x en sus partes entera y fraccionaria. Devuelve la parte fraccionaria y sitúa la parte entera en la variable apuntada por parte_entera . pow ; sintaxis: double pow ( double base , double exponente ); Función potencia, x elevado a y); Devuelve base elevado a exponente. Se produce un error de dominio si base es 0 y exponente es menor o igual que 0. También puede ocurrir si base es negativo y exponente no es entero. Un desbordamiento produce un error de rango. pow10 ; sintaxis: double pow10 ( int p); Función potencia, 10 a la p. Devuelve 10 elevado a p. FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio : haga el programa que obtenga el cuadrado, el cubo y el valor absoluto de un número. FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio: hacer un programa que convierta una cantidad de grados Centígrados a grados Fahrenheit la fórmula es: GF=GC*(9/5)+32 FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio : Escriba un programa que calcule el valor absoluto de un número entero. Para calcular el valor absoluto debe utilizar la función correspondiente y además volver a calcular el valor absoluto del mismo número elevándolo al cuadrado y después obteniendo su raíz cuadrada y desplegar ambos resultados que deben ser iguales. Nota : no debes utilizar comparaciones. FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio: hacer programa que pida el nombre de una persona, su peso en libras y su estatura en pies (medidas americanas) y convierta su peso a kilos y su estatura a metros, desplegar al final los resultados con el nombre 1 libra equivale a 0.4536 kilos 1 pie equivale a 0.3047 metros FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio : Hacer programa que solucione el problema de una gasolinera, sus bombas surten la gasolina en galones pero la cobran en litros, mostrar en pantalla cuanto se debe cobrar dependiendo de la cantidad de galones vendidos y el precio de la gasolina (precio variable), un galón equivale a 3.785 litros. FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio : Suponga que un individuo desea invertir su capital en un banco y desea saber cuanto dinero ganara después de un mes si el banco paga a razón de 2% mensual FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio: U na tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuanto deberá pagar finalmente por su compra. FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio : construya un programa que determine la distancia entre dos puntos, leyendo para esto las coordenadas de los puntos p 1 y p 2 . Coordenadas x 1 , y 1 , x 2 , y 2 x 1 , y 1 son el punto p 1 de las coordenadas x 2 , y 2 son el punto p 2 de las coordenadas Fórmula: FUNDAMENTOS DE PROGRAMACIÓN

Funciones puts () y gets () ; La función puts ( ) escribe una cadena de caracteres y un carácter de nueva línea al final de la cadena en la salida estándar. Acepta como argumento una cadena (sin formato). La función gets ( ) lee una cadena de caracteres de la entrada estándar hasta que se encuentra el carácter ‘ \n’, aunque este carácter no es añadido a la cadena. FUNDAMENTOS DE PROGRAMACIÓN

Bibliografía Cairó , Osvaldo. (2005). Metodología de la Programación. Tercera edición. AlfaOmega . México, D. F. FUNDAMENTOS DE PROGRAMACIÓN