presentacion1 lenguaje de-programacion_c

27
Lenguaje de Programación C

Upload: monica-martinez

Post on 29-Jun-2015

381 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Presentacion1 lenguaje de-programacion_c

Lenguaje de Programación C

Page 2: Presentacion1 lenguaje de-programacion_c

Agenda

– Generalidades– Origenes lenguaje C– Caracteristicas del C– Estructura General programa en C– De Seudocodigo a lenguaje C– Variables en C.– Instrucciones y operadores.– Entrada y salida de información

Page 3: Presentacion1 lenguaje de-programacion_c

GeneralidadesGENERALIDADES

LenguajesDe

Programación

ALTONIVEL

BAJONIVEL

ESTRUCTURADOS

ORIENTADOSA OBJETOS

FortranBasicCPascal

Java

C++

Page 4: Presentacion1 lenguaje de-programacion_c

Programación estructuradaTeorema del programa estructurado:Todo programa puede escribirse utilizando únicamente las tres instrucciones de control siguientes:

• Secuencia• Instrucción condicional.• Iteración (bucle de instrucciones)

GENERALIDADES

Page 5: Presentacion1 lenguaje de-programacion_c

Programación estructurada(2)Ventajas 1.Los programas son más fáciles de entender, ya que pueden ser leídos de forma secuencial, sin necesidad de hacer seguimiento a saltos de línea.2. La estructura del programa es clara, puesto que las instrucciones están más ligadas o relacionadas entre sí.3. El seguimiento de los fallos o errores del programa ("debugging") se facilita debido a la estructura más visible, por lo que los errores se pueden detectar y corregir más fácilmente.4. Programas más sencillos y más rápidos (ya que es más fácil su optimización).

Desventajas Único bloque de programa, que cuando se hace demasiado grande puede resultar problemático su manejo

GENERALIDADES

Page 6: Presentacion1 lenguaje de-programacion_c

Orígenes del CORIGENES C

Dennis Ritchie (Laboratorios Bell) en1972, cuando trabajaba en el diseño del sistema operativo UNIX.

El ‘C’ se creó como herramienta para programadores, en consecuencia su principal objetivo es ser un lenguaje útil.

Page 7: Presentacion1 lenguaje de-programacion_c

Lenguaje CCARACTERISTICAS

Potencia y flexibilidad: Se ha usado en contextos tan dispares como el desarrollo de sistemas operativos, procesadores de texto, gráficos, bases de datos, compiladores de otros lenguajes, etc.

Popularidad: Existe una gran variedad de compiladores, librer´ıas, herramientas de apoyo a la programaci´on, etc. Es el lenguaje predominante en el entorno UNIX.

Portabilidad: El mismo programa escrito en C puede compilarse y ejecutarse sin practicamente ningún cambio en diferentes ordenadores. Esto se debe en gran parte al estandar ANSI C.

Sencillez: C utiliza pocas palabras clave, por lo que puede aprenderse f´acilmente.

Estructura y modularidad: Los programas en C pueden escribirse agrupando el codigo en funciones. Reutilizable.

Page 8: Presentacion1 lenguaje de-programacion_c

Lenguaje CCARACTERISTICAS

Es un lenguaje compilado.

CÓDIGO FUENTE: es el programa que nosotros escribimos, se graba con la extensión .C

CÓDIGO OBJETO: es el programa fuente pero traducido a lenguaje máquina (sucesión de ceros y unos), se graba con la extensión .OBJ

PROGRAMA EJECUTABLE: es el programa objeto más las “librerías del C”, se graba con la extensión .EXE. Y no necesita el programa que hemos utilizado para crearlo, para poder ejecutarlo.

Page 9: Presentacion1 lenguaje de-programacion_c

ESTRUCTURA GRAL DE UN PROGRAMA EN C

INICIO

DECLARACIÓN DE VARIABLES Y CONSTANTES

ACCIONES DEL ALGORITMO

FIN

LENGUAJE C

ENCABEZADO-DIRECTIVAS

Page 10: Presentacion1 lenguaje de-programacion_c

EjemploLENGUAJE C

Realizar un algoritmo que solicite al usuario dos números enteros, realice su suma y la imprima en pantalla.

Analisis del problema:Datos de entrada: Los dos números (necesito dos variables para llevarlos. llamemoslos a y b).Datos de salida: Variable en la cual se almacena el resultado de la suma (c).Proceso: ¿Que es lo que tengo que hacer?

Solicitar al usuario los datos de entrada.Sumar los dos datos de entrada.Desplegar el resultado.

