亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

輸入一個(gè)表示幾何形狀名稱的字符串,再在一行內(nèi)輸入這種圖形的數(shù)據(jù),根據(jù)表示名稱的字符串選擇合適的公式計(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ù)判斷幾何體類型
    若輸入為二維圖形,計(jì)算其面積
    若輸入為三維圖形,計(jì)算其面積與體積
    根據(jù)類型調(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()               # 接收用戶輸入的字符串
    geometry = type_judge(type_of_geometry)  # 調(diào)用判斷圖形類型的函數(shù)
    print(geometry)                          # 輸出函數(shù)運(yùn)行結(jié)果

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

首先,定義了一個(gè) type_judge() 函數(shù),用于根據(jù)幾何體類型選擇相應(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ì)算其表面積和體積。

接下來,定義了各個(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)后兩位。

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

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á)式來定義一個(gè)簡(jiǎn)單的平方函數(shù),然后將 lst 列表中的每個(gè)元素都傳入該函數(shù)中進(jìn)行計(jì)算,并將結(jié)果組成一個(gè)迭代器,最后通過 list() 函數(shù)將其轉(zhuǎn)換為列表并輸出。

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

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

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

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

  1. input() 函數(shù)接收用戶輸入,并返回一個(gè)字符串類型的值。
  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)文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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