para descargar el archivo
Transcripción
para descargar el archivo
Cátedra I Informática Autor I Carlos Bartó UNIDAD 2-2: INTRODUCCIÓN A LA ESPECIFICACIÓN DE PROGRAMAS IMPERATIVOS 5 6. Aplicación del procedimiento para el desarrollo de software. • Analizar el problema. • Paso 1: Análisis básico de Salida(Resultados)/Entrada(Datos). Acciones Análisis extendido si no alcanza con el básico para entender. • Paso 2: Generar una solución. Diseño o desarrollo del algoritmo. Ejemplos de casos a mano. Enfoque de arriba hacia abajo. • Paso 3: Codificar la solución. Programación en C++ Programa: PGM2-11.CPP • Paso 4: Probar y corregir el programa. Datos de prueba. EJERCICIOS 2.6 página 85 2. Aplicaciones. • Aplicación 1: Trampas de un radar de velocidad (pag 87) Programa: PGM2-12.CPP • Aplicación 2: Redes de intercambio telefónico (pag 89) Programa: PGM2-13.CPP EJERCICIOS 2.7 página 92 3. Operaciones de asignación. • Variable = expresión; operador de asignación ( = ) La asignación es una función que tiene un VALOR (asocia a izq.) Válidas: suma = 3 + 7; dif = 15 - 6; pendiente = (y2 - y1) / (x2 - x1); No válidas: cantidad + 12 = numero + inicial Programa: PGM3-01.CPP 5 Cátedra I Informática Autor I Carlos Bartó • Variaciones de la asignación: += variable variable 6 -= *= /= %= = variable + incremento += incremento Programa: PGM3-02.CPP Programa: PGM3-03.CPP • Conteo: variable_ent = variable_ent Variaciones de la asignación: i = i+1; i = i-1; i++ i-- número_fijo ++i --i sufijo a poteriori equivale a + prefijo a priori k = n++ k = n n = n + 1 k = ++n n = n + 1 k = n Programa: PGM3-04.CPP EJERCICIOS 3.1 página 112 4. Dar formato a números para la salida de un programa. Manipuladores más comunes como mensajes al objeto de corriente cout: Manipulador Acción setw(n) Establece el ancho del campo hasta n setprecision(n) Determina el número de n decimales redondeados setfill('x') Establece el caracter de relleno a la izquierda setiosflags(flags) Define el formato con banderas (pag 122) scientific Salida en notación científica showbase Despliega la base para los números. 0N, 0xN showpoint Siempre despliega 6 digitos en total. showpos Despliega números positivos con + a la izquierda boolalpha Despliega tipo bool como true/false dec Salida en números decimales endl Línea nueva y salida al buffer completo fixed Siempre muestra punto decimal y usa 6 dígitos flush Despliega todos os caracteres del buffer left Justifica a la izquierda todos los números 6 hex Cátedra I Informática Autor I Carlos Bartó Salida en números hexadecimales oct Salida en números octales uppercase Despliega hexadecimales y el exp en mayúsculas right Justifica la salida de números a la derecha noboolalpha Despliega tipo bool como 0/1 noshowbase No desplega números octales ni hexadecimales noshowpoint No usa punto decimal para reales sin fracción. noshowpos No despliega números positivos con + a izquierda nouppercase No despliega hexadecimales ni exp en mayúsculas´ 7 cout << “|“ << setw(10) << setiosflags(ios::left) << 142 << “|”; Salida: |142 | Programa: PGM3-05.CPP Programa: PGM3-06.CPP Bandera Significado ios::showpoint Siempre despliega un punto decimal con 6 dígitos decimales. Interactúa con fixed ios::showpos Muestra el signo + cuando el número es positivo. ios::fixed Despliega en punto fijo y no pasa a exponencial. ios::scientific Utiliza notación exponencial. ios::dec Despliega un numero en base 10. Por defecto. ios::oct Despliega un numero en base 8. ios::hex Despliega un numero en base 16. ios::left Justifica la salida a la izquierda. ios::right Justifica la salida a la derecha. Métodos de los objetos corriente (ostream) en vez de manipuladores cout.precision(n); cout.fill('x'); cout.setf(ios::fixed); cout.setf(ios::showpoint); cout.setf(ios::left); cout.setf(ios::right); cout.setf(ios::flush); Programa: PGM3-07.CPP Programa: PGM3-08.CPP 7 Cátedra I Informática Autor I Carlos Bartó EJERCICIOS 3.1 página 126 8 5. Empleo de las Funciones matemáticas de biblioteca. Para usar una función matemática es necesario conocer: Nombre de la función. Qué hace la función. Qué tipo de datos requiere la función. Que tipo de resultados producirá la función. Cómo incluir la biblioteca. Ejemplo: #include <math.h> #include <math> x = sqrt(2); variable = nombre_funcion(lista_parámetros_resles); Ejemplos de funciones matemáticas: abs(a) valor absoluto pow(a1,a2) a1 elevado a a2 sqrt(a) raíz cuadrada sin(a) seno de un ángulo en radianes cos(a) coseno de un ángulo en radianes tan(a) tangente de un ángulo en radianes log(a) logaritmo natural de a log10(a) logaritmo en base 10 de a exp(a) constante e elavada a la a Programa: PGM3-09.CPP Moldes (casting) float a=10.0, b=0.25; int i; i = int (a * b); // i toma el valor 2 EJERCICIOS 3.1 página 126 6. Entrada de datos utilizando el objeto cin. Esquema de corrientes de datos de entrada salida: TECLADO ----cin---> CPU -----cout----> PANTALLA #include <iostream> Programa: PGM3-10.CPP Programa: PGM3-11.CPP 8 Cátedra I Informática Autor I Carlos Bartó Programa: PGM3-12.CPP 9 Programa: PGM3-13.CPP EJERCICIOS 3.4 página 144 7. El calificador const. Identificadores de variables que no pueden modificarse. Constantes const double PI = 3.14159265359; const double PESO_ESPECIFICO = 0.0078776 const int MAXNUM = 100; Ubicación de las instrucciones. Ejemplo de Buena Práctica: Directivas del preprocesador int main() { Constantes nominadas Declaraciones de la función main ....Otras instrucciones ejecutables return valor; } Programa: PGM3-14.CPP Programa: PGM3-15.CPP EJERCICIOS 3.5 página 156 8. Aplicaciones Programa: PGM3-16.CPP Programa: PGM3-17.CPP EJERCICIOS 3.6 página 165 Programa: PGM3-18.CPP 9