On 2017-12-07 01:39, nick martinez via Python-list wrote:
On Wednesday, December 6, 2017 at 8:13:36 PM UTC-5, ssghot...@gmail.com wrote:
The following works:
import math
print("This program will calculate the surface area and volume of a 3-dimensional
cone: ")
print()
print()
r = input("What is the radius in feet? (no negatives): ")
h = input("What is the height in feet? (no negatives): ")
r = float(r)
h = float(h)
if r > 0 and h > 0:
surfacearea = math.pi * r ** 2 + r * math.pi * (math.sqrt(r ** 2 + h ** 2))
volume = (1 / 3) * math.pi * r ** 2 * h
print()
print("Your Answer is:")
print()
print("A cone with radius", r, "\nand height of", h, "\nhas a volume of : ",
round(volume,2), "\nand surface area of : ",
round(surfacearea,2), )
else:
print("No negatives allowed, try again.")
Tried this but it doesn't seem to work. It still prints out all of the decimals
Try using .format:
print("A cone with radius {}\nand height of {}\nhas a volume of :
{:.2f}\nand surface area of : {:.2f}".format(r, h, volume, surfacearea)))
round(volume,2) will round the volume to 2 decimal places, but
floating-point numbers in Python are stored in binary, and you can't
always represent a fractional decimal number exactly in binary. For
example, you can't store 0.1 exactly as a float.
--
https://mail.python.org/mailman/listinfo/python-list