`
baiguomeng
  • 浏览: 958288 次
文章分类
社区版块
存档分类
最新评论

一个字母频率分析计算小程序

 
阅读更多

//在密码学中有个简单的分析密码的方法,就是计算每个字母出现的频率,这个小程序就是计算输
//入字符串中每个字母出现的次数的,我现在初学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 但是,无论是大写...

    统计一篇txt文档(英文)中各英文字母出现的次数及概率

    此程序的功能是实现对一篇英文文档中26个英文字母(区分大小写)进行计数,并计算其出现的概率。将结果打印到另一个txt文档中,需要注意的是文档中不能出现回车符。

    统计英文文本每个字母出现概率(不分大小写)并进行哈夫曼,香农编码

    只统计英文文本的26个字母(不分大小写)出现概率,并对这26个字母进行哈夫曼编码,香农编码,主程序在CalculateLetters_Number.m中。

    计算机概论-平时作业.docx

    答:存储器是计算机实现记忆功能的一个重要组成部分,其主要功能是用来保存计算机工作所必需的程序和数据。 9、请列出五种输入设备。 答:键盘、鼠标、扫描仪、话筒、摄像头 10、什么是补码? 答:补码是计算机中对...

    中职计算机应用基础习题集及答案(2).doc

    一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力。 7.根据存储器的功能或工作方式,可分为 和 两大局部。 8.按存储器是否直接与CPU交换信息,可...

    自考-00018+计算机应用基础.doc

    9、回收站是硬盘上的一块区域 10、带省略号的菜单命令被单击后会弹出一个对话框 11、假设Windows桌面上已经有某应用程序的图标,要运行该程序,可以用鼠标左键双 击该图标 12、不按任何键,用鼠标拖动的方法可以...

    自考-00018+计算机应用基础(1).doc

    9、回收站是硬盘上的一块区域 10、带省略号的菜单命令被单击后会弹出一个对话框 11、假设Windows桌面上已经有某应用程序的图标,要运行该程序,可以用鼠标左键双 击该图标 12、不按任何键,用鼠标拖动的方法可以...

    API之网络函数---整理网络函数及功能

    UnmapViewOfFile 在当前应用程序的内存地址空间解除对一个文件映射对象的映射 VerFindFile 用这个函数决定一个文件应安装到哪里 VerInstallFile 用这个函数安装一个文件 VerLanguageName 这个函数能根据16位语言...

    delphi 开发经验技巧宝典源码

    0237 如何实现一个应用程序只能打开一个进程 158 7.4 其他数据处理技术 159 0238 对计算结果四舍五入 159 0239 获取一个字符的ASCII值 159 0240 判断字符串中是否有文字符 160 0241 如何从字符串中提取...

    计算机应用基础.doc

    如何在Windows的桌面上、开始菜单中创建一个应用程序的建快捷方式? 答:方法:在XP 操作系统中,单击开始--程序-- 右击要创造快捷方式的程序选择"复制",在桌面空白处右击选择粘贴"快捷方式"。 3.在Excel中,如何输入...

    Linux高级bash编程

    nl: 一个自己计算行号的脚本. 12-26. manview: 查看格式化的man页 12-27. 使用 cpio 来拷贝一个目录树 12-28. 解包一个 rpm 归档文件 12-29. 从 C 文件中去掉注释 12-30. Exploring /usr/X11R6/bin 12-31. 一个...

    Advanced Bash-Scripting Guide <>

    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. 一个...

    DCS硬件知识

    一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU...

    中职计算机应用基础习题集及答案(1).doc

    一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力。 7.根据存储器的功能或工作方式,可分为 和 两大局部。 8.按存储器是否直接与CPU交换信息,可...

    中职计算机应用基础习题集与答案.docx

    一个半角字符在存储器中占个字节,一个汉字在存储器中占个字节。 6.计算机中的运算器,具有运算和运算的能力。 7.根据存储器的功能或工作方式,可分为和两大部分。 8.按存储器是否直接与CPU交换信息,可分为和两...

    中职计算机应用基础习题集及答案.doc

    一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力。 7.根据存储器的功能或工作方式,可分为 和 两大部分。 8.按存储器是否直接与CPU交换信息,可...

    中职计算机应用基础习题集及答案(3).doc

    一个半角字符在存储器中占 个字节,一个汉字在存储器中占 个字节。 6.计算机中的运算器,具有 运算和 运算的能力. 7.根据存储器的功能或工作方式,可分为 和 两大部分。 8.按存储器是否直接与CPU交换信息,可分为...

    Excel公式与函数大辞典.宋翔(带书签高清文字版).pdf

    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 ...

Global site tag (gtag.js) - Google Analytics