Академический Документы
Профессиональный Документы
Культура Документы
Bienvenidos
jfiguero@unet.edu.ve
Contenido Programtico
Unidad
I. II. III. IV. V. VI. VII.
Contenido
Teora de la computacin Algoritmos y programacin estructurada Lenguaje de programacin C. Instrucciones bsicas Lenguaje de programacin C. Arreglos Lenguaje de programacin C. Punteros Lenguaje de programacin C. Funciones Lenguaje de programacin C. Estructuras de registros
Bibliografia
http://members.fortunecity.com/armandocarrero/index.htm
Evaluacin
70 pts Prueba PARCIAL DEPARTAMENTAL 20 pts Pruebas Cortas 10 pts Motivacin e Inters
70 pts Prueba PARCIAL DEPARTAMENTAL 20 pts Pruebas Cortas 10 pts Motivacin e Inters
70 pts Prueba PARCIAL DEPARTAMENTAL 20 pts Pruebas Cortas 10 pts Motivacin e Inters
UNIDAD I
Teora de la Computacin
AUTOESTUDIO
Breve Resea Histrica Hardware y Software Componentes de un Computador Digital Unidad Central de Procesamiento Memoria Principal
Perifricos Las Unidades de Almacenamiento de Informacin Sistema de Codificacin ASCII Sistema Numrico Binario Conversin de Decimal a Binario Conversin de Binario a Decimal Conceptos Bsicos
UNIDAD II
Algoritmos y Programacin Estructurada
Pasos para resolver un Problema mediante el uso de un Computador Diseo de Algoritmos Conceptos Bsicos Caractersticas de los Algoritmos Enunciados o formas para Escribir un Algoritmo en Seudo cdigo Pasos a seguir en la Elaboracin de Algoritmos Ejercicios Resueltos Diagramas Estructurados Ejercicios Propuestos
Descripcin del problema: Es la definicin exacta de lo que se necesita hacer, para ello se requiere leer el enunciado cuantas veces sea necesario, hasta entenderlo completamente. Implica entender claramente el alcance y la delimitacin del mismo, de manera que el problema a resolver no sea otro distinto.
1.
Especificaciones de entrada: Determinar claramente con qu datos de entrada se dispone para la solucin del problema. Especificaciones de salida: Aclarar y determinar la informacin o resultados que se soliciten.
3.
Planificacin de la Solucin: En esta actividad es donde radica la mayor parte de la dificultad para solucionar un problema, el resto de las etapas bsicamente se circunscriben a la adaptacin para que un computador ejecute lo ordenado. Implica disear la lgica general y detallada del programa, y el uso de una tcnica como herramienta, es fundamental. Dos de las tcnicas mas comunes son las de elaborar un proceso en seudocdigo y la diagramacin de un diagrama estructurado o de flujo.
El seudo cdigo:
Representa la lgica en instrucciones, en nuestro lenguaje, semejantes a las del programa, slo que ste no tiene principios de sintaxis o reglas para formular instrucciones. El uso de enunciados o formas permitirn describir las actividades de procesamiento y sus relaciones, clculos, manipulacin de datos, operaciones lgicas, entradas y salidas. Esta tcnica tambin se conoce como diseo de ALGORITMOS. Es una herramienta de programacin en la que las instrucciones se escriben en palabras similares al ingls o espaol, que facilitan tanto la escritura como la lectura de los programas. En esencia, el pseudocdigo se puede definir como un lenguaje de especificaciones de algoritmos
Prueba de Escritorio:
Llamada tambin corrida en fro, consiste en hacer un seguimiento manual, utilizando lpiz y papel, de los pasos que se definieron en el pseudocdigo y comprobar, con unos pocos datos, si el resultado que se obtiene es el esperado. Se recomienda dar diferentes datos de entrada y considerar todos los posibles casos, aun los de excepcin o no esperados, para asegurarnos de que el programa no producir errores en ejecucin cuando se presenten estos casos.
Diseo de Algoritmos
La experiencia dice que, en la mayora de los casos, los programadores que se encaminan a realizar un proyecto de computacin sin tener una formulacin clara del diseo, terminan descubriendo que se les haba olvidado algn detalle preliminar, adems de que la lgica en los programas re arreglados se vuelve ms confusa. Por ello se hace hincapi en la planificacin previa al desarrollo, siendo el principal apoyo de esta planeacin el diseo de algoritmos . Posiblemente, ste termino resulte nuevo para algunos, sin embargo todos los das ejecutamos procesos algortmicos, por ejemplo: realizar una multiplicacin, calcular el promedio de una cantidad de valores, efectuar una llamada telefnica o preparar una receta de cocina.
Diseo de Algoritmos
Ejemplo: Disee un algoritmo para preparar una limonada.
INICIO 1. Buscar una jarra 2. Llenar la jarra con un litro de agua 3. Exprimir el jugo de tres limones 4. Agregar el jugo a la jarra con agua 5. Echar cuatro cucharadas de azcar a la jarra con agua 6. Remover el agua hasta disolver completamente el azcar FIN
Algoritmos Computacionales.
Debe ser finito, es decir, el proceso debe terminar despus de una cantidad determinada de pasos. Un algoritmo no puede ser abierto. Cada paso debe ser definido, esto es, nada se debe dejar a la aventura ni presentar ambigedades, pues los resultados no deben depender de quien est siguiendo el proceso. Debe ser lo suficientemente flexible y general como para tener en cuenta todas la alternativas que puedan presentarse.
Puede tener cero o ms entradas de datos. El primer caso puede ocurrir en aquellos procesos matemticos en donde los valores se auto generan internamente. Debe poseer por lo menos una salida de informacin. Lo contrario indicara que no se obtiene resultado alguno. Ser ptimo, por lo que se deben minimizar la utilizacin de recursos como: tiempo, espacio, horas-hombre, mquina; sin que los resultados se vean alterados.
Conceptos Fundamentales
Variables
Son valores que pueden o no cambiar en el transcurso o ejecucin de un algoritmo. Una variable se compone de dos partes: su nombre y su valor. El nombre, es una combinacin de caracteres (letras, nmeros, smbolos especiales) y se refiere a una localidad de almacenamiento en la memoria principal y el valor trata sobre el dato numrico o cadena de caracteres que sern almacenados en la localidad a la que hace referencia el nombre. Por ejemplo:
Conceptos Fundamentales
Variables
NOMBRE
NOMBRE DE LA VARIABLE
PEDRO PEREZ
VALOR DE LA VARIABLE
Conceptos Fundamentales
Constantes:
Son todos aquellos valores que no cambian en el transcurso de un algoritmo. Estos valores pueden ser cifras numricas o cadenas de caracteres. Ejemplo:
Constantes enteras 12, 20300, 15, etc. Constantes reales 3.1416, 2345.456, etc. Constantes de carcter 'a', 'B', ';', '<', '+', etc. Constantes de cadena "Hola", "Algoritmos Computacionales", etc.
Conceptos Fundamentales
Tipos de Datos:
A nivel mquina los datos se representan internamente como una secuencia de bits (dgitos 0 y 1). Los lenguajes de alto nivel evitan estos manejos internos mediante el concepto de tipo de dato. En la mayora de los lenguajes de programacin los tipos de datos simples o primitivos se pueden clasificar como: Enteros (dato numrico sin componente decimal y puede ser positivo o negativo). Reales (dato numrico con componente decimal y puede ser positivo o negativo). Carcter (un slo carcter o Cadena en el caso de varios caracteres) Booleanos (verdadero o falso).
Conceptos Fundamentales
Expresiones Aritmticas :
Una expresin aritmtica es un conjunto de variables y/o constantes unidas o relacionadas por parntesis y operadores aritmticos.
Operador + Significado Suma
Resta
Multiplicacin Divisin Residuo de divisin entera Raz Cuadrada Ensima potencia
Conceptos Fundamentales
Expresiones Aritmticas :
Ejemplo:
sueldoBru = sueldoBas + 0.15*montoVen numero = centenas*100 + decenas*10 + unidades e = a*b*b / 3 + (a**a + sqrt(b)) / (b + c)
Conceptos Fundamentales
Expresiones Lgicas:
Una expresin lgica o booleana es un conjunto de variables y/o constantes unidas mediante operadores lgicos y operadores relacinales.
Una expresin lgica solo puede tomar uno de dos valores: verdadero o falso. Las expresiones lgicas son ampliamente utilizadas en las estructuras selectivas y las estructuras repetitivas.
Conceptos Fundamentales
Expresiones Lgicas:
Operadores Relacionales
Operador
> >= < <= ==
Operadores Lgicos
Operador
no (not)
Significado
Mayor mayor o igual que Menor menor o igual que igual a
Significado
Negacin
y (and) o (or)
Conjuncin Disyuncin
!=
diferente de
Conceptos Fundamentales
Expresiones Lgicas:
Ejemplos:
a. B es mayor que 2. b. M es menor igual que 5 mayor que 25. c. P es igual a 6 y mayor que Q. d. N es par menor que 50. e. M es mayor que A, B y C. f. Z esta en el intervalo de 4 a 100. g. T es igual a 2, 3 4.
Conceptos Fundamentales
Expresiones Lgicas:
Ejemplos:
a) b) c) d) e) f) g) h) B>2 ( M <= 5 ) o ( M > 25 ) ( P == 6 ) y ( P > Q ) ( ( N % 2 ) == 0 ) y ( N < 50 ) (M>A)y(M>B)y(M>C) ( Z >= 4 ) y ( Z <= 100 ) ( T == 2 ) o ( T == 3 ) o ( T== 4 ) (z>4) y (z<2)
Jerarqua de operadores:
Conceptos Fundamentales
X = 12 + 8 / 2
*, /, %
X = 20/2 8*5
+, -
X = 3*(5+2)/3 + 4*(2+1)
Para resolver una expresin aritmtica se deben seguir las siguientes reglas: Primero se resuelven las expresiones que se encuentran entre parntesis. Se procede aplicando la jerarqua de operadores.
Al evaluar una expresin, si hay dos operadores con la misma jerarqua, se procede a evaluar de izquierda a derecha. Si hay expresiones relacionales, se resuelven primero parntesis, luego se encuentran los valores de verdad de las expresiones relacionales y por ltimo se aplica jerarqua de operadores lgicos. En caso de haber iguales, proceder de izquierda a derecha.
Ejercicios