【请问这个怎么打印】

握草 握草 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
package ass002;

import java.util.Scanner;

public class Ass002 {
private static Scanner sca;

public static void main(String[] args) {
System.out.print("Please enter two integers (1~9999): ");
sca = new Scanner(System.in);

int a = sca.nextInt();
int b = sca.nextInt();

String str1 = String.valueOf(a);
String str2 = String.valueOf(b);

char[] aArr = str1.toCharArray();
char[] bArr = str2.toCharArray();

int[][][] results = new int[str2.length()][str1.length()][2];
int[] x = new int[str1.length()];
int[] y = new int[str2.length()];

for (int i = 0; i < str2.length(); ++i) {
for (int j = 0; j < str1.length(); ++j) {
int tmp1 = Integer.valueOf(aArr[j]) - 48;
int tmp2 = Integer.valueOf(bArr[i]) - 48;
int tmp = tmp1 * tmp2;
if (tmp < 10) {
results[i][j][0] = 0;
results[i][j][1] = tmp;
} else {
results[i][j][0] = tmp / 10;
results[i][j][1] = tmp % 10;
}

}
}



System.out.print("+");
for (int k = 1; k <= str1.length(); ++k) {
System.out.print("-----");
}
System.out.print("+");

System.out.println();
System.out.print("|");
System.out.print(" ");
for (int i = 0; i < str1.length(); ++i) {
System.out.print(str1.charAt(i));
System.out.print(" ");
}
System.out.print("|");
for (int i = 0; i < str2.length(); ++i) {
// #001
System.out.println();
System.out.print("|");
System.out.print(" ");
System.out.print("+");
for (int j = 0; j < str1.length(); ++j) {
System.out.print("---+");
}
System.out.print(" ");
System.out.print("|");

// #002
System.out.println();
System.out.print("|");
if(i==0) {
System.out.print(" ");
}
else {
System.out.print("/");
}
System.out.print("|");
for (int j = 0; j < str1.length(); ++j) {
System.out.print(results[i][j][0]);
System.out.print(" ");
System.out.print("/");
System.out.print("|");
}
System.out.print(" ");
System.out.print("|");
// #003
System.out.println();
System.out.print("|");
System.out.print(" ");
System.out.print("|");
for (int j = 0; j < str1.length(); ++j) {
System.out.print(" ");
System.out.print("/");
System.out.print(" ");
System.out.print("|");
}
System.out.print(bArr[0]);
System.out.print("|");
// #004
System.out.println();
System.out.print("|");
System.out.print(" ");
System.out.print("|");
for (int j = 0; j < str1.length(); ++j) {
System.out.print("/");
System.out.print(" ");
System.out.print(results[i][j][1]);
System.out.print("|");
}
System.out.print(" ");
System.out.print("|");
}
// #009
System.out.println();
System.out.print("|");
System.out.print(" ");
System.out.print("+");
for (int j = 0; j < str1.length(); ++j) {
System.out.print("---+");
}
System.out.print(" ");
System.out.print("|");

System.out.println();
System.out.print("|");
for(int j=0; j<str1.length();++j) {
System.out.print("/");
System.out.print(" ");
System.out.print("3");
System.out.print(" ");
}
System.out.print(" ");
System.out.print("|");
System.out.println();
System.out.print("+");
for (int k = 1; k <= str1.length(); ++k) {
System.out.print("-----");
}
System.out.print("+");
}
}
[/code]

这是我的运行结果,还没有完成。。

以上的代码就是打印出来一个表格的形式,难点有二:
1.斜着的/杠杠的延伸处的数字是同斜行的和(3是我加上去的别管他!),如第一个数就是1,第二个数是1+5+2=8;以此类推。问题是这个斜着的和是怎么打印出来的,或者说是怎么和原来的三维数组的下标能扯上关系的??
2.这个
for (int k = 1; k <= str1.length(); ++k) {
System.out.print("-----");
}

不用说也能看出来是用来防止a(第一个输入的数,横着的那个)的位数过大二造成的“+----+”不够长的尴尬。。但是对于横行可以,对于纵行我就不知道该怎么办了,我是把总行控制行数的写在for循环外面,就感觉这个会有影响,如果纵行>2的话表格的格式就打乱了(横行没问题关键是纵行不知道怎么才能使“ | ”单位像“+----+”单位一样的随行数的变化而变化。。)

一共两个问题,有谁能至少回答出一个问题的话,本人感激不尽!
...全文

相关推荐

非常好用的web打印插件 , 可以热敏打印

热敏打印技术广泛应用于零售、餐饮、物流等行业的收银小票或标签打印,具有快速、无墨、成本低的优点。这个插件能够很好地支持热敏打印机,使得用户在网页端就能完成各种热敏打印任务,极大地提高了工作效率。

叶麦清香

LODOP打印控件进行批量打印

3.批量打印不同内容,页数很少,不需要预览,直接打印,可一个任务分页,也可一页分多任务,均可。4.批量打印大批量不同内容,内容多,页数很多,建议分页分任务,分组打印,提高打印性能。打印上千上万个任务,任务太多,对操作系统负担大,可酌情分页,分页分任务进行折中处理。(1)通过在一个任务中分页,循环添加页数,每页添加不同内容,一个任务中打印多页。2.批量打印不同内容,页数很少,每页内容也很少,需要预览,可在一个任务中分多页。(3)多任务与多页相结合,既分页又分任务,循环多任务,每个任务中循环多页。

Chihirozy

调用web前端打印功能,对页面进行打印

本文主要介绍如何在Web前端实现打印功能,包括整页打印、区域打印和选择打印三种方法。提供了一段JavaScript代码示例,但需要注意格式控制的问题,建议使用专业插件或PDF打印。在Web开发中

Crazy bug King

斑马打印机打印中文

在日常使用中,可能会遇到斑马打印机无法正常打印中文字符的问题,这通常是由于打印机缺少中文字符集或者软件设置不正确导致的。本教程将详细介绍如何解决斑马打印机打印中文的难题,帮助你充分利用打印机的功能。

山塘小鱼儿

Android蓝牙打印二维码打印外卖单打印

在Android平台上实现蓝牙打印功能,主要是为了满足移动设备与各种硬件设备,如小票打印机、条形码或二维码打印机的无线通信需求。

小土豆YUC
评论 3
收藏 已收藏
分享
返回顶部
握草
Java SE 62,620 成员 307,251 内容