如何在haskell中输入整数? (在控制台输入)

2024-01-24

如何在控制台中输入整数,将其存储在变量中,然后将其作为我创建的函数的参数传递?

到目前为止,为了使其有效,我必须执行以下操作:

在最后一行中,您可以看到我如何应用该函数,我想要做的是通过控制台请求变量作为整数应用于函数,然后打印结果。

    mayor :: Int -> Int -> Double
    mayor x y =
        if  x < y 
        then 0.1
            else 0.3


    compra :: Int -> Int -> Int -> Int -> Int -> Int -> Double
    compra n v u iva p vp =
        let valor_compra = (fromIntegral v) * (fromIntegral n) * (1 - mayor n u)
            valor_iva = valor_compra * (fromIntegral iva) / 100
            valor_puntos = fromIntegral (p * vp)
            efectivo = if (valor_puntos < valor_compra) then valor_compra-valor_puntos else 0
        in  valor_iva + efectivo

    main = do
    print (compra 20 2000 7 14 10 1500)

我这样做的方式给了我结果 16920.0


Use getLine or readLn然后将输入值解析为您需要的类型,如下所示:

mayor :: Int -> Int -> Double
mayor x y =
    if  x < y 
    then 0.1
        else 0.3


compra :: Int -> Int -> Int -> Int -> Int -> Int -> Double
compra n v u iva p vp =
    let valor_compra = (fromIntegral v) * (fromIntegral n) * (1 - mayor n u)
        valor_iva = valor_compra * (fromIntegral iva) / 100
        valor_puntos = fromIntegral (p * vp)
        efectivo = if (valor_puntos < valor_compra) then valor_compra-valor_puntos else 0
    in  valor_iva + efectivo

main = do
       putStrLn "enter value for x: "
       input1 <- getLine
       putStrLn "enter value for y: " 
       input2 <- getLine 
       let x = (read input1 :: Int)
       let y = (read input2 :: Int)
       print (compra x y 7 14 10 1500)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在haskell中输入整数? (在控制台输入) 的相关文章

