国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

《python語言程序設(shè)計基礎(chǔ)》(第二版)第五章課后習(xí)題參考答案

這篇具有很好參考價值的文章主要介紹了《python語言程序設(shè)計基礎(chǔ)》(第二版)第五章課后習(xí)題參考答案。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

第五章 函數(shù)和代碼的復(fù)用

5.1 改造練習(xí)題3.5,輸出更大的田字格
def tian(n):
    a = 7 * n + 1
    for i in range(1, a + 1):
        if i % 7 == 1:
            print("+ — — — — — —" * n, end="")
            print("+")
        else:
            print("|            " * n, end="")
            print("|")


tian(4)
5.2 實現(xiàn)isOdd函數(shù)
def isOdd(n):
    if n % 2 != 0:
        return True
    else:
        return False


n = int(input("請輸入一個整數(shù):"))
if isOdd(n):
    print("{}是奇數(shù),True".format(n))
else:
    print("{}是偶數(shù),F(xiàn)alse".format(n))
5.3 實現(xiàn)isNum函數(shù)
def isNum(s):
    try:
        complex(s)
        return True
    except ValueError:
        return False

s = input("請輸入一個字符串:")
if isNum(s):
    print("True")
else:
    print("False")
5.4 實現(xiàn)multi函數(shù)
import ast


def multi(*args):
    result = 1
    other = ''
    for num in args:
        if isinstance(num, (int, float, complex)):
            result *= num
        else:
            other += str(num)
    return str(result) + other


input_str = input("請輸入一個包含數(shù)字和復(fù)數(shù)的列表,元素之間使用逗號分隔:")
nums = []
for num_str in input_str.split(","):
    num_str = num_str.strip()  # 去除空格和其他無關(guān)字符
    try:
        num = ast.literal_eval(num_str)  # 使用 ast.literal_eval() 轉(zhuǎn)化為數(shù)字或復(fù)數(shù)
        nums.append(num)
    except ValueError:
        nums.append(num_str)
    except SyntaxError:
        print(f"無法將字符串 {num_str} 轉(zhuǎn)化")
print(multi(*nums))

5.5 實現(xiàn)isPrime函數(shù)
def isPrime(num):
    if not isinstance(num, int):
        raise TypeError("參數(shù)必須為整數(shù)")
    if num < 2:
        return False
    for i in range(2, int(num ** 0.5) + 1):
        if num % i == 0:
            return False
    return True


num = input("請輸入一個整數(shù):")
try:
    num = int(num)
    if isPrime(num):
        print(num, "是質(zhì)數(shù)")
    else:
        print(num, "不是質(zhì)數(shù)")
except ValueError:
    print("輸入的不是整數(shù)!")
except TypeError as e:
    print(e)
5.6 輸出10種生日日期格式

代碼一:

import datetime

# 創(chuàng)建生日日期對象
birthday = datetime.date(2000, 11, 22)

# 輸出不同格式的日期字符串
print(birthday.strftime("%Y-%m-%d"))          # 2000-11-22
print(birthday.strftime("%y-%m-%d"))          # 00-11-22
print(birthday.strftime("%m/%d/%Y"))          # 11/22/2000
print(birthday.strftime("%B %d, %Y"))         # November 22, 2000
print(birthday.strftime("%b %d, %Y"))         # Nov 22, 2000
print(birthday.strftime("%A, %B %d, %Y"))     # Wednesday, November 22, 2000
print(birthday.strftime("%a, %b %d, %Y"))     # Wed, Nov 22, 2000
print(birthday.strftime("%Y%m%d"))            # 20001122
print(birthday.strftime("%m%d%Y"))            # 11222000
print(birthday.strftime("%Y/%m/%d"))          # 2000/11/22

代碼二:

import datetime

# 獲取生日
birthday_str = input("請輸入您的生日(格式為YYYY-MM-DD):")

# 轉(zhuǎn)化為 datetime 對象
birthday = datetime.datetime.strptime(birthday_str, "%Y-%m-%d")

