Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
GUIA DE PRÁCTICAS FUNCIONES Objetivos: Alicar las funciones en la solución de ro!lemas rácticos.
Procedimientos: I. eri!ic"r errores de sint"#is $ sem%ntic" &' Escribir (n" !(nci)n *(e ten+" (n "r+(mento de ti,o entero $ *(e dev(e-v" -" -etr" P si enmero es ,ositivo/ $ -" -etr" N si e- nmero es cero o ne+"tivo. "include #cstdli!$ "include #iostream$ c%ar numero&int n'( using namesace std( int main&int argc) c%ar *arg+,-' int num( cout##/Ingrese un numero/ ( cin$$num( cout##/0umero es /##numero&'( s1stem&/PA2SE/'( return E3I45S266ESS( 7 int numero&c%ar n' if &n$8' return&9P9'( else return&909'( 7
0'
Escribir (n" !(nci)n -)+ic" voc"-/ *(e determine si (n c"r%cter es (n" voc"-. "include #cstdli!$ "include #iostream$ int +ocal&c%ar c'( using namesace std( int main&int argc) c%ar *arg+,-'
Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
c%ar c( cout##/Ingrese un caracter/ ( cin$$c( if &+ocal&c'' cout##/SI es una +ocal /##c( else cout##/0o Es una +ocal /##c( s1stem&/PA2SE/'( return E3I45S266ESS( 7 c%ar +ocal&int c' if &c9a9 ;; c9e9 ;; c9i9;; c9o9;; c9u9' return&<'( else return&8'( 7
1' Pro+r"m" *(e c(ent" e- nmero de d2+itos *(e tiene (n nmero in+res"do ,or tec-"do/ (ti-i3" !(nciones.
"include #cstdli!$ "include #iostream$ int numdigitos&int 0' using namesace std( int main&int argc) c%ar *arg+,-' int n( cout##/Ingrese numero: /( cin$$n( cout##/4iene /##numdigito&0'##/ digitos/##endl( s1stem&/PA2SE/'( return E3I45S266ESS( 7
Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
int numdigitos&int 0' float cont8( =%ile&0$8' 00><8( cont??( 7 return&cont'( 7
II. Com,-et" e- c)di+o ,"r" reso-ver e- ,rob-em" 4' Pro+r"m" *(e m(estr" -" s(m" de -os d2+itos de (n nmero in+res"do ,or tec-"do
"include #cstdli!$ "include #iostream$ int sumadigitos&int 0'( using namesace std( int main&int argc) c%ar *arg+,-' int n( cout##/Ingrese numero: /( cin$$n( >>muestra los resultados >>comleta el código s1stem&/PA2SE/'( return E3I45S266ESS( 7 int sumadigitos&int 0' int sum8) 6( =%ile&0$8' >>comleta el código sumsum?6( 7 return&sum'( 7
Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
@' Pro+r"m" *(e Gener"r -" si+(iente m"tri3/ (ti-i3"ndo !(nciones :
56&7560756175647 568756975675667 56;756<756675667 5&67566756675667 Se ingresa la dimensión de la m atriz cuadrada.
"include #cstdli!$ "include #iostream$ using namesace std( +oid llenar &>>comlete .' int cont<( for &int i<(i#d(i??' for &int B<(B#d(B??' if &&i?B'#&d?<'' M,i-,B-cont( cont??(7 else M,i-,B-8( 7 7 7 +oid mostrar &int M,C8-,C8-) int d' for &int i<(i#d(i??' rintf&/Dn/'( for &int B<(B#d(B??' rintf &>>comlete.'(
Ing. M.Sc. Edelfré Flores Velásquez
Fundamentos de Programación
7 7 7 int main&int argc) c%ar *arg+,-' int d( int M,C8-,C8-( rintf&/Ingresa dimension: /'( scanf&/d/)d'( llenar&>>comlete'( mostrar&>>comlete'( s1stem&/PA2SE/'( return E3I45S266ESS( 7
III. Conviert" -os si+(ientes ,ro+r"m"s en (no *(e (ti-ice !(nciones 9' Escribir (n ,ro+r"m"/ ="ciendo (so de !(nciones/ *(e vis("-ice (n c"-end"rio de -" !orm": G
M
L
M < N <@ CC CO
H C O
V J <8 < CK
S K <<
@
El usuario indica nicamente el mes 1 el aQo. Ga fórmula que ermite conocer el dRa de la semana corresondiente a una fec%a es: Mese de enero o fe!rero: • n a ? J< *&m<' ? d &a<' di+ K T J * &&a?OO' di+ <88' di+ K( Uestantes meses: • n a ? J< * &m<' ? d &K*m ? CJ' di+ <8 ? a di+ K &J*&a di+ <88 ? <'' di+ K( onde aaQo( mmes( ddRa( 0ota: n mod indica el dRa de la semana &<lunes) C martes) etc.'
Im,-ement" e- si+(iente ,ro+r"m" con !(nciones. C>DIGO "include #cstdli!$ "include #iostream$
Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
using namesace std( int main&int argc) c%ar *arg+,-' int a)m)d)i)n)au)z( rintf&/Dn PUWXUAMA Y2E GEE 20A FE6ZA [ M2ES4UA EG MES EG A0W I04UW26IWDn/'( rintf&/55555555555555555555555555555555555555555555555555555555555555555555555555555555Dn/'( >>aQo rintf&/DnIntroducir aQo: /'( scanf&/d/)a'( >>mes do fflus%&stdin'( rintf&/DnIntroducir mes &<>Imrimir nom!re dias rintf&/DnDn/'( rintf&/GDtMDt3DtHDtVDtSDtDn/'( rintf&/Dn/'( >>meses de J< dias if&m< ;; mJ ;; m@ ;; m ;; mN ;; m<8 ;; m>fe!rero else if &mC' if &aK8' if &a<888 aK88\8' dCN( 7 else dCO( 7 7 else dCN( 7 7
Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
>>mese de J8 dias else dJ8( 7 >>calcular el dia de la semana if&m< ;; mC' na?J<*&m<'?d*&a<'>KJ*&&a?OO'><88'>K( 7 else na?J<*&m<'?d&K*m?CJ'><8?a>K&J*&a><88?<''>K( 7 >>imrimir numeros dias au8( for&i8(i#n(i??' au??( 7 for&i<(i#d(i??' au??( if&au8' rintf&/dDn/)i'( 7 else rintf&/dDt/)i'( 7 7 rintf&/DnDn/'( s1stem&/PA2SE/'( return E3I45S266ESS( 7
7) Programa que halla el promedio de notas de alumnos, además lee y escribe el nombre de los estudiantes: "include #iostream$ using namesace std( int main&int argc) c%ar *arg+,-' int notas,C-( c%ar nom!re,C-,J8-( int i)suma8( float romedio( >>lectura de datos for &i8( i#C( i??' cout##]ingrese el nom!re ^##i?<##]: ^( cin$$nom!re,i-(
Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
cout##]ingrese la nota ^##i?<##]: ^( cin$$notas,i-( 7 >>rocesamiento for &i8( i#C( i??' suma?notas,i-( 7 romedio&float'suma>C( >>escritura de datos cout##]Dn]##endl( for &i8( i#C( i??' cout##]0om!re ^##i?<##]: ^##nom!re,i-( cout##] nota ^##i?<##]: ^##notas,i-##endl( 7 cout##endl##]El romedio es: ^##romedio##endl( s1stem&^PA2SE]'( return E3I45S266ESS( 7
I. Res(e-v" -os si+(ientes ejercicios &' Se dese" re"-i3"r (n ,ro+r"m" ,"r" e- c%-c(-o de o,er"ciones con nmeros r"cion"-es. E,ro+r"m" deber% ,resent"r (n men con -"s si+(ientes o,er"ciones: ME02 A. Sumar C Fracciones. _. Uestar C Fracciones. 6. Multilicar C Fracciones. . i+idir C Fracciones. E. Simlificar < Fracción. 3. Salir del Programa
Descri,ci)n de O,ciones: A. S(m"r 0 Fr"cciones. Se solicita al usuario que introduzca el numerador 1 el denominador de cada fracción 1 se muestra or antalla el resultado simlificado. EBemlo: Fracción < 0umerador: < enominador: J Fracción C 0umerador: < enominador: C
Fundamentos de Programación
Ing. M.Sc. Edelfré Flores Velásquez
&C>J' ? &<>C' &>L' Presione una tecla ara continuar . . .
?. Rest"r 0 Fr"cciones. Se solicita al usuario que introduzca el numerador 1 el denominador de cada fracción 1 se muestra or antalla el resultado simlificado. EBemlo: Fracción < 0umerador: < enominador: J Fracción C 0umerador: < enominador: C &C>J' &<>C' &<>L' Presione una tecla ara continuar . . .
C. @(-ti,-ic"r 0 Fr"cciones. Se solicita al usuario que introduzca el numerador 1 el denominador de cada fracción 1 se muestra or antalla el resultado simlificado. EBemlo: Fracción < 0umerador: < enominador: J Fracción C 0umerador: < enominador: C &C>J' * &<>C' &<>J'
C' iseQar un algoritmo que dado una matriz de enteros de J K a. 6alcule el elemento máimo 1 mRnimo de la matriz) informando de la !. osición &fila) columna' en la que se encuentra. c. 6alcule la media aritmética de todos los elementos ares. d. 6alcule el máimo elemento de cada fila 1 el mRnimo de cada columna.
2tilice funciones ara resol+er el ro!lema J' Escri!ir una función a la que se le ase una cantidad 0 de nmeros a leer 1 de+uel+a `cuántos son ositi+os) 1 cuántos son negati+os K' Para cada uno de los untos siguientes escri!ir un función a la que se le asen los arámetros necesarios 1 de+uel+a el área 1 el erRmetro de la figura indicada: a. 2n cuadrado !. 2n rectángulo c. 2n cRrculo