您如何伪编码此问题?在编写代码之前如何简化此问题?

时间:2019-07-03 12:05:51

标签: pseudocode

  

您的一周几乎总是一样。在当天要做的事情上,您可以刷牙,洗个澡,吃早餐,开车去上班,工作/野外工作/会议,回家,在家吃晚饭,睡觉。有时候您的活动会改变。

     
      
  1. 在星期三,您不吃早餐,因为您需要很早上班。
  2.   
  3. 星期一,星期三和星期五,您有办公室工作,星期二有会议,星期四有现场工作。
  4.   
  5. 在星期二,您开车而不是开车,因为那天您的车正在编码。
  6.   
  7. 在星期五,您与家人共进晚餐并看电影。
  8.   
     

创建伪代码,以显示您一周的详细活动。请注意,您只能使用一个循环。

我研究了在数组中添加和删除。 查看了嵌套循环,但只需要一个循环

var week = [monday ,tuesday, wednesday, thursday, friday]

var toDo = [Brush teeth ,take shower ,eat breakfast ,drive car ,work ,come home ,eat dinner at home]

for (day in week) {

    var monday += toDo;
}

return monday

只需要您的版本来说明如何处理/伪编码此问题。

1 个答案:

答案 0 :(得分:0)

由于您只能使用一个循环,因此不再需要第二个数组(toDo),因为需要第二个循环来处理它。一种可能的方法是:

var week = [Monday, Tuesday, Wednesday, Thursday, Friday]
for day in week
{
    brush teeth
    take shower
    if day is not Wednesday, eat breakfast
    if day is Tuesday, take bus, else drive car to work
    if day is Monday, Wednesday or Friday, office work
    else if day is Tuesday, meetings
    else (day is Thursday) field work
    come home
    if day is Friday, eat dinner out and watch movie, else eat dinner at home
    sleep
}