吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1159|回复: 6
收起左侧

[求助] pseudocode中的case在Python中应该怎样实现?

[复制链接]
luzhiyao 发表于 2021-4-30 19:20
pseudocode中的case在Python中应该怎样实现?


我有如下pseudocode(伪代码),目的是将十进制数转化为十六进制,该如何将其编写为Python代码?主要问题是不知道case在Python中如何实现。

[Asm] 纯文本查看 复制代码
INPUT X
WHILE X > 15
    DO
    T1 <-- X DIV 16
    T2 <-- X MOD 16
    CASE T2 OF
        10:OUTPUT A
        11:OUTPUT B
        12:OUTPUT C
        13:OUTPUT D
        14:OUTPUT E
        15:OUTPUT F
        OTHERWISE OUTPUT T2
    ENDCASE
    X <-- T1
END WHILE
CASE X OF
    10:OUTPUY A
    11:OUTPUT B
    12:OUTPUT C
    13:OUTPUT D
    14:OUTPUT E
    15:OUTPUT F
    OTHERWISE OUTPUT X
ENDCASE

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

漁滒 发表于 2021-4-30 20:03
用内置函数就可以 hex(x)
 楼主| luzhiyao 发表于 2021-4-30 20:22
漁滒 发表于 2021-4-30 20:03
用内置函数就可以 hex(x)

我知道,但是这是我们的作业,将这段伪代码用Python代码编写。
漁滒 发表于 2021-4-30 20:38
luzhiyao 发表于 2021-4-30 20:22
我知道,但是这是我们的作业,将这段伪代码用Python代码编写。

在python3.10才增加了这种语法。示例如下,其他版本使用if,else代替
[Python] 纯文本查看 复制代码
http_code = "418"
match http_code:
    case "200":
        print("OK")
        do_something_good()
    case "404":
        print("Not Found")
        do_something_bad()
    case "418":
        print("I'm a teapot")
        make_coffee()
    case _:
        print("Code not found")
santus36 发表于 2021-4-30 22:04
要么用if... elif... elif... else
要么用字典,类似这种switch = {"a":lambda x:x*2, "b":lambda x:x*3,"c":lambda x:x**x}
guangzisam 发表于 2021-4-30 23:47
作业需要自己动脑筋啊
 楼主| luzhiyao 发表于 2021-5-1 10:24
[Python] 纯文本查看 复制代码
x=int(input("x?"))
while x>15:
    t1=x//16
    t2=x%16
    if t2==10:
        print("A")
    elif t2==11:
        print("B")
    elif t2==12:
        print("C")
    elif t2==13:
        print("D")
    elif t2==14:
        print("E")
    elif t2==15:
        print("F")
    else:
        print(t2)
    x=t1
if x==10:
    print("A")
elif x==11:
    print("B")
elif x==12:
    print("C")
elif x==13:
    print("D")
elif x==14:
    print("E")
elif x==15:
    print("F")
else:
    print(x)


作业写完了,根据Pseudocode来的,在应用时有许多可以优化的地方。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止回复与主题无关非技术内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-17 01:00

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表