Beruflich Dokumente
Kultur Dokumente
6.10 Escriba un programa completo que pida al usuario el radio de una esfera, calcule e imprima el volumen de esa esfera.
Use una funcin inline llamada volumenEsfera que devuelva el resultado de la siguiente expresin: (4.0 / 3.0) * 3.14159
* pow ( radio, 3 ).
5/30/08 11:55:54 PM
267
sqrt(900.0) = 30.0
sqrt(9.0) = 3.0
exp(1.0) = 2.718282
exp(2.0) = 7.389056
log(2.718282) = 1.0
log(7.389056) = 2.0
log10(1.0) = 0.0
log10(10.0) = 1.0
log10(100.0) = 2.0
fabs(13.5) = 13.5
fabs(0.0) = 0.0
fabs(-13.5) = 13.5
ceil(9.2) = 10.0
ceil(-9.8) = -9.0
floor(9.2) = 9.0
floor(-9.8) = -10.0
pow(2.0, 7.0) = 128.0
pow(9.0, 0.5) = 3.0
fmod(13.675, 2.333) = 2.010
sin(0.0) = 0.0
cos(0.0) = 1.0
tan(0.0) = 0.0
a)
b)
c)
d)
a)
b)
c)
d)
6.6
a)
b)
6.7
6.4
6.5
return x + y;
d) Errores: el punto y coma que va despus del parntesis derecho de la lista de parmetros es incorrecto, y el parmetro
a no debe volver a denirse en la denicin de la funcin.
Correcciones: elimine el punto y coma que va despus del parntesis derecho de la lista de parmetros, y elimine la
declaracin float a;.
e) Error: la funcin devuelve un valor cuando no debe hacerlo.
Correccin: elimine la instruccin return.
6.8
Esto crea un parmetro de referencia de tipo referencia a double, el cual permite que la funcin modique la variable
original en la funcin que hace la llamada.
6.9
Falso. C++ permite el paso por referencia mediante el uso de parmetros por referencia (y apuntadores, como veremos
en el captulo 8).
6.10
1
2
3
5/30/08 11:55:55 PM
268
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
using std::cout;
using std::cin;
using std::endl;
#include <cmath>
using std::pow;
const double PI = 3.14159; // define la constante global PI
// calcula el volumen de una esfera
inline double volumenEsfera( const double radio )
{
return 4.0 / 3.0 * PI * pow( radio, 3 );
} // fin de la funcin en lnea volumenEsfera
int main()
{
double valorRadio;
// pide el radio al usuario
cout << "Escriba la longitud del radio de su esfera: ";
cin >> valorRadio; // recibe el radio
// usa valorRadio para calcular el volumen de la esfera y mostrar el resultado
cout << "El volumen de la esfera con radio " << valorRadio
<< " es " << volumenEsfera( valorRadio ) << endl;
return 0; // indica que termin correctamente
} // fin de main
Ejercicios
6.11
6.12 Un estacionamiento cobra una cuota mnima de $2.00 por estacionarse hasta tres horas. El estacionamiento cobra
$0.50 adicionales por cada hora o fraccin que se pase de tres horas. El cargo mximo para cualquier periodo dado de 24 horas
es de $10.00. Suponga que ningn auto se estaciona durante ms de 24 horas a la vez. Escriba un programa que calcule y muestre los cargos por estacionamiento para cada uno de tres clientes que estacionaron su auto ayer en este estacionamiento. Debe
introducir las horas de estacionamiento para cada cliente. El programa debe imprimir los resultados en un formato tabular
ordenado, debe calcular e imprimir el total de los recibos de ayer. El programa debe utilizar la funcin calcularCargos para
determinar el cargo para cada cliente. Sus resultados deben aparecer en el siguiente formato:
Auto
Horas
Cargo
1.5
2.00
4.0
2.50
24.0
10.00
TOTAL
29.50
14.50
6.13
redondea el nmero x al entero ms cercano y asigna el resultado a y. Escriba un programa que lea varios nmeros y que utilice
la instruccin anterior para redondear cada uno de los nmeros a su entero ms cercano. Para cada nmero procesado, muestre
tanto el nmero original como el redondeado.
5/30/08 11:55:55 PM