Publicidad
Publicidad

Más contenido relacionado

Publicidad

Más de Jaime David Romero Olivo(20)

Publicidad

Funciones en Lenguaje C

  1. FUNCIONES: Las Subrutinas de Lenguaje C Prof. Jaime Romero
  2. SUBRUTINAS Una subrutina es una porción de código que forma parte de un programa más grande. Esa porción de código realiza una tarea específica, relativamente independiente del resto del código. La mayoría de los lenguajes de programación soportan la creación de subrutinas y métodos para llamarlas (invocarlas) y retornarlas.
  3. SUBRUTINAS Existen varias ventajas de "romper" un programa en subrutinas: • Reducción de código duplicado. • Permite el reuso de código en múltiples programas. • Descomposición de problemas complejos en simples piezas (lo que aumenta la mantenibilidad y extensibilidad). • Aumenta la legibilidad del código de un programa..
  4. SUBRUTINAS Muchos lenguajes de programación distinguen distintas subrutinas. Por ejemplo, el lenguaje Pascal distingue entre la subrutina Procedimiento y la subrutina Función. En cambio existen otros lenguajes que los tratan como sinónimos. En lenguaje C existe sólo un tipo de Subrutina: Las Funciones, aunque dependiendo del tipo de valor que estas retornen pueden ser utilizada tanto como procedimientos, o como funciones.
  5. SUBRUTINAS PROCEDIMIENTOS. Son subrutinas que realizan un trabajo, pero que no retornan ningún valor en su estructura. FUNCIONES. Son subrutinas que realizan un trabajo, y que retornan un valor en su estructura.
  6. FUNCIONES El lenguaje de programación C, es un lenguaje modularizado por excelencia. La modularización, es una técnica usada por los programadores para hacer sus códigos más cortos, ya que consiste en reducir un gran problema complejo, en pequeños problemitas más sencillos, concentrándose en la solución por separado, de cada uno de ellos.
  7. FUNCIONES La sintaxis de una función es la siguiente: Tipo_de_datos nombre_de_la_funcion (tipo y nombre de argumentos) { acciones o comandos; } donde: Tipo_de_datos: Es el tipo de dato que devolverá esa función, que puede ser real, entera, o tipo void (es decir que no devolverá ningún valor, en este caso la función trabajo como un Procedimiento).
  8. FUNCIONES La sintaxis de una función es la siguiente: Tipo_de_datos nombre_de_la_funcion (tipo y nombre de argumentos) { acciones o comandos; } donde: Nombre_de_la_funcion: Es el identificador que le damos a nuestra función, la cual debe cumplir las reglas de los identificadores.
  9. FUNCIONES La sintaxis de una función es la siguiente: Tipo_de_datos nombre_de_la_funcion (tipo y nombre de argumentos) { acciones o comandos; } donde: Tipo y nombre de argumentos: son los parámetros que recibe la función. Los argumentos de una función no son más que variables locales que reciben un valor. Este valor se lo enviamos al hacer la llamada a la función. Pueden existir funciones que no reciban argumentos.
  10. FUNCIONES La sintaxis de una función es la siguiente: Tipo_de_datos nombre_de_la_funcion (tipo y nombre de argumentos) { acciones o comandos; } donde: Acciones: Constituye el conjunto de acciones, de sentencias que cumplirá la función, cuando sea ejecutada. Entre ellas están: Asignaciones, Lecturas, Impresiones, Cálculos, entre otros.
  11. FUNCIONES En las funciones juegan un papel muy importe las variables, ya que como se ha dicho estas pueden ser locales o globales. Variables Globales: Estas se crean durante toda la ejecución del programa, y son globales, ya que pueden ser llamadas, leídas, modificadas, etc; desde cualquier función. Se definen antes del main(). Variables Locales: Estas, pueden ser utilizadas únicamente en la función que hayan sido declaradas.
  12. FUNCIONES #include <librería> Variables Globales: funcionan dentro de todas las funciones del int x,y,z programa. aaaa( ){ Variables Locales: sólo funcionan dentro de la int var1, var2, var 3; función donde son declaradas, y se destruyen Acciones; cuando se sale de ella Return(); } Main (){ int var4, var5; Variables Locales de la Función Main: sólo } funcionan dentro de la función Main, y se destruyen cuando se sale de ella
  13. Argumentos o Parámetros Un Parámetro, también conocido como argumento de una función es una variable, o un valor que se le “pasa” a la función para que esta los utilice para sus trabajo, pudiendo incluso cambiar sus valores. Un parámetro es ese valor que le damos a la función para que realice su trabajo, aunque pueden existir funciones a las cuales no se les pasa ningún parámetro.
  14. Argumentos o Parámetros Existen dos tipos de paso de parámetros: Parámetros por Valor: Aquí solo se pasa a la función el valor de las variables o los literales que le enviamos como parámetros, en consecuencia la función NO puede cambiar el valor de las variables. Parámetros por Referencia: Aquí se pasa a la función tanto el valor de las variables, como su dirección de estas en la memoria, por lo cual la la función puede cambiar el valor de las variables. Si la variable es global, la función SIEMPRE puede modificar su valor
  15. Llamadas a una Función Una función puede ser llamada o invocada a través de los siguiente métodos: Por una asignación: variable = función(); Por una impresión: printf(“%d”, función()); Por una condición: if (funcion()==0) switch (funcion()) o cualquier tipo de condición lógica.
  16. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; Al iniciar un programa en return (mayor); Lenguaje C, siempre } void main(){ automáticamente se int num1, num2, num3,may; busca la función printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); inicial, es decir, la printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); función MAIN, y se printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); comienza a ejecutar may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ printf(“El Mayor es: %d”,may);} }
  17. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; Se crean cuatro variables return (mayor); globales de tipo entero } void main(){ num1 int num1, num2, num3,may; num2 printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); num3 printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); may printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ num1 num2 num3 may printf(“El Mayor es: %d”,may);} }
  18. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; Se lee el primer valor, y if ((c>a)&&(c>b)) mayor=c; éste es almacenado en la return (mayor); } variable num1. void main(){ Supongamos que el int num1, num2, num3,may; usuario introduce el printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); numero 5 printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5
  19. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; Se lee el segundo valor, y return (mayor); } éste es almacenado en la void main(){ variable num2. int num1, num2, num3,may; Supongamos que el printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); usuario introduce el printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); numero 3 printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3
  20. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; Se lee el tercer valor, y return (mayor); éste es almacenado en la } variable num3. void main(){ Supongamos que el int num1, num2, num3,may; usuario introduce el printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); numero 8 printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  21. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; return (mayor); } void main(){ Como en toda int num1, num2, num3,may; asignación, primero se printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); evalúa lo que se printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); encuentra a la derecha printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); de l símbolo igual (=) may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  22. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; return (mayor); } void main(){ int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); Aquí se encuentra que printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); se llama a una función may = mayor(num1, num2,num3); denominada mayor if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  23. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila #include <stdio.h> 15 int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; El sistema operativo return (mayor); marca esta línea como el } lugar desde donde se void main(){ llama a una función, y int num1, num2, num3,may; esta dirección de printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); memoria se almacena printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); den una estructura printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); denominada stack o pila 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  24. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c #include <stdio.h> 15 5 3 8 int mayor(int a, int b, int c){ int mayor=0; Se crean temporalmente if ((a>b)&&(a>c)) mayor=a; los parámetros de la if ((b>a)&&(b>c)) mayor=b; función y se copian el if ((c>a)&&(c>b)) mayor=c; valor de los parámetros return (mayor); de la llamada en los } void main(){ parámetros de la función, int num1, num2, num3,may; según el orden printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); en que estos son printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); invocados printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  25. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c #include <stdio.h> 15 5 3 8 int mayor(int a, int b, int c){ int mayor=0; La ejecución del if ((a>b)&&(a>c)) mayor=a; programa, se traslada de if ((b>a)&&(b>c)) mayor=b; inmediato a la primera if ((c>a)&&(c>b)) mayor=c; línea de la función return (mayor); } void main(){ int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  26. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c m #include <stdio.h> 15 5 3 8 0 int mayor(int a, int b, int c){ int m=0; Se crea una variable local if ((a>b)&&(a>c)) m=a; de nombre m, y se le if ((b>a)&&(b>c)) m=b; asigna el valor cero (0). if ((c>a)&&(c>b)) m=c; return (m); } void main(){ int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  27. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c m #include <stdio.h> 15 5 3 8 0 int mayor(int a, int b, int c){ int m=0; Si el valor de la variable a if ((a>b)&&(a>c)) m=a; es mayor que los valores if ((b>a)&&(b>c)) m=b; de las variable b, c; if ((c>a)&&(c>b)) m=c; entonces a la variable m return (m); se le asigna el valor de la } void main(){ variable a. int num1, num2, num3,may; Como esta condición no printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); se cumple, no se realiza printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); ninguna acción. printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  28. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c m #include <stdio.h> 15 5 3 8 0 int mayor(int a, int b, int c){ int m=0; Si el valor de la variable b if ((a>b)&&(a>c)) m=a; es mayor que los valores if ((b>a)&&(b>c)) m=b; de las variable a, c; if ((c>a)&&(c>b)) m=c; entonces a la variable m return (m); se le asigna el valor de la } void main(){ variable b. int num1, num2, num3,may; Como esta condición no printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); se cumple, no se realiza printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); ninguna acción. printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  29. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c m #include <stdio.h> 15 5 3 8 8 int mayor(int a, int b, int c){ int m=0; Si el valor de la variable c if ((a>b)&&(a>c)) m=a; es mayor que los valores if ((b>a)&&(b>c)) m=b; de las variable a, b; if ((c>a)&&(c>b)) m=c; entonces a la variable m return (m); se le asigna el valor de la } void main(){ variable c. int num1, num2, num3,may; Como esta condición SI se printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); cumple, se realiza esa printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); acción printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  30. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c m #include <stdio.h> 15 5 3 8 8 int mayor(int a, int b, int c){ int m=0; El comando RETURN hace if ((a>b)&&(a>c)) m=a; que la función Retorne o if ((b>a)&&(b>c)) m=b; devuelva el valor if ((c>a)&&(c>b)) m=c; indicado, en este caso el return (m); valor de la variable m, es } void main(){ decir, 8. int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  31. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. Pila a b c m #include <stdio.h> 15 5 3 8 8 int mayor(int a, int b, int c){ int m=0; Al encontrarse el fin de la if ((a>b)&&(a>c)) m=a; función primero se if ((b>a)&&(b>c)) m=b; destruyen los parámetros if ((c>a)&&(c>b)) m=c; y variables locales. return (m); Luego el flujo del } void main(){ programa vuelve a la int num1, num2, num3,may; línea que indica la última printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); dirección almacenada en printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); la pila, en este caso 15 printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); 15 may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8
  32. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int m=0; Aquí se cambia el nombre if ((a>b)&&(a>c)) m=a; de la función y sus if ((b>a)&&(b>c)) m=b; parámetros, por el valor if ((c>a)&&(c>b)) m=c; que esta ha devuelto, en return (m); este caso 8. } void main(){ Luego se asigna el valor a int num1, num2, num3,may; la variable may printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8 8
  33. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int m=0; if ((a>b)&&(a>c)) m=a; if ((b>a)&&(b>c)) m=b; if ((c>a)&&(c>b)) m=c; Si el valor de la variable return (m); may es cero, se escribe } que los numero son void main(){ iguales, en este caso la int num1, num2, num3,may; condición no se cumple y printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); por lo tanto no se realiza printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); la acción de escribir, y se printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); pasa el flujo del programa may = mayor(num1, num2,num3); if (may==0){ al ELSE printf(“Los Numeros son iguales”);} else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8 8
  34. ¿Cómo se ejecuta una Función? El siguiente programa utiliza una función para encontrar el mayor de tres numeros positivos, o retornar cero (0) si son iguales. #include <stdio.h> int mayor(int a, int b, int c){ int m=0; if ((a>b)&&(a>c)) m=a; if ((b>a)&&(b>c)) m=b; if ((c>a)&&(c>b)) m=c; Ya en el ELSE se escribe return (m); el mensaje “El Mayor es:” } y el valor de la variable void main(){ may, es decir 8. int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); Indicando que el mayor printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); de 5,3,8 es el 8, lo cual es printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); verdad, y por lo tanto el may = mayor(num1, num2,num3); if (may==0){ programa cumple con su printf(“Los Numeros son iguales”);} objetivo else{ Num1 num2 num3 may printf(“El Mayor es: %d”,may);} } 5 3 8 8
  35. Ejercicio Explica como funciona el siguiente programa cuando los datos de entrada son 30, 25,10 #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; return (mayor); } void main(){ int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ printf(“El Mayor es: %d”,may);} }
  36. Ejercicio Explica como funciona el siguiente programa cuando los datos de entrada son 5, 45,6 #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; return (mayor); } void main(){ int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ printf(“El Mayor es: %d”,may);} }
  37. Ejercicio Explica como funciona el siguiente programa cuando los datos de entrada son 5, 5, 5 #include <stdio.h> int mayor(int a, int b, int c){ int mayor=0; if ((a>b)&&(a>c)) mayor=a; if ((b>a)&&(b>c)) mayor=b; if ((c>a)&&(c>b)) mayor=c; return (mayor); } void main(){ int num1, num2, num3,may; printf(“nnIngrese el primer valor:”); scanf(“%d”,&num1); printf(“nnIngrese el segundo valor:”); scanf(“%d”,&num2); printf(“nnIngrese el tercer valor:”); scanf(“%d”,&num3); may = mayor(num1, num2,num3); if (may==0){ printf(“Los Numeros son iguales”);} else{ printf(“El Mayor es: %d”,may);} }
  38. Ejercicio 1. Realice un programa que a través de una función calcule la media de tres números. 2. Realice un programa que a través de una función día el nombre del día de la semana en función de un numero entero dado, y que también pueda indicar si el numero esta fuera del rango de los días de la semana. 3. Realice un programa que a través de funciones indique que tipo de triangulo se trata en función de triangulo es en base de la longitudes de sus lados, en los siguientes casos. Suponiendo que A determina el mayor de los tres lados y B y C corresponden con los otros dos, entonces: Si A>=B + C No se trata de un triángulo Si A2 = B2 + C2 Es un triángulo rectángulo Si A2 > B2 + C2 Es un triángulo obtusángulo Si A2 < B2 + C2 Es un triángulo acutángulo
Publicidad