| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1387 人关注过本帖
标题:求助;做个小程序
只看楼主 加入收藏
风中情子
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2005-1-11
收藏
 问题点数:0 回复次数:7 
求助;做个小程序
一家公司想通过电话传输数据,但担心电话被人窃听。他们的所有数据都采用4位整数的方式传送。现在,他们要求写一个程序,对其数据进行加密,以便数据更安全的传送。程序应读取一个包含4个数位的整数,并按以下方式加密:将每个位替换成该位与7的和并用10求模。然后,让第一位和第三位调换位置,将第二位和第四位调换位置,并打印出加密后的整数。另写一个程序,输入一个加密的四位整数,解密还原成原来的数字。
搜索更多相关主题的帖子: 整数 数据 数字 
2005-03-07 16:05
lsj2000
Rank: 1
等 级:新手上路
帖 子:67
专家分:0
注 册:2004-11-25
收藏
得分:0 
编制此程序并不困难,但是偶的数学基础太差,请问何为“用10求模”

我是初学者,有什么不周之处还望各位大虾指点一二。
2005-03-08 20:36
lsj2000
Rank: 1
等 级:新手上路
帖 子:67
专家分:0
注 册:2004-11-25
收藏
得分:0 
虽然可以使用 Mod() 方法求模,但我想知道求模是怎么回事,有人能帮我吗?

[此贴子已经被作者于2005-3-8 21:16:59编辑过]



我是初学者,有什么不周之处还望各位大虾指点一二。
2005-03-08 21:16
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
收藏
得分:0 
求模就是对你要求的数取余。

大家都是朋友,有空就来坐坐!
2005-03-09 09:01
lsj2000
Rank: 1
等 级:新手上路
帖 子:67
专家分:0
注 册:2004-11-25
收藏
得分:0 
这么简单呀?用%运算符就是了。
谢谢斑竹了

我是初学者,有什么不周之处还望各位大虾指点一二。
2005-03-09 12:40
lsj2000
Rank: 1
等 级:新手上路
帖 子:67
专家分:0
注 册:2004-11-25
收藏
得分:0 

using System;

namespace JiaMi { class Class1 { static void Main() { string str; start:Console.WriteLine("请输入四位待加密的数字:"); try { str=Console.ReadLine(); int q=int.Parse(str); if (q>=1000&&q<=9999) { string s0=str[0].ToString(); string s1=str[1].ToString(); string s2=str[2].ToString(); string s3=str[3].ToString(); int i0=(int.Parse(s0)+7)%10; int i1=(int.Parse(s1)+7)%10; int i2=(int.Parse(s2)+7)%10; int i3=(int.Parse(s3)+7)%10; Console.WriteLine("加密后的数字:{0}{1}{2}{3}",i2,i3,i0,i1); } else { Console.WriteLine("您输入的数字不在范围之内"); goto start; } } catch { Console.WriteLine("您想用字母加密吗?对不起本版本不提供该功能。"); Console.WriteLine("如果您想使用本软件的全部功能,请将999999元汇至XX银行XXXXXXX帐户^_^"); }

} } } 已经写好,只实现了加密的过程。但我感觉代码还是有点问题:

1 如果这个数加7后小于10,那么与10求余的结果是这个数本身。正确吗? 2 我在代码里面使用了 goto 无条件跳转语句。我想应该还有其他办法实现。

哪位大虾能帮忙改一下

[此贴子已经被作者于2005-3-9 20:09:27编辑过]


我是初学者,有什么不周之处还望各位大虾指点一二。
2005-03-09 20:04
tianhe
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2005-3-17
收藏
得分:0 

试试这个,没有加上default,你可以加上: using System;

namespace ConsoleApplication1 { class Class1 { static void Main(string[] args) { int a; int n1,n2,n3,n4 ; int n1_1,n2_2,n3_3; int N1,N2,N3,N4; bool k1=true; while(k1) { Console.WriteLine(" 请输入四位数"); a=int.Parse(Console.ReadLine()); n1=a/1000; n1_1=a%1000; N1=(n1+7)%10; Console.Write(N1);

n2=n1_1/100; n2_2=n1_1%100; N2=(n2+7)%10; Console.Write(N2); n3=n2_2/10; n3_3=n2_2%10; N3=(n3+7)%10; Console.Write(N3);

n4=n3_3; N4=(n4+7)%10; Console.WriteLine(N4); System.Threading.Thread.Sleep(2000); bool k2=true; Console.WriteLine("are you contiue\0 y/n"); string x1= Console.ReadLine(); while(k2) { switch(x1) { case"y": k1=true; k2=false; break; case "n": k1=false; k2=false; break; } } } } } }


-------------------------------------------- 朴素,清醒
2005-03-19 09:43
seiya
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2005-3-24
收藏
得分:0 

2005-03-24 13:36
快速回复:求助;做个小程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040215 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved