gpt4 book ai didi

enums - pascal 中 'read' 枚举类型的任何简单方法?

转载 作者:行者123 更新时间:2023-12-01 12:46:02 51 4
gpt4 key购买 nike

用户输入一个整数,它对应于定义的枚举类型的值。我需要将该值分配给变量 t。这是我的想法:

type test = (red,green,blue,fish);
var t:test;
n,i:integer;
begin
readln(n);
t:=red;
for i:=1 to n do
t:=succ(t);
end.

我是否使任务过于复杂?是否可以编写更简单的算法?

最佳答案

您应该能够将整数转换为枚举类型,例如:

t := test(n);

如果你想走另一条路,那么使用ord:

n := ord(t);

这应该可以让您按数字移动到列表中的任何项目。您可以使用以下方法检查边界:

Ord(Low(test)))

Ord(High(test))

..其中 test 是您的类型。

关于enums - pascal 中 'read' 枚举类型的任何简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15887939/

51 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com