• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Semana05 20122
 

Semana05 20122

on

  • 595 views

 

Statistics

Views

Total Views
595
Views on SlideShare
595
Embed Views
0

Actions

Likes
0
Downloads
25
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Semana05 20122 Semana05 20122 Document Transcript

    • UNIVERSIDAD NACIONAL DE INGENIERIAFACULTAD DE INGENIERIA MECANICACURSO: MB545 SEMANA05 METODOS / FUNCIONES Realizan tareas específicas. Requieren datos para su tarea: parámetros. Pueden retornar un valor como no. Son independientes en su desarrollo NO RETORNAN: void nombre (parámetros) { … } SI RETORNAN: Tipo de datos nombre (parámetros) { … return x; }PARAMETROS: reciben valores para utilizarlos en su tarea específica(Tipo de dato p1, tipo de dato p2,…)COMO SE UTILIZAN / INVOCAN:Cuando el método No retorna: nombre (valores);Cuando el método Si retorna: variable = nombre (valores);SON INDEPENDIENTES EN SU DESARROLLO: void nombre (parámetros) { …. //variable int x; } int nombre (parámetros) { … //variable doublé x; return x; }LA UTILIZACIÓN O INVOCACIÓN SE REALIZA: Donde se necesite Cuantas veces sea necesarioElaborado por Ing. Julio Vásquez Paragulla 1
    • UNIVERSIDAD NACIONAL DE INGENIERIAFACULTAD DE INGENIERIA MECANICACURSO: MB545 SEMANA05 METODOS / FUNCIONES EJERCICIOS1.- Desarrolle un método/función que me retorne el factorial de un número entero, verifique que el númerosea menor que 15 de lo contrario que retorne -1. int factorial (int n) { int f; if (n<=15) { for ( int c=1; c<=n; c++) f *=c; return f; } else return -1; }2.- Desarrolle un método/función que reciba dos números y retorne el mayor de ellos double mayorDe2 (double a, double b) { if ( a>b) return a; else return b; }3.- Desarrolle un método/función que reciba tres números y retorne el mayor de ellos. Utilice elmétodo/function anterior. double mayorDe3 (double a, double b, double c) { return mayorDe2 (mayorDe2 (a, b), c ); }4.- Desarrolle un método/función que reciba el mes y el año como números enteros y devuelva la cantidadde días que tiene el mes. Considere 29 dias en febrero para años bisciestos. Un año es bisciesto cuandoes múltiplo de 4 pero no de 100 excepto 400. int diasDelMes (int m, int a) { switch (m) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31; case 4: case 6: case 9: case 11: return 30; default : if(a%4==0 && (a%100!=0 || a%400==0) return 29; else return 28; } }Elaborado por Ing. Julio Vásquez Paragulla 2
    • UNIVERSIDAD NACIONAL DE INGENIERIAFACULTAD DE INGENIERIA MECANICACURSO: MB545 SEMANA05 METODOS / FUNCIONES5.- Desarrolle un método/función que imprima el factorial de los 10 primeros números naturales. void factoriales ( ) { for (int n=1; n<=10;n++){ cout<< ( n+ “t”+ factorial (n)) } }6.- Desarrolle un método/función que retorne el ene-avo término de la serie de fibonacci. int termino (int n) { int a=1, b=1, c; for (int t=1; t<=n; t++){ if (n= =1) return a; else if (n= = 2) return b; else { c=a+b; a =b; b=c; } } return c; }7.- Desarrolle un método/función que retorne la suma de los n primeros términos de la serie de Fibonacci.Utilice el método/función anterior. int sumafibo (int n) { int suma=0; for (int i=1; i<=n; i++) suma+= termino (i); return suma; }8- Desarrolle un método/función que muestre y sume los n primeros términos de la serie de Fibonacci. void seriefibo (int n) { for (int i=1; i<=n; i++) cout<< (termino (i)<< “- ”; cout<<endl<<sumafibo (n) <<endl; }9.- Desarrolle un método/función que retorne un número aleatorio entero perteneciente a un conjuntocerrado int aleatorio (int min, int max) { int n; srand(time(NULL)); n= (int) (rand()%(max-min+1)+min); return n; }10.- Desarrolle un método/función que muestre y calcule el promedio de n notas aleatorias. void promedioNotasAleatorias (int n) { int nota; double s=0,prom; for (int i=1; i<=n; i++){ nota= aletorio(0 , 20); cout<<i<<”.-“<<nota<<endl;Elaborado por Ing. Julio Vásquez Paragulla 3
    • UNIVERSIDAD NACIONAL DE INGENIERIAFACULTAD DE INGENIERIA MECANICACURSO: MB545 SEMANA05 METODOS / FUNCIONES s+= nota; } prom= s/n; cout<<”promedio: “<<prom<<endl; }11.- Desarrolle un método/función que genere y muestre números aleatorios de 3 cifras hasta que salga elnumero diabólico (666). Al finalizar indique la cantidad de números generados. void aleatoriode3 () { int num, i=0; do{ i++; num= aletatorio (100, 999); cout<<num<<endl; }while(num!=666); cout<<“se generaron ”<<i<< “ numeros aleatorios”<<endl; }12.- Desarrolle un método/función que retorne el área de un anillo concéntrico. double area (double R1 double R2) { double z; z= 3.1416*abs (pow (R1,2)-pow(R2,2)); return z; }13.- Desarrolle un método/función que retorne la existencia o no existencia de un triangulo dado sus treslados.char * existencia (double L1, double L2, double L3) {double a, b, c, d, e, f;if (L1>0 && L2>0 && L3>0) { a = Math.abs (L1-L2); b = Math.abs (L1-L3); c = Math.abs (L2-L3); d = L1+L2; e = L1+L3; f = L2+L3; if (L1>c && L1<f && L2>b && L2<e && L3>a && L1<d) return “ si existe el triangulo”; else return “no existe el triángulo”;} else return “error en los datos”;14.- Desarrolle un método/función donde lea el valor de r1 y r2 y muestre el área del círculo concéntricocon una variación de 0.5 hasta que ambos radios coincidan.void reporte () { double r1 = lee R1 (); double r2 = lee R2 (); cout<<”r1tr2tarea”<<endl; while (r2<=r1) { cout<<r1<<“t”<<r2<<“t”<area (r1, r2)); r2 +=0.5; }}Elaborado por Ing. Julio Vásquez Paragulla 4
    • UNIVERSIDAD NACIONAL DE INGENIERIAFACULTAD DE INGENIERIA MECANICACURSO: MB545 SEMANA05 METODOS / FUNCIONESPROPUESTOS:Implemente los siguientes métodos/funciones: 1) Que devuelva el Máximo Común Divisor de 2 números enteros 2) Que devuelva el valor de PI calculada en base a una serie matemática de n términos. 3) Que devuelva la representación binaria de cualquier número entero. 4) Que devuelva el valor de un número con sus cifras invertidas. 5) Que devuelva el número de cifras que encuentra en un número entero.Elaborado por Ing. Julio Vásquez Paragulla 5