欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用Python計算幾何形狀的表面積與體積

 更新時間:2023年06月14日 11:02:46   作者:Blossom?i  
這篇文章主要給大家介紹了關(guān)于使用Python計算幾何形狀的表面積與體積的相關(guān)資料,Python可以使用不同的庫來進行幾何圖形的面積計算,比如math、numpy、scipy、sympy等,文中給出了詳細的實例代碼,需要的朋友可以參考下

輸入一個表示幾何形狀名稱的字符串,再在一行內(nèi)輸入這種圖形的數(shù)據(jù),根據(jù)表示名稱的字符串選擇合適的公式計算幾何形狀的(表)面積和體積,若為二維圖形,只計算面積,若為三維圖形,計算其表面積與體積,結(jié)果嚴格保留2位小數(shù)。????????????????????????????????????????????????????????????????????????????????????????????????????????????????

模板程序給出了長方形和長方體的代碼,參考這些代碼,完成圓形、球、圓柱體、圓錐和正三棱柱這5種形狀的計算程序。????????????????????????????????????????????????????????????????????????????????????????????????????????????????

(可將模板中的代碼復(fù)制到本地,先注釋掉需要補充代碼的函數(shù)或在函數(shù)體中加pass語句后再運行,調(diào)試完成后再復(fù)制粘到代碼框中)

示例 1????????????????????????????????????????????????????????????????????????????????????????????????????????????????

輸入:  
長方形  
4 8  
輸出:  
長方形的面積為32.00  

示例 2????????????????????????????????????????????????????????????????????????????????????????????????????????????????

輸入:  
長方體  
4 8 9  
輸出:      
長方體的表面積為280.00, 體積為288.00  

示例 3????????????????????????????????????????????????????????????????????????????????????????????????????????????????

輸入:  
圓形  
88  
輸出:      
圓形的面積為24328.49  

示例 4????????????????????????????????????????????????????????????????????????????????????????????????????????????????

輸入:  
球  
88  
輸出:      
球的表面積為97313.97, 體積為2854543.24  

示例5????????????????????????????????????????????????????????????????????????????????????????????????????????????????

輸入:  
圓柱體  
88 88  
輸出:      
圓柱體的表面積為97313.97, 體積為2140907.43  

示例 6????????????????????????????????????????????????????????????????????????????????????????????????????????????????

輸入:
圓錐
88 88
輸出:    
圓錐的表面積為58734.18, 體積為713635.81

示例 7????????????????????????????????????????????????????????????????????????????????????????????????????????????????

輸入:  
正三棱柱  
88 88  
輸出:      
正三棱柱的表面積為29938.50, 體積為295086.03  

import math
 
def type_judge(geom_type):
    """接收一個字符串為參數(shù),根據(jù)參數(shù)判斷幾何體類型
    若輸入為二維圖形,計算其面積
    若輸入為三維圖形,計算其面積與體積
    根據(jù)類型調(diào)用不同的函數(shù)進行運算。
    """
    if geom_type == '長方形':
        length, width = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點數(shù)
        return square(length, width)                 # 調(diào)用函數(shù)計算長方形面積
    elif geom_type == '長方體':
        length, width, height = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點數(shù)
        return cube(length, width, height)                   # 調(diào)用函數(shù)計算長方體表面積與體積
    elif geom_type == '圓形':
        radius = float(input())  # 輸入轉(zhuǎn)為浮點數(shù)
        return circle(radius)    # 調(diào)用函數(shù)計算圓面積
    elif geom_type == '球':
        radius = float(input())  # 輸入轉(zhuǎn)為浮點數(shù)
        return sphere(radius)    # 調(diào)用函數(shù)計算球表面積與體積
    elif geom_type == '圓柱體':
        radius, height = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點數(shù)
        return cylinder(radius, height)  # 調(diào)用函數(shù)計算圓柱體表面積與體積
    elif geom_type == '圓錐':
        radius, height = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點數(shù)
        return cone(radius, height)  # 調(diào)用函數(shù)計算圓錐表面積與體積
    elif geom_type == '正三棱柱':
        side, height = map(float, input().split())
        return tri_prism(side, height)
    else:
        return f'未找到{geom_type}計算方法'
 
def square(length, width):
    """計算長方形的面積"""
    area_of_square = length * width
    return f'長方形的面積為{area_of_square:.2f}'
 