Page 11: Presentacion1 lenguaje de-programacion_c

Ejemplo…LENGUAJE C

Seudocódigo y diagrama de Flujo:

Algoritmo(sumar)

INICIO ESCRIBA(“Digite el primer numero (entero)”) LEA(a) ESCRIBA(“Digite el segundo numero (entero)”) LEA(b) c a + b ESCRIBA(“La suma es: ”,c) FIN_INICIOFin(sumar)

Variables: entero: a, b, c

Page 12: Presentacion1 lenguaje de-programacion_c

Ejemplo…LENGUAJE C

Traducción al lenguaje C

Básicamente el primer paso es familizarnos con la sintaxis (expresiones, reglas, etc.) del lenguaje C.

Realizar la formulación del algoritmo en términos de esa nueva sintaxis.

Page 13: Presentacion1 lenguaje de-programacion_c

Ejemplo…LENGUAJE C

Algoritmo(sumar) Variables: entero: a, b, c INICIO ESCRIBA(“Digite el primer numero (entero)”) LEA(a) ESCRIBA(“Digite el segundo numero (entero)”) LEA(b) c a + b ESCRIBA(“La suma es: ”,c) FIN_INICIOFin(sumar)

#include<stdio.h>

int main(){ int a, b, c = 0; printf(“Digite el primer numero (entero): ”); scanf(“%d”,&a); printf(“Digite el segundo numero (entero): ”); scanf(“%d”,&b); c = a + b; printf(“El resultado de la suma es: %d\n”,c); return 0; }

Page 14: Presentacion1 lenguaje de-programacion_c

INTRODUCCION AL LENGUAJE C

#include<stdio.h>

int main(){

int a, b, c = 0;

printf(“Digite el primer numero: ”); scanf(“%d”,&a); printf(“Digite el segundo numero: ”); scanf(“%d”,&b); c = a + b; printf(“El resultado de la suma es: %d\n”,c); return 0;

}

Librerías (uso de directivas del preprocesador)

Declaración de variables (las variables son locales en este caso).

Instrucciones (Expresiones aritméticas y lógicas, condicionales (SI), ciclos (HAGA, MIENTRAS)).

Programa principal

ANATOMIA DE UN PROGRAMA EN C

Page 15: Presentacion1 lenguaje de-programacion_c

INTRUDUCCIÓN AL LENGUAJE C

• Esto nos lleva a la siguiente conclusión

algoritmo (nombre_algoritmo)INICIODeclaracion variables sentencia_1 sentencia_2 . . . sentencia_NFIN_INICIO

#include <librerias_del_sistema>#include “librerias_propias”

variables_globales;

int main() { variables_locales; sentencia_1; sentencia_2; . . . sentencia_N;Return 0;}

Page 16: Presentacion1 lenguaje de-programacion_c

INTRUCCION AL LENGUAJE C

• Plantilla básica de un programa en C

Page 17: Presentacion1 lenguaje de-programacion_c

MANEJO DE VARIABLES

floatdouble

int

charCarácter-

AlfaNúmerica

Num. Enteras

Num. Reales

Variables en C (Tipos de datos)

Tipos de Variables

BoolBooleano

Page 18: Presentacion1 lenguaje de-programacion_c

MANEJO DE VARIABLES• Declaración: consiste en definir cada una de las variables que van a ser

usadas en el programa. Sigue la siguiente Sintaxis:tipo nom_var1 , nom_var2, nom_var3 = valor_inicial, nom_varN;

• En C Toda variable debe ser declarada antes de ser usada. Cosa que no se declara cosa que no existe y error!!!. La inicialización de esta es opcional

TABLA SENCILLA DE EQUIVALENCIAS C-PSEUDOCODIGO

Pseudocódigo Lenguaje C

entera int

real floatdouble

alfanumérica char

variables: entero: num_estudiantes real: prom_grupo, estatura, peso entero: num_clases = 0

int num_estudiantes;float prom_grupo, estatura, peso;int num_clases = 0;

Page 19: Presentacion1 lenguaje de-programacion_c

VARIABLES ENTERAS (TIPO int)• Declaración: int nom_var1 <, nom_var2, nom_var3 <= v_inicial3>,…,nom_varN>;

• Tamaño de almacenamiento: Depende de la arquitectura puede ser 2 o 4 bytes.• Rango de la variable: Depende del tamaño de almacenamiento

2 bytes: -32768 a 32767 4 bytes: -2147483648 a 2147483647

entero: num_vacasentero: num_perros, num_gatos , num_gallosentero: num_est = 45, num_prof = 3entero: num_x = -9, num_y, num_zentero: num_deudas = 400000

