Unmsm03 2008

705 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
705
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Unmsm03 2008

  1. 1. FACULTAD DE INGENIERÍA INDUSTRIAL <br />INFORMÁTICA<br /> Ing. Mónica Díaz Reátegui CIP. 63424<br /> monicdre@yahoo.com<br />
  2. 2. CONTENIDO<br />ESTRUCTURA <br />SECUENCIAL<br />
  3. 3. PROGRAMACIÓNESTRUCTURADA<br />El término de programación estructurada se refiere a un conjunto de técnicas que han ido evolucionando desde los primeros trabajos de Dijktra.<br /> <br />Estas técnicas aumentan considerablemente la productividad del programa reduciendo el tiempo requerido para escribir, verificar, depurar y mantener los programas<br /> <br />
  4. 4. PROGRAMACIÓNESTRUCTURADA<br />La programación estructurada utiliza un número limitado de estructuras de control que minimiza la complejidad de los problemas y por consiguiente reduce los errores.<br /> <br />La programación estructurada es el conjunto de técnicas que incorporan:<br />El diseño descendente<br />Los recursos abstractos<br />Las estructuras básicas<br />
  5. 5. PROGRAMACIÓNESTRUCTURADA<br />RECURSOS ABSTRACTOS<br />Recursos abstractos (simplicidad): consiste en descomponer una determinada acción compleja, en función de un número de acciones más simples, capaces de ser resueltas con mayor facilidad y que constituirán las instrucciones.<br /> <br />
  6. 6. PROGRAMACIÓNESTRUCTURADA<br />DISEÑO DESCENDENTE<br />El diseño descendente (Top – Down) es el proceso mediante el cual un programa se descompone en una serie de niveles o pasos sucesivos de refinamiento.<br />La metodología descendente consiste en efectuar una relación entre las sucesivas etapas de estructuración de modo que se relacionen unas con otras mediante entradas y salidas de información.<br />
  7. 7. PROGRAMACIÓNESTRUCTURADA<br />Es decir, se descompone el problema en etapas o estructuras jerárquicas, de modo que se puede considerar cada estructura desde dos puntos de vista: qué hace y como lo hace.<br />Nivel n vista desde el exterior<br />¿Qué hace?<br />Nivel n vista desde el interior <br />¿Cómo lo hace?<br />
  8. 8. PROGRAMACIÓNESTRUCTURADA<br />ESTRUCTURAS BÁSICAS<br />Un programa propio puede ser escrito utilizando solamente tres tipos de estructuras de control: —secuenciales, selectivas y repetitivas.<br /> <br /> TEOREMA DE BOHN JACOPINI<br />Teorema de la programación estructurada o de BohnJacopini; que demuestra que un programa propio puede ser escrito utilizando solamente tres tipos de estructuras de control:<br />Secuenciales.<br /> Selectivas.<br /> Repetitivas.<br />
  9. 9. PROGRAMACIÓNESTRUCTURADA<br />Un programa propio se define como propio si cumple las siguientes características:<br /> <br /><ul><li>Posee un solo punto de entrada y uno de salida o final.
  10. 10. Existen caminos desde la entrada hasta la salida que se pueden seguir y que pasan por todas las partes del programa.
  11. 11. Todas las instrucciones son ejecutables y no existen lazos o bucles infinitos (sin fin).</li></li></ul><li>ESTRUCTURAS BÁSICAS<br />ESTRUCTURA SECUENCIAL <br /> <br />DEFINICIÓN<br />La estructura secuencial es aquella en la que una acción (instrucción o sentencia) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el final del proceso.<br /> <br />
  12. 12. ESTRUCTURAS BÁSICAS<br />ESQUEMA BÁSICO<br />
  13. 13. ESTRUCTURAS BÁSICAS<br />SALIDAS BÁSICAS<br /> <br />INTRODUCCIÓN<br />Una de las características más sobresalientes de C++ es la flexibilidad en la utilización de las entradas y salidas (E/S) así como la facilidad para su tratamiento. <br /> <br />C++ fue diseñado para ser compatible con C. Por consiguiente el C++ tiene disponible todas las funciones típicas de entrada y salida del C incluyendo getchar(), putchar(), scanf() y printf().<br /> <br />Ya que los programadores disponen de la biblioteca stdio.<br /> <br />
  14. 14. ESTRUCTURAS BÁSICAS<br />BIBLIOTECA iostream<br /> <br />C++ incorpora una nueva biblioteca de funciones de E/S (Entrada/Salida): la biblioteca iostream.<br /> <br />La biblioteca iostream es una implementación orientada a objetos y se fundamenta en forma similar a la biblioteca stdio en el concepto de flujos.<br /> <br />A nivel abstracto un flujo (stream) es un modo de representar el flujo o secuencia de datos de una fuente (productor) a un destino o buzón (consumidor). <br />
  15. 15. ESTRUCTURAS BÁSICAS<br />Así por ejemplo:<br />Cuando se ingresa caracteres por el teclado, se puede pensar en caracteres que fluyen o se trasladan desde el teclado a las estructuras de datos de su programa.<br /> <br />Para acceder a la biblioteca iostream se debe incluir en cada programa el archivo de cabecera iostream.h, mediante la directiva del preprocesador #include.<br /> <br />
  16. 16. ESTRUCTURA DE UNPROGRAMA EN C<br />#include &lt;iostream.h&gt;<br /> <br />Este archivo de cabecera contiene información de diferentes funciones de E/S y proporciona la manipulación de los buffer.<br /> <br />Define también los objetos predefinidos de flujo cin, cout, cerry clogque se pueden utilizar en nuestros programas.<br />C++ realiza todas las entradas y salidas como flujos de caracteres. Si su programa recibe entrada del teclado, de un archivo de disco, de un MÓDEM o de un ratón, C++ ve solo un flujo de caracteres.<br />
  17. 17. ESTRUCTURAS BÁSICAS<br />C++ no tiene que conocer cual es el tipo de dispositivo que proporciona la entrada; el sistema operativo maneja los dispositivos específicos y los programas manejan caracteres de datos sin preocuparse del dispositivo.<br /> <br />La instrucción usingnamespace especifica que los miembros de un namespace van a utilizarse frecuentemente en un programa. Esto permite al programador tener acceso a todos los miembros del namespace y escribir instrucciones más concisas como:<br />cout&lt;&lt;&quot;hola&quot;;<br />en vez de: <br />std::cout&lt;&lt;&quot;hola&quot;;<br />
  18. 18. ESTRUCTURAS BÁSICAS<br />cout<br /> <br />Se utilizará cout como el flujo de salida conectado a la salida estándar (pantalla).<br /> <br />Cuando un programa comienza la ejecución, automáticamente abre los archivos de dispositivos y los conecta a los objetos cin, cout y cerr y los asocia con los operadores específicos.<br /> <br />El operador de inserción (&lt;&lt;) transmite sus argumentos (situados) a la derecha hacia el flujo cout (a la izquierda del operador).<br />
  19. 19. SENTENCIA EN C<br />PALABRAS RESERVADAS<br />Una Palabra reservada o clave (keyword) es una palabra o identificador que tiene un significado particular para un Lenguaje de programación.<br />Ejemplo:<br />break case catch char<br />class const const_cast continue<br />Default delete deprecated dllexport<br />dllimport do double dynamic_cast<br />else enum explicit extern<br />false float for friend<br />
  20. 20. SENTENCIA EN C<br />CONSTANTES<br />Valor numérico o carácter que no ocupa memoria fuera del código del programa.<br />Ejemplo: los números 5, 17 y 0xB1; y los caracteres A, q y !.<br /> <br />CADENAS<br />Cualquier secuencias de valores (byte, palabras, palabras dobles, etc.).<br />Ejemplo: “El C ++ es divertido para programar”.<br />Dentro de las cadenas también pueden contener los llamados caracteres de escape o secuencia de escape.<br />
  21. 21. SENTENCIA EN C<br />
  22. 22. SENTENCIA EN C<br />El operador &lt;&lt; es una buena elección para representar la operación de salida, se puede concatenar diferentes operadores en una sola línea y utilizar la misma sintaxis para visualizar todos los tipos de datos básicos en un flujo.<br /> <br />El operador &lt;&lt; convierte automáticamente la representación interna de la variable en una representación de textos.<br />Ejemplo:<br />cout &lt;&lt; 45; // Visualiza 45<br />cout &lt;&lt; 1.23457 // Visualiza 1.23457<br />cout &lt;&lt; “Hola” // Visualiza Hola<br />
  23. 23. SENTENCIA EN C<br />Al final de un cout se puede colocar un carácter de nueva línea de modo que el cursor se mueva una línea debajo de la siguiente manera:<br /> <br />cout&lt;&lt; “Aprendo C++”;<br /> cout&lt;&lt;“ ”;<br />cout&lt;&lt; “Aprendo c++”&lt;&lt;“ ”;<br />cout &lt;&lt; “Aprendo C++ ”;<br />
  24. 24. SENTENCIA EN C<br />Secuencias de escape<br />Las secuencias de caracteres en las que el primero es la barra invertida, se denominaron secuencias de escape y aunque originariamente se utilizaron para la representación de los caracteres de control, por extensión pueden representarse de este modo todos los códigos ASCII. Además se dispone de algunos símbolos predefinidos para los caracteres más frecuentes. Por ejemplo, se utiliza para representar el carácter nueva línea (decimal 10). Los símbolos utilizados se muestran en la tabla adjunta<br />
  25. 25. SENTENCIA EN C<br />Secuencia   Valor     Símbolo     Que Hace                            <br /> a               0x07         BEL    Sonido audible (bell)<br />                0x08          BS     Retroceso (backspace)<br /> f               0x0C          FF      Salto de formato (formfeed)<br />                 0x0A         LF       Saltar una línea (linefeed)<br />                 0x0D         CR      Retorno de carro (carriagereturn)<br />                 0x09          HT      Tabulación horizontal (H Tab)<br /> v               0x0B         VT      Tabulación vertical (V Tab)<br />               0x5c                     Barra invertida (backslash)<br /> &apos;               0x27           &apos;          Apóstrofo (comilla simple)<br /> &quot;               0x22           &quot;         Doble comilla<br /> ?               0x3F           ?        Interrogación<br /> <br />
  26. 26. SENTENCIA EN C<br />PROGRAMA EJEMPLO:<br />   #include &lt;iostream.h&gt;<br />void main() <br /> {<br />intedad=18;<br /> float peso=64.50;<br />char inicial = ’l’;<br />cout&lt;&lt; “Mi edad es “&lt;&lt; edad;<br />cout &lt;&lt;“ ”;<br /> cout&lt;&lt;“Mi ”;<br /> cout&lt;&lt;“peso es”;<br /> cout&lt;&lt;peso&lt;&lt;“ ”;<br /> cout&lt;&lt;“Mi inicial es “&lt;&lt; inicial&lt;&lt;“ ”; <br /> }<br />
  27. 27. MANIPULADORES<br />La bibliotecaiostreamtienevariosoperadoresparticularesllamadosmanipuladores que le permitecontrolarprecisamente el formato de los datosvisualizados.<br /> <br />Situando un manipulador en la cadena de operadores &lt;&lt;, se puede modificar el estado de flujo.<br /> <br />Una característica importante de un flujo es que debe tratar con valores numéricos en diferentes bases numéricas.<br /> <br />
  28. 28. MANIPULADORES<br />La biblioteca iostream tiene tres manipuladores (dec, hex, oct) para controlar la conversión de un valor cuando se desea verlo en pantalla.<br /> <br />La conversión por defecto es la base 10<br /> <br />Por ejemplo:<br />#include &lt;iostream.h&gt;<br />…..<br />int i=100;<br />cout &lt;&lt; dec &lt;&lt; i &lt;&lt; endl; //visualiza 100<br />cout &lt;&lt; hex &lt;&lt; i &lt;&lt; endl; //visualiza 64<br />cout &lt;&lt; oct &lt;&lt; i &lt;&lt; endl; //visualiza 144 <br />
  29. 29. FUNCIONES<br />Control del formato<br /> <br />Los manipuladores setw () y setprecision () controlan la anchura y la precisión de los datos impresos.<br />Pertenecen a la librería iomanip.h<br />Por ejemplo:<br /> <br />cout &lt;&lt; 20;<br />cout &lt;&lt; 30;<br />cout &lt;&lt; 40;<br /> <br />La salida sin formato es:<br />203040<br />
  30. 30. FUNCIONES<br />Utilizando setw()<br /> <br />int i=100;<br />//estableciendo una anchura de 6<br />cout &lt;&lt;setw(6)&lt;&lt; dec &lt;&lt; i &lt;&lt; endl; <br />cout &lt;&lt; setw(6)&lt;&lt;hex &lt;&lt; i &lt;&lt; endl; <br />cout &lt;&lt; setw(6)&lt;&lt;oct &lt;&lt; i &lt;&lt; endl; <br />Ahora la salida sería:<br />100<br /> 64<br />144<br /> <br />
  31. 31. FUNCIONES<br />Otro ejemplo<br />int i=100;<br />//estableciendo una anchura de 10<br />cout &lt;&lt;setw(10)&lt;&lt; 123 &lt;&lt; endl; <br />cout &lt;&lt; setw(10)&lt;&lt;12345 &lt;&lt; endl; <br />cout &lt;&lt; setw(10)&lt;&lt;1234567 &lt;&lt; endl; <br /> <br />Ahora la salida sería:<br /> 123<br /> 12345 <br />12314567<br />
  32. 32. FUNCIONES<br />El manipulador setprecision() determina cuantos dígitos de precisión se visualizan, es especialmente útil para valores de coma flotante que limitan el número de posiciones decimales visualizadas. Por ejemplo:<br /> <br />cout &lt;&lt;3.14159 &lt;&lt; endl; <br />cout &lt;&lt; setprecision(3)&lt;&lt;3.14159 &lt;&lt; endl; <br /> <br />Ahora la salida sería:<br /> <br />3.14159 <br />3.142<br />
  33. 33. ENTRADAS BÁSICAS<br />Cin<br />El objeto cin actúa como el teclado y combinando con el operador &gt;&gt; produce una pausa en un programa y espera a que el usuario introduzca por teclado datos.<br /> <br />Con un solo cin se puede obtener uno o mas valores (al igual como sucede con cout que puede visualizar uno o más valores), siempre que separe los valores que siguen a cin con operadores &gt;&gt; adicionales. <br />
  34. 34. OPERADORES<br />Vamos a ilustrar con el siguiente gráfico:<br />
  35. 35. OPERADORES<br />Para obtener múltiples valores con un solo cin, requiere que el usuario debe escribir un caracter espacio en blanco entre los valores.<br /> <br />Recuerde que en la terminología del C++ un espacio en blanco es cualquier pulsación de las teclas tabulación, espaciador o return (enter o intro).<br /> <br />Por consiguiente en respuesta a la sentencia:<br /> <br />cin&gt;&gt;a&gt;&gt;b&gt;&gt;c; //lee 3 valores de teclado<br /> <br />
  36. 36. OPERADORES<br /><ul><li>El usuario puede introducir tres valores separados por un blanco :</li></ul> 5 8 6<br /><ul><li>O bien puede pulsar la tecla tab :</li></ul> 5 8 6<br /><ul><li>O bien puede pulsar la tecla intro :</li></ul> 5<br /> 8<br /> 6<br /> <br />
  37. 37. OPERADORES<br />En cualquiera de los tres casos el efecto será el mismo.<br /> <br />IMPORTANTE:<br /> <br />Si se introduce<br /> 5, 8, 6<br /> <br />El compilador C++ no considera la coma como espacio en blanco y en consecuencia solo se pone 5 en a y las otras variables almacenarán basura en ellas.<br />
  38. 38. EXPRESIONES<br />Para evitar el error de introducir caracteres no blancos como separadores, es bueno visualizar en pantalla mensajes de advertencia al usuario tales como:<br /> <br />cout &lt;&lt; “por favor, introduzca tres números ”;<br />cout &lt;&lt; “separe el valor con un blanco, ”;<br />cout &lt;&lt; “nunca con comas ”;<br />cin &gt;&gt; a&gt;&gt; b &gt;&gt; c;<br /> <br />
  39. 39. EXPRESIONES<br />En caso de duda, será preferible situar un cin en cada una de las líneas:<br /> <br />cout &lt;&lt; “introduzca el primer valor ”;<br />cin &gt;&gt; a;<br />cout &lt;&lt; “cual es el segundo valor ”;<br />cin &gt;&gt; b;<br />cout &lt;&lt; “cual es el tercer valor”;<br />cin &gt;&gt; c;<br /> <br /> <br />
  40. 40. INSTRUCCIÓN DE ASIGNACIÓN<br />= <br />El operador de asignación es una etiqueta que permita asignar un valor a una variable que se encuentra en la memoria principal.<br /> <br />La estructura de una instrucción de asignación:<br />
  41. 41. EXPRESIONES<br />Donde :<br /> valor: Puede ser una constante, un identificador de variable o una expresión aritmética o el nombre de una función.<br /> <br />Ejemplos:<br /> <br />A = 20;<br />La constante 20 es asignada a la variable A<br /> <br />P = A;<br />El valor que contiene almacenada la variable A es asignada a la variable P<br />  <br />
  42. 42. EXPRESIONES<br /> <br />R = X + Y;<br />El valor resultante de la expresión aritmética formada por dos identificadores de variable es asignada a la variable R<br /> <br />Z= suma(a);<br />El valor que devuelve la función SUMA es asignado a la variable Z<br /> <br /> <br />
  43. 43. EXPRESIONES<br />ASIGNACION MÚLTIPLE<br /> <br />Aunque parezcan un poco extrañas al principio las asignaciones, al igual que las otras operaciones, dan un resultado que puede asignarse a su vez a otra expresión. <br />De la misma forma que (a + b) es evaluada y su resultado puedo copiarlo en otra variable: c = (a + b) ; una asignación (a = b) da como resultado el valor de b , por lo que es lícito escribir <br /> c = ( a = b );<br /> <br />
  44. 44. EXPRESIONES<br />ASIGNACION A UNA MISMA VARIABLE<br /> <br />El hecho de que estas operaciones se realicen de derecha a izquierda también permite realizar instrucciones del tipo: <br /> a = a + 17 ;<br /> <br />significando esto que al valor que tenia anteriormente a , se le suma la constante y luego se copia el resultado en la variable . <br />Como este último tipo de operaciones es por demás común, existe en C un pseudocódigo , con el fin de abreviarlas . <br />
  45. 45. EXPRESIONES<br />Así una operación aritmética o de bit cualquiera (simbolizada por OP )  <br /> a = (a) OP (b) ;<br /> <br />puede escribirse en forma abreviada como : a OP= b ;<br /> <br />Por ejemplo :  a += b   ;     /* equivale :  a = a + b */<br /> a *= b   ;    /* equivale :  a = a * b */<br /> a /= b   ;     /* equivale :  a = a / b */<br /> a %= b   ;    /* equivale :  a = a % b */<br />  <br />Nótese que el pseudooperador debe escribirse con los dos símbolos seguidos, por ejemplo +=, y no será aceptado +(espacio) = .<br />
  46. 46. TIPOS DE INSTRUCCIONES<br />ASIGNACIÓN CONDICIONAL<br /> El significado del mismo es el siguiente: <br /> <br />lvalue = (operación relacional ó lógica) ? (rvalue 1) : (rvalue 2) ;<br /> <br />de acuerdo al resultado de la operación condicional se asignará a lvalue el valor de rvalue 1 ó 2 . <br /> <br />Es decir:<br />Si aquella es CIERTA será lvalue = rvalue 1 y <br /> <br />Si diera FALSO, lvalue = rvalue 2 . <br />.<br />
  47. 47. TIPOS DE INSTRUCCIONES<br />Ejemplo:<br />Si se desea asignar a c el menor de los valores a ó b , se debe escribir lo siguiente:<br /> c = (a &lt; b) ? a : b ;<br /> <br />
  48. 48. EXPRESIONES<br />Los operadores de asignación están resumidos en la siguiente tabla;. <br />TABLA OPERADORES DE ASIGNACION<br />
  49. 49. EXPRESIONES<br />OPERADORES DE INCREMENTO Y DECREMENTO<br />Los operadores de incremento y decremento son sólo dos y están descriptos en la TABLA<br />TABLA OPERADORES DE INCREMENTO Y DECREMENTO<br />
  50. 50. ENTRADAS Y SALIDAS BASICAS <br />Para visualizar rápidamente la función de los operadores mencionados, tenemos las sentencias: <br />a = a + 1 ;<br />a++ ;<br /> <br />tienen una acción idéntica , de la misma forma que <br />a = a - 1 ;<br />a-- ;<br /> <br />es decir incrementa y decrementa a la variable en una unidad .<br />
  51. 51. ENTRADAS Y SALIDAS BASICAS <br />Si bien estos operadores se suelen emplear con variables int , pueden ser usados sin problemas con cualquier otro tipo de variable . Así si a es un float de valor 1.05 , luego de hacer a++ adoptará el valor de 2.05 y de la misma manera si b es una variable del tipo char que contiene el caracter &apos;C&apos; , luego de hacer b-- su valor será &apos;B&apos; <br />Si bien las sentencias <br />i++ ;<br />++i ;<br />son absolutamente equivalentes, en la mayoría de los casos la ubicación de los operadores incremento ó decremento indica CUANDO se realiza éste.<br />
  52. 52. ENTRADAS Y SALIDAS BASICAS <br />Ejemplo: <br /> <br />int i = 1 , j , k ;<br />j = i++ ;<br />k = ++i ;<br /> <br />Donde j es igualado al valor de i y POSTERIORMENTE a la asignación i es incrementado por lo que j será igual a 1 e i igual a 2 , luego de ejecutada la sentencia .<br />En la siguiente instrucción i se incrementa ANTES de efectuarse la asignación tomando el valor de 3 , él que luego es copiado en k .<br />
  53. 53. ENTRADAS Y SALIDAS BASICAS <br />CONVERSIÓN AUTOMÁTICA DE TIPOS<br />Cuando dos ó mas tipos de variables distintas se encuentran DENTRO de una misma operación ó expresión matemática, ocurre una conversión automática del tipo de las variables. <br />
  54. 54. ENTRADAS Y SALIDAS BASICAS <br />En todo momento de realizarse una operación se aplica la siguiente secuencia de reglas de conversión (previamente a la realización de dicha operación): <br />1) Las variables del tipo char ó short se convierten en int.<br />2) Las variables del tipo float se convierten en double. <br />3) Si alguno de los operandos es de mayor precisión que los demás , estos se convierten al tipo de aquel y el resultado es del mismo tipo. <br />4) Si no se aplica la regla anterior y un operando es del tipo unsigned el otro se convierte en unsigned y el resultado es de este tipo. <br />
  55. 55. COMPILACION Y ENLAZADO EN C <br />Las reglas 1 a 3 no presentan problemas, sólo nos dicen que previamente a realizar alguna operación las variables son promovidas a su instancia superior. Esto no implica que se haya cambiado la cantidad de memoria que la aloja en forma permanente .<br />Otro tipo de regla se aplica para la conversión en las asignaciones. <br />Si se define los términos de una asignación como,&quot;lvalue&quot; a la variable a la izquierda del signo igual y &quot;rvalue&quot; a la expresión a la derecha del mismo, es decir: <br /> &quot;lvalue&quot; = &quot;rvalue&quot; ;<br /> <br />
  56. 56. COMPILACION Y ENLAZADO EN C <br />Posteriormente al cálculo del resultado de &quot;rvalue&quot; (de acuerdo con las reglas antes descriptas), el tipo de este se iguala al del &quot;lvalue&quot;. El resultado no se verá afectado si el tipo de &quot;lvalue&quot; es igual ó superior al del &quot;rvalue&quot;, en caso contrario se efectuará un truncamiento ó redondeo, según sea el caso. <br />Por ejemplo, el pasaje de float a int provoca el truncamiento de la parte fraccionaria, en cambio de double a float se hace por redondeo. <br />. <br />
  57. 57. COMPILACION Y ENLAZADO EN C <br />Librería math ANSI C<br />Contiene los prototipos de las funciones y otras definiciones para el uso y manipulación de funciones matemáticas.<br /> <br />Funciones<br /> <br />acosasin atan atan2 <br />ceilcoscoshexp<br />fabsfloorfmodfrexp<br />ldexp log log10 modf<br />pow sin sinhsqrt<br />tan tanh<br />
  58. 58. COMPILACION Y ENLAZADO EN C <br />Función pow ANSI C<br /> Calcula x elevado a la potencia de y. Puede producirse un error de dominio si x es negativo e y no es un valor entero. También se produce un error de dominio si el resultado no se puede representar cuando x es cero e y es menor o igual que cero. Un error de recorrido puede producirse.<br /> <br />Sintaxis:<br /> double pow(double x, double y);<br /> <br /> Valor de retorno:<br />La función pow retorna el resultado de xy.<br />
  59. 59. COMPILACION Y ENLAZADO EN C <br />Ejemplo:<br /> <br />#include &lt;iostream.h&gt;<br />#include &lt;math.h&gt;<br /> <br />int main()<br />{<br /> double x = 6.54321, y = 0.56789;<br /> <br />cout&lt;&lt;”pow(“&lt;&lt;x&lt;&lt;”,”&lt;&lt;y&lt;&lt;” ) = “&lt;&lt; pow(x,y);<br /> return 0;<br />}<br /> <br />
  60. 60. EXPRESIONES<br />Función sqrt ANSI C<br /> <br />Calcula la raíz cuadrada del valor no negativo de x. Puede producirse un error de dominio si x es negativo.<br /> <br />Sintaxis<br />double sqrt(double x);<br /> <br /> <br />Valor de retorno:<br />La función sqrt retorna el resultado de la raíz cuadrada de x.<br /> <br />
  61. 61. EXPRESIONES<br />Ejemplo:<br />#include &lt;iostream..h&gt;<br />#include &lt;math.h&gt;<br /> <br />int main()<br />{<br /> double x = 6.54321;<br /> <br />cout&lt;&lt; &quot;sqrt(“&lt;&lt;x&lt;&lt;” )= “&lt;&lt; sqrt(x);<br />return 0;<br />}<br /> <br /> <br />
  62. 62. EXPRESIONES<br />Función sin ANSI C<br /> <br />Calcula el seno de x (medido en radianes).<br /> <br />Sintaxis:<br /> <br />double sin(double x);<br /> <br /> <br />Valor de retorno:<br />La función sin retorna el seno, en radianes.<br /> <br />
  63. 63. EXPRESIONES<br /> Ejemplo:<br />#include &lt;iostream.h&gt;<br />#include &lt;math.h&gt;<br />int main()<br />{<br /> double x = 3.1416/3.0;<br /> <br />cout&lt;&lt; &quot;sin(“&lt;&lt;x&lt;&lt;” ) = “&lt;&lt; sin(x);<br />return 0;<br />}<br />

×