【发布时间】:2019-08-26 12:30:55
【问题描述】:
我有 5 个整数变量,分别命名为 x_1、x_2、x_3、x_4、x_5。
int x_1, x_2, x_3, x_4, x_5;
我正在使用 srand() 初始化这些变量的值。
srand(time(NULL));
x_1=rand()%10+1; x_2=rand()%10+1;
...
我需要检查这些变量是否包含一系列升序数字(如扑克中的顺子)。顺序无关紧要。
例如:
x_1=3, x_2=5, x_3=1, x_4=2 x_5=4.
这应该给我 1。但这应该给我 0:
x_1=4, x_2=1, x_3=4 …
(我没有完成列表,因为我已经有多个 4。)
注意:我不能使用数组和全局变量。
注意:很抱歉我无法发送完整代码,因为我什至不知道从哪里开始。
【问题讨论】:
-
“跟风”究竟是什么意思?你在检查重复项吗?
-
你遇到过“数组”吗?您的 5 个变量应替换为单个数组。您是否询问是否正确排序了简单序列的 5 个变量(在数组中)中的数字集?序列必须从 1 开始还是 [4, 5, 6, 7, 8] 是可接受的序列? (我知道值的顺序无关紧要 - 但排序和扫描将是发现问题的一种简单方法。)
-
我觉得禁止使用数组会使这个问题更烦人
-
互相关注是指它不能有重复,还是必须有 5 个数字范围内的每个整数(1,2,4,5,6 返回 0)?
-
@Patrick 它不能有重复项,它们必须相互跟随,而不必在范围内。我的意思是当你订购它们时,它们必须是 (2,3,4,5,6) 或 (1,2,3,4,5) 像这样。
标签: c