zoukankan      html  css  js  c++  java
  • 结对开发二

    一.实验要求:

    在上次实验的基础上,把数组改为二维数组,然后实现最大子数组结果的输出,相比较而言,实验更加的困难,所以我和小伙伴进行了进一步的合作。

    实验思路:

    二、实验思路

        由于我们的能力有限,所以我们就设计了一个32列的二维数组。

        现在以一个例子来说明一下我们的思想:

        例如:输入的二维数组是 -1  2   

                                        3  4

                                       -5  9

        (1)首先计算出第一行中有关-1的所有的子数组,然后计算出有关2的子数组,同样的道理可以计算第二行和第三行中的字数组。

        (2)把上面计算出来的有关行中的子数组放在一个  b[3][3]即为 -1  1  2  的数组中。

                                                                    3  7  4

                                                                   -5  4  9

        (3)再求b[3][3]中的子数组的最大值,这次应该是按列来求。首先计算第一列中的子数组中的最大的数,先计算-1,然后计算-1+3,然后计算-1+3+5,求出最大的来,再3+-5)和max比较大小,求出最大的,再(-5)和max比较大小。同理求第二、三列。即可得出最大的来。

    三、代码

    //制作人:信1201-2班 司新红  万彤
    #include <iostream.h>
    int main()
    {
        int a[3][2];//定义一个3*2的二维数组
        int max;
        int s;//求和
        int count;
        int b[3][3];
        cout<<"请输入二维数组(3*2)中的元素:"<<endl;
        for(int i=0;i<3;i++)
        {
            for(int j=0;j<2;j++)
            {
                cin>>a[i][j];
            }
        }
        for(i=0;i<3;i++)
        {
            count=0;
            for(int j=0;j<2;j++)
            {
                s=0;
                for(int l=0;l<2-j;l++)
                {
                    s=s+a[i][j+l];
                    b[i][count+l]=s;
                }
                count=count+2-j;
            }
        }
        //求最大数
        max=b[0][0];
        for(int j=0;j<3;j++)
        {
            for(i=0;i<3;i++)
            {
                s=0;
                for(int r=0;r<3-i;r++)
                {
                    s=s+b[r+i][j];
                    if(max<s)
                    {
                        max=s;
                    }
                }
            }
        }
        cout<<"最大子数组为:"<<max<<endl;
        cout<<endl;
        return 0;
    }

    四、运行结果

    五、心得体会

        这次的实验更加确认了老师的训练模式,越来越难,有点困难了。之前的思路准备了好久,迟迟没有动手,后面编程也是比较纠结,因为不会的东西还是蛮多,以后要加油了,下面是我和我的小伙伴。(承认自己有点坑队友,索瑞啦,我改)

  • 相关阅读:
    GTK+(基于DirectFB)的字体处理
    控制的字体属性
    [linux手机平台]让应用程序单实例运行
    serif vs sans serif
    关于做事的几点感想
    推荐一部环保电影难以忽视的真相
    短信应用设计备忘录
    手机搜索设计备忘录
    一点概念,
    毕业了,怎么策划的让有意思点呢,
  • 原文地址:https://www.cnblogs.com/wantong/p/4369273.html
Copyright © 2011-2022 走看看