📜  门| GATE 2017 MOCK II |问题4(1)

📅  最后修改于: 2023-12-03 14:58:18.036000             🧑  作者: Mango

门| GATE 2017 MOCK II |问题4

这是一道GATE 2017 MOCK II考试的问题,要求编写一个程序来实现一个门的状态转换问题。

问题描述

一个门有两个控制开关:一个外部开关和一个内部开关。当外部开关关闭时,无论内部开关是打开还是关闭,门都会关闭。当外部开关打开时,内部开关控制门的状态。如果内部开关也打开,则门会打开。如果内部开关关闭,则门会关闭。

编写一个程序,接收两个参数。第一个参数代表外部开关,值为0表示关闭,值为1表示打开。第二个参数代表内部开关,值为0表示关闭,值为1表示打开。程序需要输出门的状态,值为0表示关闭,值为1表示打开。

实现

我们可以使用 if-else 语句来实现这个问题。当外部开关关闭时,门状态永远为关闭,因此直接输出0即可。当外部开关打开时,如果内部开关也打开,则输出1表示门打开,否则输出0表示门关闭。

下面是使用 Python 语言实现的代码片段:

def door_status(outer_switch, inner_switch):
    if outer_switch == 0:
        return 0
    else:
        if inner_switch == 1:
            return 1
        else:
            return 0

使用该函数即可获得门的状态。例如:

status = door_status(1, 0)
print(status)  # 输出 0,表示门关闭
总结

本题考察了程序员的 if-else 条件语句的使用。如果你能够理解题目中的语义,那么编写代码并不难。同时,这道题也需要注意对每个变量的取值范围进行判断,确保程序的正确性。