最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Python計(jì)算幾何形狀的表面積與體積

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

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

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

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

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

輸入:  
長(zhǎng)方形  
4 8  
輸出:  
長(zhǎng)方形的面積為32.00  

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

輸入:  
長(zhǎng)方體  
4 8 9  
輸出:      
長(zhǎng)方體的表面積為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):
    """接收一個(gè)字符串為參數(shù),根據(jù)參數(shù)判斷幾何體類(lèi)型
    若輸入為二維圖形,計(jì)算其面積
    若輸入為三維圖形,計(jì)算其面積與體積
    根據(jù)類(lèi)型調(diào)用不同的函數(shù)進(jìn)行運(yùn)算。
    """
    if geom_type == '長(zhǎng)方形':
        length, width = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點(diǎn)數(shù)
        return square(length, width)                 # 調(diào)用函數(shù)計(jì)算長(zhǎng)方形面積
    elif geom_type == '長(zhǎng)方體':
        length, width, height = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點(diǎn)數(shù)
        return cube(length, width, height)                   # 調(diào)用函數(shù)計(jì)算長(zhǎng)方體表面積與體積
    elif geom_type == '圓形':
        radius = float(input())  # 輸入轉(zhuǎn)為浮點(diǎn)數(shù)
        return circle(radius)    # 調(diào)用函數(shù)計(jì)算圓面積
    elif geom_type == '球':
        radius = float(input())  # 輸入轉(zhuǎn)為浮點(diǎn)數(shù)
        return sphere(radius)    # 調(diào)用函數(shù)計(jì)算球表面積與體積
    elif geom_type == '圓柱體':
        radius, height = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點(diǎn)數(shù)
        return cylinder(radius, height)  # 調(diào)用函數(shù)計(jì)算圓柱體表面積與體積
    elif geom_type == '圓錐':
        radius, height = map(float, input().split())  # 空格分隔的輸入切分為列表并映射為浮點(diǎn)數(shù)
        return cone(radius, height)  # 調(diào)用函數(shù)計(jì)算圓錐表面積與體積
    elif geom_type == '正三棱柱':
        side, height = map(float, input().split())
        return tri_prism(side, height)
    else:
        return f'未找到{geom_type}計(jì)算方法'
 
def square(length, width):
    """計(jì)算長(zhǎng)方形的面積"""
    area_of_square = length * width
    return f'長(zhǎng)方形的面積為{area_of_square:.2f}'
 
def cube(length, width, height):
    """計(jì)算長(zhǎng)方體的表面積和體積"""
    area_of_cube = length * width * 2 + width * height * 2 + length * height * 2
    volume_of_cube = length * width * height
    return f'長(zhǎng)方體的表面積為{area_of_cube:.2f}, 體積為{volume_of_cube:.2f}'
 