# 生成 10 種不同的日期格式
print("10種不同的日期格式:")
print(birthday.strftime("%Y-%m-%d"))
print(birthday.strftime("%m/%d/%Y"))
print(birthday.strftime("%B %d, %Y"))
print(birthday.strftime("%b %d, %Y"))
print(birthday.strftime("%A, %B %d, %Y"))
print(birthday.strftime("%a, %b %d, %Y"))
print(birthday.strftime("%Y%m%d"))
print(birthday.strftime("%Y年%m月%d日"))
print(birthday.strftime("%Y.%m.%d"))
print(birthday.strftime("%Y-%m-%d"))
5.7 漢諾塔
def move(n, source, target, auxiliary, steps):
    """
    遞歸函數(shù),實現(xiàn)漢諾塔移動的核心算法

    :param n: 盤子的數(shù)量
    :param source: 起始柱子的名稱
    :param target: 目標柱子的名稱
    :param auxiliary: 輔助柱子的名稱
    :param steps: 存儲移動步驟的列表,每個元素為一個元組 (起始柱子, 目標柱子, 盤子編號)

    """
    if n == 1:
        steps.append((source, target, n))  # 將盤子的編號也添加到步驟中
        return
    move(n-1, source, auxiliary, target, steps)  # 將 n-1 個盤子從起始柱子經(jīng)過目標柱子移到輔助柱子上
    steps.append((source, target, n))  # 將第 n 個盤子從起始柱子移到目標柱子上
    move(n-1, auxiliary, target, source, steps)  # 將 n-1 個盤子從輔助柱子經(jīng)過起始柱子移到目標柱子上


n = int(input("請輸入漢諾塔的層數(shù):"))
source = "A"  # 起始柱子的名稱
target = "C"  # 目標柱子的名稱
auxiliary = "B"  # 輔助柱子的名稱
steps = []  # 存儲移動步驟的列表

move(n, source, target, auxiliary, steps)  # 調(diào)用遞歸函數(shù)

print(f"移動步驟共 {len(steps)} 步:")
for i, step in enumerate(steps):
    s, t, n = step
    print(f"Step {i+1}: 將 {s} 柱上的 {n} 號盤子移動到 {t} 柱上")


注:上述代碼僅供參考,若有問題可在評論區(qū)留言!文章來源地址http://www.zghlxwxcb.cn/news/detail-428282.html

