//在密码学中有个简单的分析密码的方法,就是计算每个字母出现的频率,这个小程序就是计算输
//入字符串中每个字母出现的次数的,我现在初学Java,我将把我平时的小练习发到这里,用来自勉
//和初学者共同学习进步.高手不要见笑.
/*
*auther starshus
*
*Date 04/11/20
*/
//6.7.5
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Analyser
{
private String words;
public Analyser (String input)//构造方法,把输入的密码全部转换为大写字母
{
words = input.toUpperCase();
}
public int getNum()//返回密码的长度
{
return words.length();
}
public int result(char c)//方法:计算在密码中character c出现的次数
{
String temp=new String(words);
int index=temp.indexOf(c);
int n=0;
while(index>=0)
{
temp=temp.substring(index+1,temp.length());
index=temp.indexOf(c);
n++;
}
return n;
}
public static void main(String[] args)//主方法
{
System.out.print("Please input the words:");//输入passwd
String inputLine;
try{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
inputLine = in.readLine();
}catch(Exception exc)
{
System.out.println("Sorry,please input a string,thx");
return;
}
Analyser word=new Analyser(inputLine);//用类生成一个对象word
int[] num = new int[26];//定义一个字母,用来装A-Z26个字母
int i;
char ch='A';
for (i=0;ch<91;ch++,i++)//计算每个字母在passwd出现的次数
num[i]=word.result(ch);
System.out.println("The passwd you input is : "+inputLine);//输出
System.out.println("The length of the passwd is : "+word.getNum());//输出输入密码长度
for (i=0,ch='A';i<26;ch++,i++)//输出每个字母出现的次数
System.out.println("The num "+ch+" has presented : "+num[i]);
}
}
分享到:
相关推荐
本文跟大家分享的是编写一个程序,能够计算输入字符各个字母出现的频率,具体如下 先跟大家展示一下最终结果: 刚刚接手题目的时候,我想得很复杂,因为26个字母中有大小写嘛,小写a~z,大写A~Z 但是,无论是大写...
此程序的功能是实现对一篇英文文档中26个英文字母(区分大小写)进行计数,并计算其出现的概率。将结果打印到另一个txt文档中,需要注意的是文档中不能出现回车符。
只统计英文文本的26个字母(不分大小写)出现概率,并对这26个字母进行哈夫曼编码,香农编码,主程序在CalculateLetters_Number.m中。
答:存储器是计算机实现记忆功能的一个重要组成部分,其主要功能是用来保存计算机工作所必需的程序和数据。 9、请列出五种输入设备。 答:键盘、鼠标、扫描仪、话筒、摄像头 10、什么是补码? 答:补码是计算机中对...
一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力。 7.根据存储器的功能或工作方式,可分为 和 两大局部。 8.按存储器是否直接与CPU交换信息,可...
9、回收站是硬盘上的一块区域 10、带省略号的菜单命令被单击后会弹出一个对话框 11、假设Windows桌面上已经有某应用程序的图标,要运行该程序,可以用鼠标左键双 击该图标 12、不按任何键,用鼠标拖动的方法可以...
9、回收站是硬盘上的一块区域 10、带省略号的菜单命令被单击后会弹出一个对话框 11、假设Windows桌面上已经有某应用程序的图标,要运行该程序,可以用鼠标左键双 击该图标 12、不按任何键,用鼠标拖动的方法可以...
UnmapViewOfFile 在当前应用程序的内存地址空间解除对一个文件映射对象的映射 VerFindFile 用这个函数决定一个文件应安装到哪里 VerInstallFile 用这个函数安装一个文件 VerLanguageName 这个函数能根据16位语言...
0237 如何实现一个应用程序只能打开一个进程 158 7.4 其他数据处理技术 159 0238 对计算结果四舍五入 159 0239 获取一个字符的ASCII值 159 0240 判断字符串中是否有文字符 160 0241 如何从字符串中提取...
如何在Windows的桌面上、开始菜单中创建一个应用程序的建快捷方式? 答:方法:在XP 操作系统中,单击开始--程序-- 右击要创造快捷方式的程序选择"复制",在桌面空白处右击选择粘贴"快捷方式"。 3.在Excel中,如何输入...
nl: 一个自己计算行号的脚本. 12-26. manview: 查看格式化的man页 12-27. 使用 cpio 来拷贝一个目录树 12-28. 解包一个 rpm 归档文件 12-29. 从 C 文件中去掉注释 12-30. Exploring /usr/X11R6/bin 12-31. 一个...
13.1. 分析一个系统脚本 14. 命令替换 15. 算术扩展 16. I/O 重定向 16.1. 使用exec 16.2. 代码块的重定向 16.3. 应用 17. Here Documents 17.1. Here Strings 18. 休息时间 Part 4. 高级 19. 正则表达式 19.1. 一个...
一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU...
一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力。 7.根据存储器的功能或工作方式,可分为 和 两大局部。 8.按存储器是否直接与CPU交换信息,可...
一个半角字符在存储器中占个字节,一个汉字在存储器中占个字节。 6.计算机中的运算器,具有运算和运算的能力。 7.根据存储器的功能或工作方式,可分为和两大部分。 8.按存储器是否直接与CPU交换信息,可分为和两...
一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力。 7.根据存储器的功能或工作方式,可分为 和 两大部分。 8.按存储器是否直接与CPU交换信息,可...
一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力. 7.根据存储器的功能或工作方式,可分为 和 两大部分。 8.按存储器是否直接与CPU交换信息,可分为...
4.2.3 OR——判断多个条件中是否至少有一个条件成立 155 4.2.4 XOR——判断多个条件中是否有一个条件成立 156 4.2.5 IF——根据条件判断而返回不同结果 156 4.2.6 IFNA——判断公式是否出现#N/A错误 158 4.2.7 ...