def circle(radius):
    """接收?qǐng)A的半徑,返回圓形的面積,圓周率用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):
    """接收?qǐng)A柱體的底面半徑和高,返回圓柱體的表面積和體積,圓周率用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):
    """接收?qǐng)A錐的底面半徑和高,返回圓錐的表面積和體積,圓周率用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}'
 
# 參考前面的方法自定義一個(gè)函數(shù)計(jì)算正三棱柱的表面積與體積,
# 函數(shù)名為tri_prism()
# 函數(shù)接受底邊長(zhǎng)和高兩個(gè)參數(shù)side, height
 
def tri_prism(side, height):
    """接收正三棱柱的底邊長(zhǎng)和高,返回正三棱柱的表面積和體積"""
    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()               # 接收用戶(hù)輸入的字符串
    geometry = type_judge(type_of_geometry)  # 調(diào)用判斷圖形類(lèi)型的函數(shù)
    print(geometry)                          # 輸出函數(shù)運(yùn)行結(jié)果

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

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

接下來(lái),定義了各個(gè)幾何體的計(jì)算函數(shù),包括:

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

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

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

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

map(function, iterable, ...)

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

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

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

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

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

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

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

具體來(lái)說(shuō),該代碼的執(zhí)行過(guò)程如下:

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

總結(jié)

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

相關(guān)文章

  • Python使用imaplib和email庫(kù)實(shí)現(xiàn)自動(dòng)化郵件處理教程

    Python使用imaplib和email庫(kù)實(shí)現(xiàn)自動(dòng)化郵件處理教程

    在數(shù)字化辦公場(chǎng)景中,郵件自動(dòng)化是提升工作效率的關(guān)鍵技能,下面這篇文章主要介紹了Python使用imaplib和email庫(kù)實(shí)現(xiàn)自動(dòng)化郵件處理的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-08-08
  • 基于python爬取鏈家二手房信息代碼示例

    基于python爬取鏈家二手房信息代碼示例

    這篇文章主要介紹了基于python爬取鏈家二手房信息代碼示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • python實(shí)現(xiàn)動(dòng)態(tài)規(guī)劃算法的示例代碼

    python實(shí)現(xiàn)動(dòng)態(tài)規(guī)劃算法的示例代碼

    本文主要介紹了python實(shí)現(xiàn)動(dòng)態(tài)規(guī)劃算法的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Python中字典和集合學(xué)習(xí)小結(jié)

    Python中字典和集合學(xué)習(xí)小結(jié)

    本文通過(guò)實(shí)例給大家介紹了python中字典和集合的知識(shí)小結(jié),非常不錯(cuò),具有參考借鑒價(jià)值,需要的的朋友參考下吧
    2017-07-07
  • ChatGPT教你用Python實(shí)現(xiàn)BinarySearchTree詳解

    ChatGPT教你用Python實(shí)現(xiàn)BinarySearchTree詳解

    這篇文章主要為大家介紹了ChatGPT教你用Python實(shí)現(xiàn)BinarySearchTree詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • Python利用matplotlib做圖中圖及次坐標(biāo)軸的實(shí)例

    Python利用matplotlib做圖中圖及次坐標(biāo)軸的實(shí)例

    今天小編就為大家分享一篇Python利用matplotlib做圖中圖及次坐標(biāo)軸的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • python機(jī)器學(xué)習(xí)理論與實(shí)戰(zhàn)(二)決策樹(shù)

    python機(jī)器學(xué)習(xí)理論與實(shí)戰(zhàn)(二)決策樹(shù)

    這篇文章主要介紹了python機(jī)器學(xué)習(xí)理論與實(shí)戰(zhàn)第二篇,決策樹(shù)的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • python交易記錄整合交易類(lèi)詳解

    python交易記錄整合交易類(lèi)詳解

    這篇文章主要介紹了python交易記錄整合交易類(lèi)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • pycharm下配置pyqt5的教程(anaconda虛擬環(huán)境下+tensorflow)

    pycharm下配置pyqt5的教程(anaconda虛擬環(huán)境下+tensorflow)

    這篇文章主要介紹了pycharm下配置pyqt5的教程(anaconda虛擬環(huán)境下+tensorflow),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 使用Pytorch如何完成多分類(lèi)問(wèn)題

    使用Pytorch如何完成多分類(lèi)問(wèn)題

    這篇文章主要介紹了使用Pytorch如何完成多分類(lèi)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02

最新評(píng)論

昭觉县| 松阳县| 汪清县| 错那县| 滨海县| 咸阳市| 四平市| 永城市| 同心县| 福安市| 綦江县| 安远县| 安化县| 定西市| 芦山县| 奎屯市| 天台县| 叙永县| 珠海市| 游戏| 应用必备| 无棣县| 南丰县| 武胜县| 新乡市| 北川| 仁寿县| 万州区| 周宁县| 丰镇市| 大荔县| 民勤县| 紫金县| 厦门市| 兴仁县| 通城县| 武强县| 璧山县| 乐亭县| 宜城市| 昌江|