Cap 01 - Introduccion Al Lenguaje C
-
Upload
max-jara-ortiz -
Category
Documents
-
view
219 -
download
4
description
Transcript of Cap 01 - Introduccion Al Lenguaje C
-
1Estudios Generales Ciencias
Pontificia Universidad Catlica del Per
Lenguaje de Programacin
Captulo 1:
Introduccin al
lenguaje C
-
Pontificia Universidad Catlica del Per 2
Contenido
Planteamiento de soluciones a problemas simples usando Diagramas de Flujo
Lenguajes de programacin
Clasificacin
Formas exactas y aproximadas de solucin
Lenguaje de programacin C
Algunas caractersticas generales
Estructura general de un programa en C
Bibliografa
-
Pontificia Universidad Catlica del Per 3
Diagramas de Flujo - Smbolos
-
Pontificia Universidad Catlica del Per 4
Diagramas de Flujo Ms smbolos
-
Pontificia Universidad Catlica del Per 5
Problema
Elabore un diagrama de flujo que solucione el problema de calcular el mximo comn divisor (MCD) de dos nmeros ledos por teclado, segn el siguiente mtodo:
El MCD de dos nmeros se obtiene dividiendo el mayor de los nmeros dados por el menor. Si la divisin es exacta, el menor es el MCD; si es inexacta, se divide el divisor por el residuo. Lo anterior se repite hasta obtener una divisin exacta, siendo el ltimo divisor el MCD.
Muestre el resultado en pantalla.
-
Pontificia Universidad Catlica del Per 6
Solucin en Diagrama de Flujo
-
Pontificia Universidad Catlica del Per 7
Lenguajes de programacin
Lenguaje conjunto de smbolos y signos que permiten la expresin y comunicacin de ideas entre personas que lo manejan.
Sintaxis: coordinar y unir palabras
Gramtica: Arte de hablar y escribir un lenguaje con correcin
Lenguaje de programacin conjunto de signos que permiten la comunicacin hombre / computadora
-
Pontificia Universidad Catlica del Per 8
Una clasificacin para lenguajes de programacin (1)
Lenguajes de Mquina
Secuencias de nmeros que proporcionan instrucciones (rdenes) de mquina especficas
1300042774
1400593419
1200274027
Lenguajes Ensambladores
Abreviaciones en ingls que representan operaciones bsicas para la computadora
Reduce complejidad de los L. de mquina LOAD SUELDO_BASICO
ADD HORAS_EXTRA
STORE IMPORTE_NETO
-
Pontificia Universidad Catlica del Per 9
Una clasificacin para lenguajes de programacin (2)
Lenguajes de Alto Nivel
Lenguaje ms cercano al humano (ingls)
IMPORTE_NETO = SUELDO_BASICO + HORAS_EXTRA
-
Pontificia Universidad Catlica del Per 10
El lenguaje de Programacin C (1)
C Derivado a partir del Lenguaje B ( y del BPCL)
por Dennis Ritchie de los Laboratorios BELL, 1972 implantado por primera vez en una computadora PDP-11 de DEC
Usado para desarrollar el UNIX
Independiente del Hardware (portable)
Existieron muchas variaciones leves del C incompatibles entre si
Se cre un Comit para formar una definicin no ambigua independiente de la mquina
Estndar se cre en 1989, actualizada en 1999
-
Pontificia Universidad Catlica del Per 11
El lenguaje de Programacin C (2)
Un lenguaje de nivel medio
Combina elementos de lenguajes de alto nivel (Pascal, Basic) con funcionalidades de lenguaje ensamblador (Assembler)
Mejor manejo de recursos de hardware: : disco y archivos
Mejor manejo de posiciones de memoria
Portabilidad
-
Pontificia Universidad Catlica del Per 12
El lenguaje de Programacin C (3)
Un lenguaje estructurado
Estructura basada en funciones
Recuerde concepto de funciones en Pascal
Bloques independientes invocados desde un bloque principal
Concepto de mdulo principal y mdulos secundarios
-
Pontificia Universidad Catlica del Per 13
Estructura general de un programa en C (1)
Ligeras salvedades a la metodologa top-down
Declaraciones globales
Declaraciones de librerias
main()
{
}
funcion1(lista de parmetros)
{ variables locales de la funcin
instrucciones de la funcin
}
funcion2(lista de parmetros)
{ variables locales de la funcin
instrucciones de la funcin
}
funcionNN(lista de parmetros)
{ variables locales de la funcin
instrucciones de la funcin
}
Relacione: Funciones ya
implementadasPrograma principal
Funciones que sern usadas en el main
-
Pontificia Universidad Catlica del Per 14
Estructura general de un programa en C (2)
Ejemplo 1
#include
main()
{
printf("hola mundo \n");
}
Librera de C que contiene funciones entrada y salida
de datos
Programa principal sin funciones auxiliares
-
Pontificia Universidad Catlica del Per 15
Estructura general de un programa en C (3)
Algunas diferencias que podemos percatarnos con Visual Basic:
Concepto de bloque No se forma usando function o sub y end
Se requiere de llaves {}
Libreras Para casi todas las acciones posibles en C,
existen funciones en determinadas libreras que debern ser invocadas convenientemente
-
Pontificia Universidad Catlica del Per 16
Estructura general de un programa en C (4)
Ejemplo 2: convertir grados centgrados a Fahrenheit
#include
void main()
{ float F,C;
scanf("%f",&C);
F = (9.0 / 5.0)*C + 32;
printf("%f", F);
}
-
Pontificia Universidad Catlica del Per 17
Proceso de ejecucin de un programa escrito en C (1)
Fases del proceso de diseo
Editar: escribir el programa fuente
Preprocesar
Compilar (Compile): deteccin de errores
Enlazar (Link): el programa *.C con las libreras usadas en l (*.H)
Cargar (Load): creacin del ejecutable
Ejecutar (Execute)
-
Pontificia Universidad Catlica del Per 18
Proceso de ejecucin de un programa escrito en C (2)
Preprocesa las directivas
Cargador coloca el programa
en memoria
El compilador crea el cdigo
objeto y lo almacena en disco
El enlazador vincula el cdigo
objeto con las librerias
Loader
Primary Memory
Compiler
Editor
Preprocessor
Linker
.
.
.
.
.
.
Disk
Disk
Disk
Disk
Disk
-
Pontificia Universidad Catlica del Per 19
Proceso de ejecucin de un programa escrito en C (3)
Fuente Compilador
EnlazadoCompilacinPrecompilacin
*.C
*.H*.C *.OBJ
*. EXE
Programa
*.LIB
*.LIB
Librera
estndar
-
Pontificia Universidad Catlica del Per 20
Bibliografa
B. Kernighan; D. Ritchie El lenguaje de programacin C. Prentice-Hall Hispanoamericana, Mxico (1988)
H. Schildt Turbo C/C++ Manual de referencia. McGraw-Hill Interamericana, Espaa (1992)