(Java程序题)输入一个5*5的矩阵(图片), 矩阵边的像素点值不变, 我的代码在下面,结果运行不行?

其他像素点的值取之前矩阵本身位置+上下左右像素点值的平均样例输入:5454545454545454545454545样例输出:5454544.24.84.2454.84.... 其他像素点的值取之前矩阵本身位置+上下左右像素点值的平均
样例输入:
5 4 5 4 5
4 5 4 5 4
5 4 5 4 5
4 5 4 5 4
5 4 5 4 5
样例输出:
5 4 5 4 5
4 4.2 4.8 4.2 4
5 4.8 4.2 4.8 5
4 4.2 4.8 4.2 4
5 4 5 4 5

我的代码如下:
public class MatrixTest {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("输入你需要的阶层数:");
int n=scan.nextInt();//定义需要的阶层数n
int[][] num = new int[n][n];//定义一个n*n的数组array
System.out.println("输入数组的各个元素");
for (int i = 0;i<n;i++){
for (int j = 0;j<n;j++){
num[i][j] = scan.nextInt();
}
}
System.out.println("你输入的数组为:");
for (int i = 0;i<n;i++){
for (int j = 0;j<n;j++){
if (!((i==0 || i == n-1) || (j == 0 || j == n-1) )){
num[i][j] = (num[i][j] + num[i][j-1] + num[i][j+1] + num[i-1][j] + num[i+1][j]) / 5;
}
System.out.print(num[i][j]+"\t");
if (j == n-1){
System.out.println();
}
}
}
}
}
展开
 我来答
sarven1986
2020-05-14 · TA获得超过110个赞
知道小有建树答主
回答量:268
采纳率:87%
帮助的人:34万
展开全部

首先你判断定位的条件错了,还有就是你想输出4.2 4.8 这样的小数,你用int类型绝对会都输出4

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式