int num_vacas;int num_perros, num_gatos , num_gallos;int num_est = 45, num_prof = 3;int num_x = -9, num_y, num_z;int num_deudas = 400000;

Page 20: Presentacion1 lenguaje de-programacion_c

VARIABLES REALES (TIPO float o double)

• Declaración: Se manejan dos tipos de datos para las variables reales, por un lado están los datos tipo float empleadas para variables con precisión simple por el otro están los datos tipo double para variables con doble precisión. La sintaxis para declarar este tipo de variables se muestra a continuación:

float nom_var1 <, nom_var2, nom_var3 <= v_inicial3>,…,nom_varN>;double nom_var1 <, nom_var2, nom_var3 <= v_inicial3>,…,nom_varN>; • Tamaño de almacenamiento: Depende de la precisión del tipo de dato: float: 4 bytes. (Precisión de 6 dígitos). double: 8 bytes (Precisión de 15 dígitos).

• Rango de la variable: float: -3.4e38 a 3.4e38. (Siendo 1.2e-38 el valor positivo mas pequeño posible) double : -1.7e308 a 1.7e308 . (Siendo 2.3e-308 el valor positivo mas pequeño

posible)

real: xreal: yreal: a = 4.5, b = 3.0real: c = -9., d, e = 1.5e-15real: f = 4.03e19, g =.03

float x;double y;float a = 4.5, b = 3.0;float c = -9., d, e = 1.5e-15;double f = 4.03e19, g =.03;

Page 21: Presentacion1 lenguaje de-programacion_c

VARIABLES TIPO CARACTER (TIPO char)

• Declaración: Estas variables son empleadas para el manejo de datos alfanumericos tales como letras del alfabeto y otros caracteres tales como #, $, % y * entre otros, tambien pueden ser usadas para la representación de números enteros:

char nom_var1 <, nom_var2, nom_var3 <= v_inicial3>,…,nom_varN>;

• Tamaño de almacenamiento: 1 byte• Rango de la variable: 0 a 255• Los caracteres representados se hallan en la tabla ASCII la cual asocia un valor

entero positivo a un carácter determinado.• Nota: Es de anotar que solo hablamos de un solo carácter. El caso de las

cadenas alfanuméricas después lo trataremos.

alfanumerico: sexo = ‘F’alfanumerico: grado = ‘A’, caracter = 64alfanumerico: letra

char sexo = ‘F’;char grado = ‘A’, caracter = 64;char letra

Page 22: Presentacion1 lenguaje de-programacion_c

SOBRE LOS NOMBRES DE LAS VARIABLES• Identificadores: Nombres que se le dan a las constantes o variables. • Reglas a seguir en el momento de nombrar una variable:

Los identificadores no pueden tener el mismo nombre de las palabras reservadas.

Elegir nombres significativos (es decir, relacionados con aquello a lo que esta haciendo referencia la variable).

El primer carácter del nombre de una variable puede ser un letra (mayúscula o minúscula) o una raya baja (_).

Un nombre de una variable puede tener como caracteres letras (mayúsculas y minúsculas), dígitos y el carácter raya baja (_).

Declaración errónea de las

variables

Declaración correcta de las

variables

Page 23: Presentacion1 lenguaje de-programacion_c

PALABRAS RESERVADAS

Page 24: Presentacion1 lenguaje de-programacion_c

Resumen Declaración de variables• Cuando declaro una variable la elección del tipo de dato depende del propósito

para el cual voy a usar la variable.

Tipo Ejemplo Tamaño en bytes Rango (minimo-maximo)

char ´c´ 1 0,…,255

int 1024 2 (o 4, depende de la arquitectura)

-32768,…,32767 (si el tamaño en bytes es 2)

float 10.5 4 3.4E-38 ,….,3.4E38

double 1e-8 8 1.7E-308,…,1.7E308

Declaración e inicialización de variables

tipo nom_var1 <, nom_var2, nom_var3 <= valor_inicial>, nom_varN>;

Page 25: Presentacion1 lenguaje de-programacion_c

Resumen declaracion de variables (2)

Una variable no puede ser usada antes no ha sido previamente declarada.

Page 26: Presentacion1 lenguaje de-programacion_c

Ampliación del rango de valores de las variable

Modificadores de tipos• long int a;• unsigned long int c;

Page 27: Presentacion1 lenguaje de-programacion_c

Bibliografía

• Joyanes Aguilar, Luis. PROGRAMACIÓN EN C. Metodología, algoritmos y estructura de datos.

• Google