当前位置: 首页 > 知识库问答 >
问题:

Python while循环(编码练习,三个变量)

康泽宇
2023-03-14

由于我是一个完全的编程新手,我需要你的建议,关于我需要完成的在线课程的编码练习。

以下是说明:

summit\u int\u 1=3

mystery_int_2=4

summary\u int\u 3=5
(在我提交代码后这些将被更改,所以这只是一个示例)

以上是三个值。运行while循环,直到所有三个值都小于或等于0。每次更改这三个变量的值时,请在同一行上打印它们的新值,并用单个空格分隔。例如,如果其值分别为3、4和5,则代码将打印:

2 3 4

1 2 3

0 1 2

-1 0 1

-2-1 0

我试着这样写:

while not mystery_int_1 <= 0 and not mystery_int_2 <= 0 and not mystery_int_3 <= 0: 
    mystery_int_1 -= 1
    mystery_int_2 -= 1
    mystery_int_3 -= 1
    print(mystery_int_1, mystery_int_2, mystery_int_3) 

运行代码后,我意识到它有问题,但我不知道如何修改它。尝试了很多选择,但没有一个像预期的那样有效。。。

提前谢谢大家!

共有3个答案

苏乐
2023-03-14

您的情况而不是神秘的\u int\u 1

  • 神秘国际1

当其中一个数低于0时,一个条件变为false,但是循环的条件要求所有这些都为true,因此它停止执行。您可能希望将替换为。因此,循环继续,直到其中一个变量仍然大于0。

郭意
2023-03-14

试试这个-

while not mystery_int_1 <= 0 or not mystery_int_2 <= 0 or not mystery_int_3 <= 0: 
   mystery_int_1 -= 1
   mystery_int_2 -= 1
   mystery_int_3 -= 1
   print("{} {} {}".format(mystery_int_1, mystery_int_2, mystery_int_3))

阅读python和`或

赫连昕
2023-03-14

您的循环当前循环,直到任何数字小于或等于零。大声说,你的循环是“当神秘1不小于或等于零,神秘2不小于或等于零和…”,所以如果其中任何一个小于或等于零,循环停止。

你想要这个:

while not (mystery_int_1 <= 0 and mystery_int_2 <= 0 and mystery_int_3 <= 0):

或者这个:

while mystery_int_1 > 0 or mystery_int_2 > 0 or mystery_int_3 > 0:

或者可能是这个,尽管我发现这个版本最令人困惑。也就是说,它最接近你已经拥有的。)

while not mystery_int_1 <= 0 or not mystery_int_2 <= 0 or not mystery_int_3 <= 0:
 类似资料:
  • 问题内容: 是while循环中为while循环中的每三个项目将变量分配给div中的类的一种方式。我使用的是蓝图结构,最后是第三个div,我需要在每个第三个div上附加一个“ last”类名,以便第3 div,第6 div,第9 div等? 问题答案: 这里的关键部分是。 编辑: 以下是对您的评论的回应。

  • 我被一个练习卡住了,我正在做的练习是“写一个程序,确定并打印从键盘上读取的整数值中的奇数、偶数和零位数。我做错了什么,我如何纠正我的错误?

  • 我是新的编码,并有这个问题的问题,任何帮助都是感激的。 提示:将你的BMI计算四舍五入到小数点后一位。确保返回的消息与显示的完全相同。 我做错了什么!!这就是我得到的错误。 错误:公共字符串BMIResult(双重,双高){

  • 你现在可以创建不同类型的数组,并且也知道了“字符串”和“字节数组”是相同的东西。接下来,我们要更进一步,创建一个包含字符串的数组。我也会介绍第一个循环结构,for循环来帮我们打印出这一新的数据结构。 这一章的有趣之处就是你的程序中已经有一个现成的字符串数组,main函数参数中的char *argv[]。下面这段代码打印出了所有你传入的命令行参数: #include <stdio.h> int m

  • 你已经初步了解C语言如何处理循环,但是你可能不是很清楚布尔表达式i < argc是什么。在学习while循环之前,让我先来对布尔表达式做一些解释。 在C语言中,实际上没有真正的“布尔”类型,而是用一个整数来代替,0代表false,其它值代表true。上一个练习中表达式i < argc实际上值为1或者0,并不像Python是显式的Ture或者False。这是C语言更接近计算机工作方式的另一个例子,因

  • 我的代码是: 这似乎不会在我的变量列表中循环。有什么想法吗?提前致谢