在IBM i(OS / 400)上使用RPGLE将数字转换为汉字

作者:佚名 上传时间:2023-03-25 运行软件:Rational Developer for i (RDI) 软件版本:IBM i (OS/400) V7R4 版权申诉

该示例代码展示了如何使用RPGLE将数字转换为中文汉字。采用的方法是根据位数不断地递归计算。

d 十五位数字 s 15 0
d 汉字 s 30a
c     *entry        plist
c                   parm                    十五位数字
c     eval          汉字 = cn(十五位数字)
c     eval          *inlr = *on            // 设定程序结束
c                   return
c                   end

p cn            b
d cn            pi              30a
d 数字          s               15 0
c                   if        数字 = 0
c                   return    '零'
c                   endif

c                   select
c     when          数字 >= 100000000000000
c                   eval      cn = cn + cn(%rem(%rem(数字, 100000000000000), 1000) / 100) + '亿'   // 亿
c                   eval      cn = cn + cn(%rem(数字, 100000000000000) / 1000000000000) + '万亿'
c                   iter
c     when          数字 >= 1000000000000
c                   eval      cn = cn + cn(%rem(%rem(数字, 1000000000000), 1000) / 100) + '万'   // 万
c                   eval      cn = cn + cn(%rem(数字, 1000000000000) / 100000000) + '亿'
c                   iter
c     when          数字 >= 100000000
c                   eval      cn = cn + cn(%rem(%rem(数字, 100000000), 1000) / 100) + '百'   // 百
c                   eval      cn = cn + cn(%rem(数字, 100000000) / 10000) + '万'
c                   iter
c     when          数字 >= 10000
c                   eval      cn = cn + cn(%rem(%rem(数字, 10000), 100) / 10) + '十'   // 十
c                   eval      cn = cn + cn(%rem(数字, 10000) / 1000) + '千'
c                   iter
c     when          数字 >= 1000
c                   eval      cn = cn + cn(数字 / 1000) + '千'   // 千
c                   eval      数字 = %rem(数字, 1000)
c                   iter
c     otherwise
c                   eval      cn = cn + cn(数字 / 100) + '百'   // 百
c                   eval      数字 = %rem(数字, 100)
c                   eval      cn = cn + cn(数字 / 10) + '十'   // 十
c                   eval      数字 = %rem(数字, 10)
c                   eval      cn = cn + cn(数字)   // 个
c                   eval      数字 = 0
c                   endsl
c                   return cn
p cn            e

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
IBM iOS / 400使用RPGLE数字换为汉字
该示例代码展示了如何使用RPGLE将数字转换为中文汉字。采用的方法是根据位数不断地递归计算。d 十五位数字 s 15 0d 汉字 s 30ac *entry plistc
IBM i (OS/400) V7R4
Rational Developer for i (RDI)
2023-03-25 13:04
IBM i (OS/400)使用RPGLE删除文件
本示例代码演示了如何使用RPGLE在IBM i (OS/400)上删除文件。我们将使用OS/400命令QShell,通过运行一个带有Shell语句的子进程来执行操作。/free dcl-
IBM i V7R1
RPGLE
2023-04-08 00:06
使用RPGLEIBM iOS/400创建PDF文件
本示例介绍如何使用RPGLE语言在IBM i操作系统上利用第三方库生成PDF文件。实现方式为使用RPGLE中可调用C语言的特性,调用第三方库生成PDF文件,并将其保存至本地文件系统。/*******
IBM i 7.3
RPGLE
2023-04-26 14:30
IBM i (OS/400)使用RPGLE读取CSV文件
本示例展示在IBM i (OS/400)上使用RPGLE语言读取并解析CSV文件的方法。本代码通过使用内置函数来将CSV文件解析为数组,并展示了如何对该数组进行处理。通过此方法可以方便地将CSV文件导
IBM i 7.2, RPGLE
IBM Rational Developer for i
2023-04-07 12:56
IBM i (OS/400)使用RPGLE编写程序
本文是关于如何在IBM i (OS/400)上使用RPGLE编写程序的指南。下面将介绍IBM i (OS/400) RPGLE编程、程序调试技巧、程序优化方法,并提供示例代码及代码释义。最后会对本文内
IBM i 7.3 TR3
IBM
2023-03-20 22:09
IBM i (OS/400)RPGLE程序示例
本文提供了IBM i RPGLE示例代码,主要包括以下几个方面:RPGLE程序IBM i入门我们提供了一些简单的RPGLE程序示例,旨在帮助初学者了解RPGLE程序设计的基础。示例代码涵盖了RPG
IBM i V7R1
RPGLE
2023-04-01 14:22
IBM iOS/400使用RPGLE打印PDF文档
使用RPGLE在IBM i(OS/400)上打印PDF文档的方法。通过调用系统命令,将PDF文件转换为AFP格式,并使用AFP工具箱打印输出。 /free //指定Pdf文件名称
IBM i 7.3
RPGLE
2023-04-20 20:55
IBM i (OS/400)利用RPGLE数据插入MongoDB数据库
本示例展示了如何使用RPGLE将数据插入MongoDB数据库的过程。在本示例中使用的是最新的IBM i V7R4操作系统和MongoDB 4.4.5版本。* MongoDB连接信息 D M
IBM i V7R4操作系统,MongoDB 4.4.5版本。
RPGLE
2023-03-27 03:14
使用RPGLEIBM i (os/400)发送电子邮件
本示例代码演示如何使用RPGLE编写程序在IBM i (os/400)上发送电子邮件。该程序具有灵活性,可以根据需要更新发件人,收件人,主题和邮件内容。发送邮件需要设置SMTP服务器和端口号。//发
IBM i 7.4
RPGLE
2023-04-16 18:23
IBM i (OS/400)使用RPGLE编写WebSocket服务器
本示例展示了如何使用RPGLE在IBM i (OS/400)上编写WebSocket服务器,以及如何与客户端进行通信。// 监听端口exec SQL call qp2zlisten('12345'
IBM i 7.4
RPGLE
2023-04-04 00:38