如何检查一个元素是否属于一种子类型或另一种子类型?

2023-12-27

刚刚了解了 Ada 中的枚举和类型,决定写一个小程序来练习:

with Ada.Text_IO;                       use Ada.Text_IO;
with Ada.Integer_Text_IO;       use Ada.Integer_Text_IO;

procedure Day is 

    type Day_Of_The_Week is (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday);

    subtype Weekday is Day_Of_The_Week range Monday..Friday;

    subtype Weekend is Day_Of_The_Week range Saturday..Sunday;

        function is_Weekday ( dayOfTheWeek: in Day_Of_The_Week) return Boolean is
        begin
            if(--?--)
        end is_Weekday;

    selected_day_value  :   Integer;
    selected_day                :   Day_Of_The_Week;

begin
    Put_Line("Enter the number co-responding to the desired day of the week:");
    Put_Line("0 - Monday");
    Put_Line("1 - Tuesday");
    Put_Line("2 - Wednesday");
    Put_Line("3 - Thursday");
    Put_Line("4 - Friday");
    Put_Line("5 - Saturday");
    Put_Line("6 - Sunday");
    Get(selected_day_value);
    selected_day = Day_Of_The_Week'pos(selected_day_value);

    if( is_Weekday(selected_day))
        Put_Line( Day_Of_The_Week'Image(selected_day) & " is a weekday." );
    else
        Put_Line( Day_Of_The_Week'Image(selected_day) & " is a weekday." );

end Day;

我在使用 if 语句时遇到问题。如何检查 dayOfTheWeek 是否属于工作日子类型或周末子类型?


You want

function is_Weekday ( dayOfTheWeek: in Day_Of_The_Week) return Boolean is
begin
    return dayoFTheWeek in Weekday;
end is_Weekday;

另外,你想要’Val not ’Pos in

selected_day := Day_Of_The_Week'val(selected_day_value);

你可以看看第二个单词Put_Line!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查一个元素是否属于一种子类型或另一种子类型? 的相关文章

  • mypy 如何忽略源文件中的一行?

    我在用着mypy http mypy lang org 在我的 python 项目中进行类型检查 我还使用 PyYAML 来读取和写入项目配置文件 不幸的是 当使用PyYAML 文档中推荐的导入机制 http pyyaml org wiki
  • 如何制作Applicative的固定长度向量实例?

    最近了解了推广 决定尝试写向量 LANGUAGE DataKinds GADTs KindSignatures module Vector where data Nat Next Nat Zero data Vector Nat gt gt
  • 比较字符变量

    我想在 R Studio 中比较两个不同的字符变量 第一列 BZ Pred 显示参与者预测的 5 个最常用的应用程序 第二列 BZ Act 显示实际使用最多的 5 个应用程序 现在我想创建第三列 如果第一个应用程序被正确猜测 则包含 是 如
  • 为什么如果条件无法比较负整数和正整数[重复]

    这个问题在这里已经有答案了 include
  • Haskell 中的异构多态性(正确方法)

    让一个模块来抽象Area操作 错误的定义 class Area someShapeType where area someShapeType gt Float module utilities sumAreas Area someShape
  • 在 Ada 中定义通用标量类型包

    我想通过制作一个用于操作多项式的 Ada 包来测试编写 Ada 包的水 可以为多种代数结构定义多项式 因此为了反映这一点 我想使该包通用 以便它可以与浮点数 整数或其他数字子类型一起使用 我现在想说 我对 Ada 的类型系统如何工作或者它的
  • 检查多个位置的值并仅在源唯一时返回匹配项

    假设我有一个清单Vendors 阿斯达 乐购 Spar 我有一个清单Sources 或者这个类比中的供应商 家乐氏 Kellogg 吉百利 Cadbury 雀巢 Nestle 强生 Johnsons 帮宝适 Pampers Simple 等
  • 为什么 textarea 不是 input[type="textarea"]?

    为什么有一个元素
  • 如何在一列中存储数组或多个值

    运行 Postgres 7 4 是的 我们正在升级 我需要将 1 到 100 个选定项目存储到数据库的一个字段中 98 的情况下 只会输入 1 个项目 而 2 的情况下 如果是这样的话 会输入多个项目 这些项目只不过是文本描述 截至目前 长
  • 如何手动推断表达式的类型

    给定 Haskell 函数 head filter fst 现在的问题是如何手动 手动 找到类型 如果我让 Haskell 告诉我我得到的类型 head filter fst Bool b gt Bool b 但我想了解仅使用所用函数的签名
  • TypeScript:实现具有调用签名和索引签名的接口

    我想创建一个满足此类型的对象 interface I string x string number 并通过 TypeScript 类型检查 理想情况下 我希望不需要诉诸技巧 例如使用any作为中间步骤 我知道可以将其他字段添加到具有调用签名
  • 比较 Lua 中的日期

    我有一个带有日期表的变量 如下所示 table day number 15 year number 2015 month number 2 如何获取当前日期与上述日期之间的天数 非常感谢 您可以使用os time 将表转换为秒并获取当前时间
  • 防止 Ada DLL 中的名称损坏

    有没有一种简单的方法可以防止在创建 Ada DLL 时 Ada 名称被破坏 这是我的 adb 代码 with Ada Text IO package body testDLL is procedure Print Call is begin
  • 什么时候应该使用双精度而不是十进制?

    我可以说出使用的三个优点double or float 代替decimal 使用更少的内存 速度更快 因为处理器本身支持浮点数学运算 可以表示更大范围的数字 但这些优点似乎只适用于计算密集型操作 例如建模软件中的操作 当然 当需要精度时 例
  • 为什么这些类型参数不符合类型细化?

    为什么此 Scala 代码无法进行类型检查 trait T type A trait GenFoo A0 S lt T type A A0 trait Foo S lt T extends GenFoo S A S 我不明白为什么 类型参数
  • 在学术 CS 世界中,“非类型化”是否也意味着“动态类型化”?

    我正在阅读一个幻灯片 上面写着 JavaScript 是无类型的 这与我的想法相矛盾 所以我开始挖掘并尝试了解更多信息 每个答案JavaScript 是一种无类型语言吗 https stackoverflow com questions 9
  • SQLite支持android的数据类型有哪些

    谁能告诉我 SQLITE 中支持 ANDROID 的数据类型列表 我想确认 TIME 和 DATE 数据类型 这里有一个list http www sqlite org datatype3 htmlSQLite 的数据类型 支持时间和日期间
  • 如何将类型设置为 vue slot props Typescript

    我正在尝试在插槽道具上设置类型以在表格组件中进行处理 如图所示 我也一直在尝试 body item UserItem 但这只是重命名参数 body
  • 如何处理最终字符串?

    制作有什么好处吗String as final或者我们可以做String as final 我的理解是 由于 String 是不可变的 因此没有必要将其设为最终的 这是正确的还是人们想要的情况String as Final Code pri
  • 是否有一种类型安全的方法可以将较大的对象减少()为打字稿中的新类型?

    我有一个表示数据库查询结果的数据结构 它是一个具有许多属性的对象 所有属性都是标量 在我的例子中 都是字符串或数字 我想提取这些属性的一部分并填充一个具有已定义形状的新对象 const input Record

随机推荐

  • 项目文件夹中的 __init__.py 破坏了鼻子测试

    项目树 bar py test init py test bar py bar py def dumb true return True 测试 test bar py import bar def test bar true assert
  • Android:关闭/丢失蓝牙连接或文件接收 -> 执行某些操作

    我想编写一个应用程序 通过以下方式监视我配对的蓝牙连接 如果文件来自配对源 则应存储该文件 如果没有文件被传递并且蓝牙连接中断 我的应用程序将存储一个虚拟文件 存储文件效果很好 我的主要问题是如何在显示器上没有活动的情况下运行整个过程 我读
  • 使用 OpenStreetMap 获取给定 GPS 坐标集的国家/地区名称

    有谁知道是否有办法使用 OpenStreetMap 离线或 API 来获取给定的 GPS 坐标集的国家 地区名称 我对使用此处提到的 Google 或 Geonames API 不感兴趣 GPS 坐标的国家 地区名称 https stack
  • 更新会员属性。不支持的方法

    我已经尝试研究我收到的异常几个小时了 但没有任何进展 我只是尝试使用以下代码更新会员资料 MembershipUser user Membership GetUser username user IsApproved false Membe
  • iOS:Google 地图 API -markerInfoWindow 与markerInfoContents

    我浏览了谷歌地图文档 https developers google com maps documentation ios sdk reference protocol g m s map view delegate p html ada4
  • 使用较小的物理内存对 10 亿个整数进行排序

    想要对 10 亿个整数进行排序 而我的系统只有 1 GB RAM 最快 最有效的排序方法是什么 假设我们在文本文件中输入每行一个整数 我们使用java程序来排序 我指定了 RAM 因为我们无法将所有输入整数保存在 RAM 中 Update
  • 创建一个序列,其值是字符和数字的混合

    我正在使用 Postgres 9 1 并且想创建一个可以用作主键的序列 它应该如下所示 entity id seq X0001 X0002 X0123 and nextval entity id seq 会回来 X0124 知道如何以及是否
  • inline 决定内部链接吗?

    我正在尝试外部内联函数 我认为它应该如何工作 a cpp inline void f int b cpp extern void f int int main f 4 但出现链接错误 然后通过阅读this https en cpprefer
  • cocos2d 3.x CCButton 设置精灵帧图像扭曲且回调/块不起作用

    我需要设置按钮的精灵框架 当我使用构造函数时它正在工作 CCSprite sprite CCSprite spriteWithImageNamed but png CCButton button CCButton buttonWithTit
  • ClickHouse Kafka 性能

    按照文档中的示例 https clickhouse yandex docs en table engines kafka https clickhouse yandex docs en table engines kafka 我使用 Kaf
  • pip install 与 conda install [重复]

    这个问题在这里已经有答案了 由于我使用的是 Spider 所以我应该使用 conda install 但是有些软件包无法在 conda install 中安装 而在 pip install 中可以轻松安装 例如 我在 pip install
  • 在 R 中粘贴矩阵

    我有一个关于粘贴矩阵的问题 我有一组 10 个矩阵 它们具有相同的行名称但不同的列名称 例如 矩阵1 A B C D a 1 0 0 0 b 0 1 0 0 c 0 1 0 0 d 0 0 1 0 e 0 0 0 1 矩阵2 A B D E
  • 可以听 twain(也许是 WIA)扫描仪吗?

    我正在评估 VintaSoft net 控件和 Atalasoft DotTwain 图像捕获 我对大部分定义和关键词感到非常困惑 所以我问这个是因为我觉得我在拉拉之地 是否可以听或让扫描仪告诉我的应用程序有扫描图像并且我可以处理它 这个想
  • Android 游戏框架 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我是一名 Flash 开发人员 希望进入 Android iPhone 游戏开发领域 Android 对我来说更重要 因为我没有任何 iO
  • Android AdMob 问题

    我正在尝试放入广告 但一旦广告加载 程序中的其他所有内容都会消失 只留下广告
  • 当我使用谷歌地图时生成签名的 apk 时出错?

    您好 我在生成签名的 apk 时遇到此错误 Error Execution failed for task app lintVitalRelease gt Lint found fatal errors while assembling a
  • 使用 Flask-socketio 和 socketIO 客户端

    我目前正在尝试了解套接字是如何工作的 我正在使用 Flask socketio 和 python socketio 客户端并运行一个基本示例 这是我到目前为止所做的 app py from flask import Flask render
  • 如何让 TypeScript 识别 firebase 导入

    我试图通过访问 firestore 客户端在小型 TypeScript Web 应用程序中显示 firestore 的内容 但是 tsc 无法编译 因为它找不到 firebase 模块 在我的index html的头部 我从gstatic导
  • 如何基于多态干净地处理不同的行为

    假设我有一个界面IFoo与实现类VideoFoo AudioFoo and TextFoo 进一步假设我无法修改任何代码 假设我想编写一个函数 该函数根据运行时类型进行不同的操作IFoo 例如 Public Class Bar Public
  • 如何检查一个元素是否属于一种子类型或另一种子类型?

    刚刚了解了 Ada 中的枚举和类型 决定写一个小程序来练习 with Ada Text IO use Ada Text IO with Ada Integer Text IO use Ada Integer Text IO procedur