gpt4 book ai didi

java - 我有矩阵,我需要总结指定行和列周围的所有值,包括提供的位置。然后输出平均值

转载 作者:行者123 更新时间:2023-12-01 23:11:15 25 4
gpt4 key购买 nike

我有一个程序来汇总指定位置周围的所有值,但我无法确定如何确定和输出这些值的平均值。

要使用的矩阵

1   2   3  4   5

15 7 8 9 71

6 7 11 2 5

6 7 8 9 14

5 4 3 2 33

数据文件

3

2 2

0 0

4 3

类别

class Average
{
public static void main (String[] args) throws IOException
{
Scanner f = new Scanner( new File( "pr20.dat" ) );
int times = f.nextInt();
f.nextLine();
for(int x=0;x<times;x++)
{
int [][] matrix ={ {1,2,3,4,5},
{15,7,8,9,71},
{6,7,11,2,5},
{6,7,8,9,14},
{5,4,3,2,33} };
int r = f.nextInt();
int c = f.nextInt();
int sum = 0;
if(r-1<0&&c-1<0)//top left corner WORKS
{
for(int rows=r;rows<r+2;rows++)
for(int col=c;col<c+2;col++)
sum+=matrix[rows][col];
out.println(sum);
}
else if(r+2>5&&c+2>5)//bottom right corner WORKS
{
for(int rows=r-1;rows<=r;rows++)
for(int col=c-1;col<=c;col++)
sum+=matrix[rows][col];
out.println(sum);

}
else if(r+2>5&&c-1<0)//bottom left corner WORKS
{
for(int rows=r-1;rows<=r;rows++)
for(int col=c;col<c+2;col++)
sum+=matrix[rows][col];
out.println(sum);
}
else if(r+2>5)//along the bottom WORKS
{
for(int rows=r-1;rows<=r;rows++)
for(int col=c-1;col<c+2;col++)
sum+=matrix[rows][col];
out.println(sum);
}
else if(c-1<0)//along the left WORKS
{
for(int rows=r-1;rows<r+2;rows++)
for(int col=c;col<c+2;col++)
sum+=matrix[rows][col];
out.println(sum);
}
else if(c+2>5&&r-1<0)//top right corner WORKS
{
for(int rows=r;rows<r+2;rows++)
for(int col=c-1;col<=c;col++)
sum+=matrix[rows][col];
out.println(sum);
}
else if(r-1<0)//along the top WORKS
{
for(int rows=r;rows<r+2;rows++)
for(int col=c-1;col<c+2;col++)
sum+=matrix[rows][col];
out.println(sum);
}
else if(c+2>5)//along the right WORKS
{
for(int rows=r-1;rows<r+2;rows++)
for(int col=c-1;col<=c;col++)
sum+=matrix[rows][col];
out.println(sum);
}
else //no boundaries WORKS
{
for(int rows=r-1;rows<r+2;rows++)
for(int col=c-1;col<c+2;col++)
sum+=matrix[rows][col];
out.println(sum);
}
out.println();
}
}
}

最佳答案

如果您正在寻找平均值:

对它们进行求和,然后除以求和的元素数量。

关于java - 我有矩阵,我需要总结指定行和列周围的所有值,包括提供的位置。然后输出平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21942733/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com