def cube(length, width, height):
    """計算長方體的表面積和體積"""
    area_of_cube = length * width * 2 + width * height * 2 + length * height * 2
    volume_of_cube = length * width * height
    return f'長方體的表面積為{area_of_cube:.2f}, 體積為{volume_of_cube:.2f}'
 
def circle(radius):
    """接收圓的半徑,返回圓形的面積,圓周率用math.pi"""
    area_of_circle = math.pi * math.pow(radius, 2)
    return f'圓形的面積為{area_of_circle:.2f}'
 
def sphere(radius):
    """接收球的半徑,返回球的表面積和體積,圓周率用math.pi"""
    area_of_sphere = 4*math.pi*math.pow(radius, 2)
    volume_of_sphere = math.pi*math.pow(radius, 3)*4/3
    return f'球的表面積為{area_of_sphere:.2f}, 體積為{volume_of_sphere:.2f}'
 
def cylinder(radius, height):
    """接收圓柱體的底面半徑和高,返回圓柱體的表面積和體積,圓周率用math.pi"""
    area_of_cylinder = 2*math.pi*radius*(radius+height)
    volume_of_cylinder = math.pi*radius*radius*height
    return f'圓柱體的表面積為{area_of_cylinder:.2f}, 體積為{volume_of_cylinder:.2f}'
 
def cone(radius, height):
    """接收圓錐的底面半徑和高,返回圓錐的表面積和體積,圓周率用math.pi"""
    area_of_cone = math.pi*radius * \
        (radius+math.sqrt(math.pow(radius, 2)+math.pow(height, 2)))
    volume_of_cone = math.pi*math.pow(radius, 2)*height/3
    return f'圓錐的表面積為{area_of_cone:.2f}, 體積為{volume_of_cone:.2f}'
 
# 參考前面的方法自定義一個函數(shù)計算正三棱柱的表面積與體積,
# 函數(shù)名為tri_prism()
# 函數(shù)接受底邊長和高兩個參數(shù)side, height
 
def tri_prism(side, height):
    """接收正三棱柱的底邊長和高,返回正三棱柱的表面積和體積"""
    area_of_tri_prism = math.sqrt(3)*math.pow(side, 2)/2+3*side*height
    volume_of_tri_prism = math.sqrt(3)*math.pow(side, 2)*height/4
    return f'正三棱柱的表面積為{area_of_tri_prism:.2f}, 體積為{volume_of_tri_prism:.2f}'
 
if __name__ == '__main__':
    type_of_geometry = input()               # 接收用戶輸入的字符串
    geometry = type_judge(type_of_geometry)  # 調(diào)用判斷圖形類型的函數(shù)
    print(geometry)                          # 輸出函數(shù)運行結(jié)果

這段代碼是一個簡單的幾何體計算器。它通過接收用戶輸入的幾何體類型,然后根據(jù)不同的類型調(diào)用不同的函數(shù)進行計算。

首先,定義了一個 type_judge() 函數(shù),用于根據(jù)幾何體類型選擇相應(yīng)的函數(shù)進行計算。其中,對于輸入為二維圖形的長方形和圓形,調(diào)用 square() 和 circle() 函數(shù)計算其面積;對于輸入為三維圖形的長方體、球、圓柱體、圓錐和正三棱柱,則調(diào)用 cube()、sphere()、cylinder()、cone() 和 tri_prism() 函數(shù)計算其表面積和體積。

接下來,定義了各個幾何體的計算函數(shù),包括:

  • square():計算長方形的面積
  • cube():計算長方體的表面積和體積
  • circle():計算圓形的面積
  • sphere():計算球的表面積和體積
  • cylinder():計算圓柱體的表面積和體積
  • cone():計算圓錐的表面積和體積
  • tri_prism():計算正三棱柱的表面積和體積

每個函數(shù)都接受一些參數(shù),進行相應(yīng)的計算后返回一個字符串,包含計算結(jié)果并且精確到小數(shù)點后兩位。

最后,在主程序中,首先接收用戶輸入的幾何體類型,然后調(diào)用 type_judge() 函數(shù)進行計算,并將計算結(jié)果打印出來

map() 是 Python 內(nèi)置的一個高階函數(shù),用于將一個可迭代對象中的每個元素都應(yīng)用到指定的函數(shù)上,并返回結(jié)果組成的迭代器。它的基本語法格式如下:

map(function, iterable, ...)

