📜  门| GATE-CS-2000 |问题 19(1)

📅  最后修改于: 2023-12-03 15:28:41.032000             🧑  作者: Mango

门| GATE-CS-2000 |问题 19

本题是GATE-CS-2000年的计算机科学考试题,要求编写一个程序来实现一个门电路,用于控制开门和关闭门的操作。

题目描述

实现一个门电路,可以通过输入控制门的状态,包括“开”和“关”两种状态。门电路的控制流程如下:

  1. 如果门当前是开的状态,则门控制器将接收一个关闭信号,门将关闭。
  2. 如果门当前是关的状态,则门控制器将接收一个开启信号,门将打开。

将门状态打印出来。

请编写程序实现上述功能。

输入格式

输入为一个包含两个元素的数组,第一个元素为当前门的状态,为一个字符串,取值为“open”或“closed”;第二个元素为门的操作类型,为一个字符串,取值为“close”或“open”。

输出格式

输出门的最终状态,为一个字符串,取值为“open”或“closed”。

代码片段
# python代码实现
def door(state, action):
    """实现门电路"""
    if state == "open" and action == "close":
        state = "closed"
    elif state == "closed" and action == "open":
        state = "open"
    return state
解释说明

上述代码分别采用if-elif语句实现了门电路的状态控制流程,当门当前状态为开门状态且接收到关闭信号时,门将关闭;当门当前状态为关门状态且接收到开启信号时,门将打开。返回门的最终状态。