到了這里,關(guān)于《python語言程序設(shè)計基礎(chǔ)》(第二版)第五章課后習(xí)題參考答案的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 譚浩強【C語言程序設(shè)計】第二章習(xí)題詳解

    譚浩強【C語言程序設(shè)計】第二章習(xí)題詳解

    ? 目錄 ?編輯 1,什么是算法?試從日常生活中找3個例子,描述它們的算法。 2,什么叫結(jié)構(gòu)化的算法?為什么要提倡結(jié)構(gòu)化的算法? 3,試述3種基本結(jié)構(gòu)的特點,請另外設(shè)計兩種基本結(jié)構(gòu)(要符合基本結(jié)構(gòu)的特點)。 4,用傳統(tǒng)流程圖表示求解以下問題的算法。 (1)有兩個

    2024年02月01日
    瀏覽(41)
  • 【全解析 | PTA】浙大版《Python 程序設(shè)計》題目集-第二章

    一、判斷題 1. 輸入正整數(shù)6和5,要求和,6+66+666+6666+66666,下面程序正確嗎? F ? ? a=int(input())??? ??? n=int(input())??? ? ? print(sum([int(\\\'a\\\'*i) for i in range(1,n+1)])) ????????在代碼中,使用了字符串 ‘a(chǎn)’ 而不是變量 a 的值是因為字符串 ‘a(chǎn)’ 在引號內(nèi)被視為文本常量,而不是變

    2024年03月12日
    瀏覽(49)
  • 【軟件設(shè)計師07】程序設(shè)計語言與語言處理程序基礎(chǔ)

    【軟件設(shè)計師07】程序設(shè)計語言與語言處理程序基礎(chǔ)

    編譯與解釋、文法、正規(guī)式、有限自動機、表達式、傳值與傳址、多中程序語言特點 (逐漸降低考察比例,很少考察) 概念 文法類型 語法推導(dǎo)樹 有限自動機 與正規(guī)式(重點) 常見問題:給一個串比如01、10、001等,看圖中起點到終點能否連起來得到這樣的串 正規(guī)式 是有限自

    2023年04月08日
    瀏覽(21)
  • 匯編語言程序設(shè)計——基礎(chǔ)知識(完整)

    匯編語言程序設(shè)計——基礎(chǔ)知識(完整)

    CPU是計算機的核心部件,一個基礎(chǔ)的CPU由運算器、控制器、寄存器等器件相連,這些器件靠內(nèi)部總線相連, CPU通過內(nèi)部總線與內(nèi)部各個器件進行聯(lián)系,例如讀取內(nèi)存中的程序;CPU通過外部總線實現(xiàn)與主板上的其他器件的聯(lián)系,例如我們使用的藍橋杯單片機開發(fā)板上就存在著矩

    2024年02月19日
    瀏覽(29)
  • Rust 程序設(shè)計語言學(xué)習(xí)——基礎(chǔ)語法

    Rust 程序設(shè)計語言學(xué)習(xí)——基礎(chǔ)語法

    Rust 語言是一種高效、可靠的通用高級語言。其高效不僅限于開發(fā)效率,它的執(zhí)行效率也是令人稱贊的,是一種少有的兼顧開發(fā)效率和執(zhí)行效率的語言。 Rust 語言由 Mozilla 開發(fā),最早發(fā)布于 2014 年 9 月。Rust 的編譯器是在 MIT License 和 Apache License 2.0 雙重協(xié)議聲明下的免費開源軟

    2024年01月22日
    瀏覽(27)
  • 編譯原理1.6習(xí)題 程序設(shè)計語言基礎(chǔ)

    編譯原理1.6習(xí)題 程序設(shè)計語言基礎(chǔ)

    圖源:文心一言 編譯原理習(xí)題整理~???? 作為初學(xué)者的我,這些習(xí)題主要用于自我鞏固。由于是自學(xué),答案難免有誤,非常歡迎各位小伙伴指正與討論!???? 第1版:自己的解題,與AI老師的判卷~???? 編輯: 梅頭腦??? 審核: 文心一言 題源: 龍書《編譯原理》 Alfre

    2024年01月19日
    瀏覽(95)
  • 嵌入式:ARM匯編語言程序設(shè)計基礎(chǔ)教程

    嵌入式:ARM匯編語言程序設(shè)計基礎(chǔ)教程

    ① 合理地分配存儲器資源,將前述的目標系統(tǒng)‘?dāng)?shù)據(jù)結(jié)構(gòu)模型’表示到各存儲器單元。 ② CPU寄存器數(shù)量有限,在程序中,大多數(shù)操作都要使用寄存器;并且有的操作使用特定的寄存器(如堆棧操作使用SP/R13等),程序中要合理分配各寄存器的用途。 用計算機語言,對數(shù)據(jù)結(jié)

    2023年04月23日
    瀏覽(41)
  • 【python快速編程入門(第二版)黑馬程序員課后編程題】

    第二章? python基礎(chǔ) 1、課本33頁練習(xí):求圓的半徑和面積; 用戶輸入圓的半徑,輸出圓的直徑和面積。面積公式:s=π*r*r 2、#課本33頁練習(xí):計算運輸次數(shù); #煤場有29.5t,4t運了3次,其余用2.5t車運,還需幾次才能運完 第三章? 流程控制 1、#課本44頁練習(xí):用while循環(huán)輸出100以內(nèi)

    2024年02月04日
    瀏覽(121)
  • Python語言程序設(shè)計 習(xí)題1

    Python語言程序設(shè)計 習(xí)題1

    一、選擇題 1.python語言屬于(C) A.機器語言? ? B.匯編語言? ?C.高級語言? ?D.科學(xué)計算語言 2.下列選項中,不屬于python特點的是(B) A.面向?qū)ο? ?B.運行效率高? ?C.可讀性好? ?D.開源 3.python程序文件的擴展名是(D) A.? .python? ?B.? .pyt? ? C.? ?.pt? ? D.? ?.py 4.以下敘述

    2024年02月08日
    瀏覽(92)
  • Python程序設(shè)計基礎(chǔ):程序流程控制(一)

    Python程序設(shè)計基礎(chǔ):程序流程控制(一)

    程序流程的基本結(jié)構(gòu)主要有三種,順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),在順序結(jié)構(gòu)中是按照語句的位置一句一句順序執(zhí)行,每條語句有且只會執(zhí)行一次,而在選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)中,通常是需要根據(jù)條件表達式的值來確定下一步的執(zhí)行流程。 條件表達中一般使用兩種運算符:關(guān)

    2024年02月11日
    瀏覽(51)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包