Prctica Algoritmos y Lenguaje de Programacin - PowerPoint PPT Presentation

About This Presentation
Title:

Prctica Algoritmos y Lenguaje de Programacin

Description:

printf('Direcci n donde esta almacenado p es: ',&p); Funciones. TIPO ... Indica que es lo retornado ... se trabajan como si fueran punteros. Problema 1 ... – PowerPoint PPT presentation

Number of Views:117
Avg rating:3.0/5.0
Slides: 19
Provided by: miroslavv
Category:

less

Transcript and Presenter's Notes

Title: Prctica Algoritmos y Lenguaje de Programacin


1
Práctica Algoritmos y Lenguaje de Programación
  • 27/04/07

2
Punteros
  • int x
  • int a42
  • xa

3
Aritmética de Punteros
  • int p
  • int A
  • pA
  • p
  • Esto hace que p apunte
  • al siguiente entero, no
  • al siguiente byte.

4
Ejemplo
  • int p
  • int A42
  • pA
  • printf(Valor de p es ,p)
  • printf(Dirección a la que apunta p es ,p)
  • printf(Dirección donde esta almacenado p es
    ,p)

5
Funciones
  • TIPO NOMBRE(ARGUMENTOS)

6
Return
Indica que es lo retornado por la función. Tiene
que ser del mismo tipo que cuando se crea la
función. return 10
7
Prototipos
  • Indican al compilador del tipo de la función, y
    el tipo y cantidad de argumentos.
  • float suma(float a,float b)
  • Float suma(float a,float b)
  • return ab
  • Flotante suma(a,b)

8
Paso por valor
  • Al pasar argumentos, se pasan copias de las
    variables, no las variables reales.

9
Paso por referencia
  • Al pasar argumentos, se le pasan las direcciones
    de las variables.
  • Al ser direcciones, se trabajan como si fueran
    punteros.

10
Problema 1
  • Haga un programa que pida dos enteros por
    teclado. Luego cree una función que tome esos dos
    enteros, obtenga el promedio y lo muestre en
    pantalla.

11
Solución Problema1
include ltstdio.hgt include ltstdlib.hgt void
promedio(int a,int b) int main(int argc, char
argv) int a,b printf("Ingrese un
entero ") scanf("i",a) printf("\nIngrese
un segundo entero ") scanf("i",b)
12
Solución Problema 1
promedio(a,b) system("PAUSE")
return 0 void promedio(int a,int b) int
x x(ab)/2 printf("El promedio es
i\n",x) return
13
Problema 2
  • Cree un programa que llame a una función que
    calcule el área de un rectángulo, a partir de sus
    lados, y otra función que calcule el área de un
    círculo a partir de su radio. Luego compare ambas
    áreas e indique cual es la mayor.
  • Repita el procedimiento con los perímetros.

14
Solución Problema2
include ltstdio.hgt include ltstdlib.hgt int
areaRectangulo(int LadoA,int LadoB) int
areaCirculo(int r) int perimetroRectangulo(int
LadoA, int LadoB) int perimetroCirculo(int r)
15
Solución Problema2
int main(int argc, char argv) int
LadoA,LadoB int radio int
aRectangulo,aCirculo,pRectangulo,pCirculo
LadoA10 LadoB50 radio20
aRectanguloareaRectangulo(LadoA,LadoB)
aCirculoareaCirculo(radio) pRectanguloperimet
roRectangulo(LadoA,LadoB)
16
Solución Problema2
pCirculoperimetroCirculo(radio) if
(aRectangulogtaCirculo) printf("\nEl area del
rectangulo es mayor que la del circulo") if
(aRectanguloaCirculo) printf("\nEl area del
rectangulo es igual que la del circulo") if
(aRectanguloltaCirculo) printf("\nEl area del
rectangulo es menor que la del circulo")
17
Solución Problema2
if (pRectangulogtpCirculo) printf("\nEl
perimetro del rectangulo es mayor que el
perimetro del circulo") if (pRectangulopCircu
lo) printf("\nEl perimetro del rectangulo es
igual que el perimetro del circulo") if
(pRectanguloltpCirculo) printf("\nEl perimetro
del rectangulo es menor que el perimetro del
circulo\n") system("PAUSE") return 0
18
Solución Problema2
int areaRectangulo(int LadoA,int LadoB)
return (LadoALadoB) int areaCirculo(int
r) return (3.14rr) int
perimetroRectangulo(int LadoA, int LadoB)
return (2LadoA2LadoB) int
perimetroCirculo(int r) return (23.14r)
Write a Comment
User Comments (0)
About PowerShow.com