java - IntelliJ 仅打印所需输出的一部分(Java)
问题描述
我希望以前没有人问过这个问题,如果有的话,我深表歉意,并提前感谢您的帮助!
问题:以下程序将文件拆分为序列,计算序列中的字母并使用这些数字执行计算。我正在检查文件是否被正确拆分,通过使用循环打印出来,似乎某些循环只打印了所需输出的一部分。我意识到这不是一个主要错误,但无法弄清楚问题让我很恼火。
注意:这是一个大学作业,因此设置了限制,这就是代码不干净的原因。
这是我的代码:
public String cryptanalysis() throws IOException {
// Please, do not remove the editor-fold comments.
//<editor-fold defaultstate="collapsed" desc="Write your code here below!">
//</editor-fold> // END OF YOUR CODE
//use this for IOC
int period = 7; //possible key lengths
for (int i = 1; i < period + 1; i++) {
Util util = new Util();
System.out.println("Period = " + i);
String sequences[] = new String[i]; //broken up strings
for (int a = 0; a < sequences.length; a++) {
sequences[a] = "";
}
int sequenceCounter = 0;
for (int j = 0; j < ciphertext.length(); j++) {
sequences[sequenceCounter] = sequences[sequenceCounter] + ciphertext.charAt(j);
sequenceCounter++;
if (sequenceCounter == sequences.length) {
sequenceCounter = 0;
}
}
double[] indexOfCoincidences;
indexOfCoincidences = new double[i];
double sumOfIndexOfCoincidences = 0.0;
for (int k = 0; k < indexOfCoincidences.length; k++) {
//System.out.println("Sequence" + k + " - " + sequences[k]);
indexOfCoincidences[k] = util.calculateIOC(sequences[k]);
System.out.println("Sequence 0 - " + sequences[0]);
System.out.println("IOC of sequence " + k + " - " + indexOfCoincidences[k]);
sumOfIndexOfCoincidences = sumOfIndexOfCoincidences + indexOfCoincidences[k];
}
double averageIndexOfCoincidence = sumOfIndexOfCoincidences/indexOfCoincidences.length;
//System.out.println(indexOfCoincidences.length);
System.out.println("IOC " + indexOfCoincidences.length + " = " + averageIndexOfCoincidence);
}
这是输出(我已经强调了这些问题):
Period = 1
Sequence 0 - vptnvffuntshtarptymjwzirappljmhhqvsubwlzzygvtyitarptyiougxiuydtgzhhvvmum
shwkzgstfmekvmpkswdgbilvjljmglmjfqwioiivknulvvfemioiemojtywdsajtwmtcgluy
sdsumfbieugmvalvxkjduetukatymvkqzhvqvgvptytjwwldyeevquhlulwpkt
IOC of sequence 0 - 0.044944352356144926
IOC 1 = 0.044944352356144926
Period = 2
ssmbegvlxjutktmkzvvvttwlyeqhuwk <- Section of output missing
IOC of sequence 0 - 0.04492670854749667
ssmbegvlxjutktmkzvvvttwlyeqhuwk <- Section of output missing
IOC of sequence 1 - 0.046640015229392734
IOC 2 = 0.0457833618884447
Period = 3
hztemsgllgjwiklfiejwawcu <- Section of output missing
sfemlkuutvzqvywdeuup <- Section of output missing
IOC of sequence 0 - 0.036435469710272166
hztemsgllgjwiklfiejwawcu <- Section of output missing
sfemlkuutvzqvywdeuup <- Section of output missing
IOC of sequence 1 - 0.045609548167092936
hztemsgllgjwiklfiejwawcu <- Section of output missing
sfemlkuutvzqvywdeuup <- Section of output missing
IOC of sequence 2 - 0.04901960784313726
IOC 3 = 0.04368820857350079
Period = 4
wsepdljmwiufoowjtusmevxukmzvtwyquk <- Section of output missing
IOC of sequence 0 - 0.04072398190045249
wsepdljmwiufoowjtusmevxukmzvtwyquk <- Section of output missing
IOC of sequence 1 - 0.03846153846153847
wsepdljmwiufoowjtusmevxukmzvtwyquk <- Section of output missing
IOC of sequence 2 - 0.04862745098039216
wsepdljmwiufoowjtusmevxukmzvtwyquk <- Section of output missing
IOC of sequence 3 - 0.05568627450980392
IOC 4 = 0.04587481146304676
Period = 5
Sequence 0 - vfspwphuzypuyhuhsksijjonfitatysivktyzgtdql
IOC of sequence 0 - 0.04065040650406503
Sequence 0 - vfspwphuzypuyhuhsksijjonfitatysivktyzgtdql
IOC of sequence 1 - 0.04146341463414635
Sequence 0 - vfspwphuzypuyhuhsksijjonfitatysivktyzgtdql
IOC of sequence 2 - 0.048717948717948725
Sequence 0 - vfspwphuzypuyhuhsksijjonfitatysivktyzgtdql
IOC of sequence 3 - 0.0451219512195122
Sequence 0 - vfspwphuzypuyhuhsksijjonfitatysivktyzgtdql
IOC of sequence 4 - 0.04181184668989547
IOC 5 = 0.04355311355311356
Period = 6
zeslgwkfewwuselutzvweu
IOC of sequence 0 - 0.0427807486631016
zeslgwkfewwuselutzvweu
IOC of sequence 1 - 0.04991087344028521
zeslgwkfewwuselutzvweu
IOC of sequence 2 - 0.058823529411764705
zeslgwkfewwuselutzvweu
IOC of sequence 3 - 0.030303030303030297
zeslgwkfewwuselutzvweu
IOC of sequence 4 - 0.052100840336134456
zeslgwkfewwuselutzvweu
IOC of sequence 5 - 0.04369747899159665
IOC 6 = 0.04626941685765216
Period = 7
Sequence 0 - vurzjugrggukewjjivedt
bauyvyyl
IOC of sequence 0 - 0.04926108374384236
Sequence 0 - vurzjugrggukewjjivedt
bauyvyyl
IOC of sequence 1 - 0.0367816091954023
Sequence 0 - vurzjugrggukewjjivedt
bauyvyyl
IOC of sequence 2 - 0.07142857142857142
Sequence 0 - vurzjugrggukewjjivedt
bauyvyyl
IOC of sequence 3 - 0.04679802955665024
Sequence 0 - vurzjugrggukewjjivedt
bauyvyyl
IOC of sequence 4 - 0.06206896551724138
Sequence 0 - vurzjugrggukewjjivedt
bauyvyyl
IOC of sequence 5 - 0.041379310344827586
Sequence 0 - vurzjugrggukewjjivedt
bauyvyyl
IOC of sequence 6 - 0.059113300492610835
IOC 7 = 0.052404410039878016
解决方案
我想到了!如果将来有人遇到此问题,请确保您正在使用的文件中的文本都在一行上。
推荐阅读
- csv - 如何在 elixir phoenix 框架中制作导出 csv 控制器?
- amazon-cognito - 用于管理 AWS Cognito 用户配置文件的现成 UI?
- java - Jersey 2.x JSP 页面重定向
- javascript - 使用 Axios 进行 Amazon S3 远程文件上传
- javascript - JS更改值后验证textarea
- python - 将 C 或 numpy 数组转换为具有最少副本数的 Tkinter PhotoImage
- php - 如何在php中回显下拉列表的选定值?
- python - 如何使多个if语句在python中运行得更快
- recursion - ocaml 中的递归函数和模式匹配
- c++ - C++:std::ofstream 方法 open() 在第二次迭代时擦除打开的 ifstream 文件