随机推荐

  • 可以嵌套 HTML 表单吗?

    是否可以像这样嵌套 HTML 表单
  • 是否可以使用egrep来匹配某个范围内的数字?

    有没有办法grep egrep两组数字之间 egrep SomeText 19999 22000 some file txt 它不返回值 我预计 SomeText 19999 ffuuu SomeText 20001 ffuuu SomeT
  • shell pipeline 如何处理无限循环

    每当我需要限制 shell 命令输出时 我都会使用 less 对结果进行分页 cat file with long content less 它工作得很好 但我很好奇的是 即使输出永远不会结束 less 仍然有效 请考虑将以下脚本放在inf
  • 使用谷歌翻译 API 的值无效 (400)

    我的要求有什么问题吗 我有俄语字符串 string 我想用 google API 将其翻译为乌克兰语 我对字符串进行编码 q urlencode string 我请求谷歌API 作为回应 我得到 error errors domain gl
  • 在 ng-view 上滚动时,无尽滚动在 AngularJS 中不起作用

    我正在使用类似的代码this http jsfiddle net vojtajina U7Bz9 在 AngularJS 中创建无限滚动效果 我尝试通过移动可滚动容器的内容 在本例中为ul 到一个单独的 html 文件 然后使用 ng vi
  • ios:显示可变长度、多行文本的最佳方式

    我计划从文本文件加载多段落内容并将其显示在用户界面上 我将从几个文本文件之一加载 并且不会提前知道文本的长度 我的第一个想法是在 UIScrollView 中使用 UILabel 然而 似乎 UILabel 不能根据它包含的行数进行扩展 它
  • 如何在d3.js的Pack Layout中插入饼图?

    大家好 我想在我的包布局中添加饼图 而不是简单的圆圈 假设这是我的饼图数据和饼图布局 var data 2 3 4 5 var 弧 d3 svg arc outerRadius 50 innerRadius 0 var 饼 d3 layou
  • 就数据挖掘和可视化工具支持而言,日志事件的最佳 XML 格式是什么?

    我们希望能够从 Java 应用程序创建日志文件 该文件适合稍后通过工具进行处理 以帮助调查错误并收集性能统计数据 目前 我们使用传统的 日志内容 可能会或可能不会被展平为文本形式并附加到日志文件中 但这最适合人类读取的少量信息 经过仔细考虑
  • c strcmp 源代码

    int strcmp const char s1 const char s2 int ret 0 while ret unsigned char s1 unsigned char s2 s2 s1 s2 if ret lt 0 ret 1
  • 如何避免 ReactJS 中的 jQuery 调用

    我知道 JQuery 是 ReactJS 中的一种代码味道 因为它遍历整个 DOM 来完成它的工作 但是 我发现有些地方很难不使用它 这是一个例子 如果可能的话 我想找到一种更好的方法 我只是想根据字段是否填充来显示或隐藏 div 上的消息
  • redux 中有 OOP 的地方吗?

    我已经使用面向对象编程实践 25 年了 并在过去 5 年里尝试转向函数式编程 但当我尝试做一些复杂的事情时 我的想法总是倾向于 OOP 尤其是现在 ES6 支持像样的OOP 语法 这是我构建东西的自然方式 我现在正在学习 Redux 并且我
  • 来电显示检测:不适用于某些手机

    当有人打电话时 我使用以下方法来检测来电显示 在表单加载时我设置以下代码 this serialPort1 PortName COM3 this serialPort1 BaudRate 9600 this serialPort1 Data
  • mysql UPDATE 比 INSERT INTO 快吗?

    这更多的是一个理论问题 如果我运行 50 000 个插入新行的查询和 50 000 个更新这些行的查询 哪一个将花费更少的时间 插入会更快 因为使用更新 您需要首先搜索要更新的记录 然后执行更新 尽管这似乎不是一个有效的比较 因为您永远无法
  • 在 R parallel::mcparallel 中,是否可以限制任一时间使用的核心数量?

    在 R 中 mcparallel 函数在parallel每次调用包时 它都会将新任务分叉给工作人员 例如 如果我的机器有 N 个 物理 核心 并且我分叉了 2N 个任务 那么每个核心都会开始运行两个任务 这是不可取的 我宁愿能够开始在 N
  • 在 React Native 中创建自定义底部选项卡导航器

    大家好 我想在 React Native 中创建时尚且自定义的底部选项卡导航 任何人都可以知道如何创建上面提到的内容 const customTabBarStyle activeTintColor 0091EA inactiveTintCo
  • 如何构建 libjpeg 9b 的 DLL 版本?

    我想构建 libjpeg 9b 的 DLL 版本 根据文件here https msdn microsoft com en us library ms235636 aspx 看来我们需要添加一个预处理器 declspec dllexport
  • IE9 的foreignObject 的替代品

    我真的很喜欢foreignObject通过svg显示HTML区域 但今天我发现它在IE9中不起作用 为什么我不惊讶 好的 所以我正在寻找一个适用于 IE9 的替代方案 但这似乎很困难 使用foreignObject 来显示多个HTML 元素
  • WordPress插件翻译问题

    我用 poedit 翻译了我的插件 它在本地主机上运行良好 在新的 WordPress 安装上 但是当我将插件上传到服务器上的现有站点上时 一些俄语字符丢失了 相反 我得到的是拉丁文 我用 utf8 编码了 poedite 文件 在标头中我
  • 无法使用 IOptionsMonitor 检测 ASP.NET Core 中的更改

    我正在开发 Asp Net Core 应用程序 我想在运行应用程序后更改配置设置 我正在使用 IOptionsMonitor 但它没有检测到更改 在 Startup cs gt Configuration 方法中我有 services Co
  • 如何在haskell中输入整数? (在控制台输入)

    如何在控制台中输入整数 将其存储在变量中 然后将其作为我创建的函数的参数传递 到目前为止 为了使其有效 我必须执行以下操作 在最后一行中 您可以看到我如何应用该函数 我想要做的是通过控制台请求变量作为整数应用于函数 然后打印结果 mayor