Introduccin al Lenguaje de Programacin C IV: Funciones - PowerPoint PPT Presentation

1 / 13
About This Presentation
Title:

Introduccin al Lenguaje de Programacin C IV: Funciones

Description:

Separar trabajo entre programadores. Realizar trabajos m s complejos. La idea de las funciones es generar modularidad, cajas negras, chips que se ... – PowerPoint PPT presentation

Number of Views:120
Avg rating:3.0/5.0
Slides: 14
Provided by: FelipeC2
Category:

less

Transcript and Presenter's Notes

Title: Introduccin al Lenguaje de Programacin C IV: Funciones


1
Introducción al Lenguaje de Programación C
(IV)Funciones
  • Clase 6
  • Introducción a la Programación

2
Para qué sirven las funciones
  • No repetir lo mismo varias veces en el código
  • Ordenar el código
  • Comprender más fácilmente el código
  • Separar trabajo entre programadores
  • Realizar trabajos más complejos
  • La idea de las funciones es generar modularidad,
    cajas negras, chips que se conectan entre sí y
    que sólo conocen sus interfaces y no cómo
    operan por dentro
  • Las funciones son MUY importantes!

3
Ejercicios
  • Desarrollar las siguientes funciones
  • Calcule el logaritmo en base dos de un número.
  • Retorne 0 si un numero es par o 1 si es impar.
  • Retorne 0 si un año es bisiesto y 1 si no.
  • Retorne el área de un triángulo dado b y h.

4
Las funciones también pueden realizar un trabajo
aparte de retornar un valor
  • Ejemplo imprime la tabla de un numero

void imprimeTabla(int n) printf("i x 0
0\n", n) printf("i x 1 i\n", n, n)
printf("i x 2 i\n", n, n2) printf("i x
3 i\n", n, n3) printf("i x 4 i\n",
n, n4) main() int numero
printf("Que tabla quieres saber ")
scanf("i", numero) printf("La tabla del i
es", numero) imprimeTabla(numero)
  • Las funciones que no retornan un valor deben
    tener tipo de datos void

5
Paso de parámetros por valor
  • Al pasar un parámetro a una función ésta recibe
    una copia de la variable original
  • Cual sería la implicancia de esto ?
  • Ejemplo
  • Más adelante cuando veamos punteros veremos el
    paso de parámetros por referencia, caso en el
    cual las modificaciones al parámetro si persisten
    luego de ejecutar la función

6
Vida útil (o ámbito) de las variables
  • Las variables sólo existen dentro de la función
    en que son creadas.
  • Que pasaría si no fuese así?
  • Efectos secundarios
  • Código spaghetti
  • Sin embargo, y con cuidado, esta regla se puede
    saltar, vía dos mecanismos
  • Variables globales
  • Variables estáticas

7
Variables globales
  • Definidas afuera del main ? son visibles por
    desde todas partes del programa. Ejemplo

float iva1.18 float conIva(float monto)
return(montoiva) main() int plata
printf("El iva es f\n", (iva-1)100)
printf("Ingrese un monto sin IVA \n")
scanf("i", plata) printf("El monto con iva
es f\n", conIva(plata))
Cuándo conviene usarlas?
8
Variables estáticas
  • Persisten entre llamadas a la misma función.
    Ejemplo

int contador() static c 0 c
printf("la cuenta va en i\n", c) main()
contador() contador() contador()
9
Algunos detalles sobre el lenguaje C
  • Conversiones de tipos
  • Más formatos de entrada y salida
  • El problema de intercambiar dos variables
  • Resumen estructura de un programa

10
Conversiones de tipos
  • Conversiones automáticas
  • De entero a flotante
  • a 4 4.0 ? 4.0 4.0 ? 8.0
  • De flotante a entero
  • b 3.5 3 ? 3.5 3.0 ? 6.5 ? 6
  • Conversiones manuales (casting de tipos)
  • (float)1 ? 1.0
  • (int)1.5 ? 1.0

Para los ejemplos float a int b
11
Más formatos de entrada y salida
  • Formatos para imprimir punto flotante
  • e 1.234000e-03
  • f 0.001234
  • 10f 0.001234
  • 10.3f 0.001
  • Formatos para imprimir enteros
  • i ó d 51
  • 2d 51
  • 4d __51
  • Formatos para leer (scanf)
  • d ó i int
  • h short int
  • lx long int
  • f float
  • lf double
  • c char
  • s cadena de caracteres (strings, por verse)

12
El problema de intercambiar dos variables
  • En C

tmpA AB Btmp
13
Resumen estructura de un programa
include ltlibreríasgt  define ltidentificadorgt
ltconstantegt typedef ltdefinición_de_nuevos_tipos_
de_datosgt ltvariables_globalesgt ltdefinición_de_fu
ncionesgt lttipogt main()      
ltcuerpo_de_la_función_principalgt
  • Inclusión de librerías
  • Constantes
  • Definición de tipos
  • Variables globales
  • Definición de funciones
  • Programa principal

por ver
Write a Comment
User Comments (0)
About PowerShow.com