Fortran Coder

查看: 10472|回复: 1
打印 上一主题 下一主题

[求助] 关于翻译密码程序的输入输出问题

[复制链接]

6

帖子

3

主题

0

精华

入门

F 币
35 元
贡献
20 点
跳转到指定楼层
楼主
发表于 2016-9-6 10:20:28 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
程序先按照约定的规律将一个字符转换为对应的ASCⅡ码,ASCⅡ码加5后再转换得到原来的字符。当ASCⅡ码加5超过Z,要使之转换为A。对字母之外的字符维持原样。程序如下:
[Fortran] 纯文本查看 复制代码
! 翻译密码。
program char_4
implicit none
integer::i,j,k
character*80::line1,line2
character*1::l1,l2
read *,line1
do k=1,80
    l1=line1(k:k)
    if ((lge(l1,'A').and.lle(l1,'Z')).or.(lge(l1,'a').and.lle(l1,'z'))) then
        i=iachar(l1)
        j=i+5
    else  
        if(j>iachar('z').or.(j>iachar('Z').and.j<iachar('Z')+6)) then
            j=j-26 
            l2=achar(j)
            line2(k:k)=l2
        else
            line2(k:k)=l1
        end if
    end if
end do
print *,line2
end program char_4
调试程序没错,但是例如输入 "HE IS IN BEIJING" 程序没反应,求解~

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-17 02:11

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表