Java 求矩阵中给定值的所有平方子矩阵之和

Java 求矩阵中给定值的所有平方子矩阵之和,java,matrix,Java,Matrix,我必须找到矩阵中的所有子矩阵,然后找到它们的和。但我的代码似乎出了问题,因为用所有子矩阵和生成的矩阵都不完整。示例:生成矩阵6X8时,子矩阵3X3在第一行至少应为6,但仅显示4。这是我的代码: private void makeSubsquare() { int m,ver,sum=0,p,start; int n=r1; if(k>n) { System.out.println("Sorry"); } else

我必须找到矩阵中的所有子矩阵,然后找到它们的和。但我的代码似乎出了问题,因为用所有子矩阵和生成的矩阵都不完整。示例:生成矩阵6X8时,子矩阵3X3在第一行至少应为6,但仅显示4。这是我的代码:

    private void makeSubsquare() {
    int m,ver,sum=0,p,start;
    int n=r1;
    if(k>n)
    {
        System.out.println("Sorry");
    }
    else
    {
        for(int i=0;i<=n-k;i++)
        {
            m=i; start=0; p=0; ver=0; sum=0; int j=0;
            while(j<n)
            {
                sum = sum + a[m][j];
                j++;
                p++;
                if(p==k)
                {   m++;
                    p=0;
                    ver++;
                    j=start;        
                }
                if((ver==k)&&(j<n))
                {
                    p=0;
                    m=i;
                    start++;
                    ver=0;
                    j=start;

                    System.out.print(sum + " ");
                    sum = 0;        
                }       
            }
            System.out.println();
        }
    }
private void makeSubsquare(){
int m,ver,sum=0,p,start;
int n=r1;
如果(k>n)
{
System.out.println(“对不起”);
}
其他的
{

对于(int i=0;i r1和k如何获取它们的值?它们从控制台获取它们的值。r1定义行长度,k定义子矩阵,如k=3,生成矩阵中的所有子矩阵3x3结果是一列短的子矩阵!:/我无法理解这里的问题陈述。矩阵和子矩阵是什么意思?你能理解吗你举个例子吗?我设法解决了这个问题。显然,我是在使用row变量来打印列,这就是为什么它在控制台中显示得更短。但是非常感谢!r1和k是如何获得它们的值的?它们是从控制台获得值的。r1定义行长度,k定义子矩阵,如k=3,生成所有内部的子矩阵3x3矩阵结果是一列短的子矩阵!:/我无法理解这里的问题陈述。你说的矩阵和子矩阵是什么意思?你能举个例子吗?我设法解决了它。显然,我是在使用row变量打印列,这就是为什么它在控制台中显示得更短。不过,非常感谢!