其中,function 是一個函數(shù),iterable 是一個可迭代對象,可以傳入多個可迭代對象,表示有多個參數(shù)需要傳入 function。map() 函數(shù)會依次將 iterable 中的每個元素傳入 function 中進行處理,返回一個由處理結(jié)果組成的迭代器。

例如,對于一個列表中的每個元素求平方,可以使用以下代碼:

lst = [1, 2, 3, 4, 5]
result = map(lambda x: x ** 2, lst)
print(list(result)) # 輸出 [1, 4, 9, 16, 25]

這里使用了 lambda 表達式來定義一個簡單的平方函數(shù),然后將 lst 列表中的每個元素都傳入該函數(shù)中進行計算,并將結(jié)果組成一個迭代器,最后通過 list() 函數(shù)將其轉(zhuǎn)換為列表并輸出。

map() 函數(shù)可以方便地應(yīng)用于很多場景,比如批量處理數(shù)據(jù)、映射函數(shù)等等。

A = map(float, input().split())

這段代碼將用戶通過輸入獲得的字符串按照空格進行切分,然后使用 map() 函數(shù)將每個切分后的字符串都轉(zhuǎn)換為浮點數(shù)類型,并返回一個由浮點數(shù)組成的迭代器。最后,將這個迭代器賦值給變量 A。

具體來說,該代碼的執(zhí)行過程如下:

  1. input() 函數(shù)接收用戶輸入,并返回一個字符串類型的值。
  2. split() 方法將該字符串按照空格進行切分,并返回一個由切分后的字符串組成的列表。
  3. map() 函數(shù)將該列表中的每個元素都應(yīng)用 float() 函數(shù)進行轉(zhuǎn)換,并返回一個由轉(zhuǎn)換后的浮點數(shù)組成的迭代器。
  4. 將這個迭代器賦值給變量 A。

總結(jié)

到此這篇關(guān)于使用Python計算幾何形狀的表面積與體積的文章就介紹到這了,更多相關(guān)Python計算幾何形狀表面積內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python3 scrapy框架的執(zhí)行流程

    python3 scrapy框架的執(zhí)行流程

    Scrapy的安裝有多種方式,它支持Python2.7版本及以上或Python3.3版本及以上。下面說明python3 scrapy框架的常用命令及框架執(zhí)行流程,感興趣的朋友一起看看吧
    2021-07-07
  • python實現(xiàn)數(shù)據(jù)寫入excel表格

    python實現(xiàn)數(shù)據(jù)寫入excel表格

    這篇文章主要為大家詳細介紹了python實現(xiàn)數(shù)據(jù)寫入excel表格,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • pycharm遠程連接服務(wù)器運行pytorch的過程詳解

    pycharm遠程連接服務(wù)器運行pytorch的過程詳解

    這篇文章主要介紹了在Linux環(huán)境下使用Anaconda管理不同版本的Python環(huán)境,并通過PyCharm遠程連接服務(wù)器來運行PyTorch的過程,包括安裝PyTorch、CUDA以及配置PyCharm遠程開發(fā)環(huán)境的詳細步驟,需要的朋友可以參考下
    2025-02-02
  • Python實現(xiàn)文件復(fù)制刪除

    Python實現(xiàn)文件復(fù)制刪除

    本文通過2個具體的實例,給大家展示了如何使用Python實現(xiàn)文件的復(fù)制與刪除,非常的簡單實用,有需要的小伙伴可以參考下
    2016-04-04
  • pycharm激活方法到2099年(激活流程)

    pycharm激活方法到2099年(激活流程)

    這篇文章主要介紹了pycharm激活方法到2099年,文末給大家提到了idea和pycharm最新版激活方法,非常不錯對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • keras 模型參數(shù),模型保存,中間結(jié)果輸出操作

    keras 模型參數(shù),模型保存,中間結(jié)果輸出操作

    這篇文章主要介紹了keras 模型參數(shù),模型保存,中間結(jié)果輸出操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • Django實現(xiàn)組合搜索的方法示例

    Django實現(xiàn)組合搜索的方法示例

    本篇文章主要介紹了Django實現(xiàn)組合搜索的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Python新手入門之常用關(guān)鍵字的簡單示例詳解

    Python新手入門之常用關(guān)鍵字的簡單示例詳解

    關(guān)鍵字是預(yù)先保留的標識符,每個關(guān)鍵字都有特殊的含義,下面這篇文章主要給大家介紹了關(guān)于Python新手入門之常用關(guān)鍵字的簡單示例,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-03-03
  • 最新評論