精华内容
下载资源
问答
  • /// 根据两点求直线以及直线垂直平分线的k,b值, /// </summary> /// <param name="x1">传递值为已知坐标点x1,返回值为垂直平分线的x1</param> /// <param name="x2">传递值为已知...
    		/// <summary>
            /// 已知两点(线段),求互相垂直平分两点(线段)。
            /// </summary>
            /// <param name="x1">传递值为已知坐标点x1,返回值为垂直平分线的x1</param>
            /// <param name="x2">传递值为已知坐标点x2,返回值为垂直平分线的x2</param>
            /// <param name="y1">传递值为已知坐标点y1,返回值为垂直平分线的y1</param>
            /// <param name="y2">传递值为已知坐标点y2,返回值为垂直平分线的y2</param>
            /// <returns>成功返回0;失败返回非0</returns>
            private static int Calculate(ref float x1, ref float x2, ref float y1, ref float y2)
            {
                float k1 = 1; //已知坐标点直线的斜率k值
                float b1 = 1; //已知坐标点直线的纵截距b值
                float k2 = 1; //垂直平分线的斜率k值
                float b2 = 1; //垂直平分线的纵截距b值
    
                try
                {
                    //特殊线1
                    if (x1 == x2)
                    {
                        float center = (y1 + y2) / 2;//中心点
                        float dist = Math.Abs(y1 - center);//端点到中心点的距离值
                        x1 = center - dist;
                        x2 = center + dist;
                        y2 = y1 = (x1 + x2) / 2;
                        return 0;
                    }
    
                    //特殊线2
                    if (y1 == y2)
                    {
                        float center = (x1 + x2) / 2;//中心点
                        float dist = Math.Abs(x1 - center);//端点到中心点的距离值
                        x1 = x2 = (y1 + y2) / 2;
                        y1 = center - dist;
                        y2 = center + dist;
                        return 0;
                    }
    
                    #region [求已知曲线的k和b]
                    float temp = 0;
                    float coefficient; //系数值
                    if (x1 >= x2)
                    {
                        coefficient = (float)Math.Round((x1 / x2), 2);
                        temp = y2 * coefficient; //将对应的函数乘以系数
                        b1 = (float)Math.Round(((temp - y1) / (coefficient - 1)), 2); //求出b值
                        k1 = (float)Math.Round(((y1 - b1) / x1), 2); //求出k值
                    }
                    else
                    {
                        coefficient = x2 / x1;
                        temp = y1 * coefficient;
                        b1 = (float)Math.Round(((temp - y2) / (coefficient - 1)), 2); //求出b值
                        k1 = (float)Math.Round(((y2 - b1) / x2), 2); //求出k值
                    }
                    #endregion [求已知曲线的k和b]
    
                    #region [垂直平分线的k,b以及起始点、终止点]
                    {
                        k2 = -1 / k1; //垂直平分线的斜率k值
                        b2 = (x1 + x2) / (2 * k1) + (y1 + y2) / 2; //垂直平分线的纵截距b值
                        double cenX = (x1 + x2) / 2;//交点x
                        double cenY = (y1 + y2) / 2;//交点y
                        double dist = Math.Sqrt(Math.Abs(x1 - x2) * Math.Abs(x1 - x2) + Math.Abs(y1 - y2) * Math.Abs(y1 - y2)) / 2;//每个点距离交点(中心点)距离相同
                        double douAngle = Math.Atan(k2);//垂直平分线和X轴的夹角
    
                        //计算起始点和终止点
                        x1 = (float)(cenX + dist * Math.Cos(douAngle));
                        x2 = (float)(cenX - dist * Math.Cos(douAngle));
                        y1 = (float)(cenY + dist * Math.Sin(douAngle));
                        y2 = (float)(cenY - dist * Math.Sin(douAngle));
                    }
                    #endregion
    
                    return 0;
                }
                catch
                {
                    return -1;
                }
            }
    
    展开全文
  • 捕鱼分鱼、出售鱼、平分七筐鱼

    千次阅读 2015-05-05 21:46:07
    他们互相承诺过这次一定要平分的,可是他们没有东西来称量,却又不像读者一样会编程…… 你能帮帮他们吗? 显然每个人应该分到7个箩筐,共有3.5筐鱼。采用一个3*3的数组a来表示三个人分到的东西。其中每个人对应...

    1.有5个人大半夜地去捕鱼,到第二天响午才陆续醒来。第一个醒来的人将鱼分为5份,然后把多余的一条丢了……拿走了自己的一份。然后第二个人也将鱼分为5分,居然也把多余的一条给丢了……当然也不忘自己的一份。同样的,后面三个人也采用了相同的操作。那么他们至少捕了多少条鱼呢?

    令鱼的总数为X,则(X - 1)可被5整除,那么拿走自己的一份后剩下的鱼为(X - 1)* 4 / 5 。

    下面求出了10个最小的结果,第一个就是至少捕的鱼数了……

    #include<stdio.h>
    
    int main()
    {
        int n,i,x,flag=1,count=1;
        for(n=6;flag&&(count<10);n++)
        {
            for(x=n,i=1&&flag;i<=5;i++)
                if((x-1)%5==0)
                    x=4*(x-1)/5;
                else
                    flag=0;
    
            if(flag)
            {
                printf("Total number of fish catched=%d\n",n);
                count++;
            }
            else
                flag=1;
        }
        printf("Total number of fish catched=%d\n",n);
    }

    将for循环改成这样就会更加有效率……

    for(n=6;flag&&(count<10);n+=5)

    2.咦?这不是之前那些人丢的鱼么?地上到处都是……

    路人甲捡了一桶……他是个有趣的人,他决定分5次出售。第一次出售全部的二分之一加上二分之一条,第二次出售余下的三分之一加上三分之一条,第三次出售余下的四分之一加上四分之一条,第四次出售余下的五分之一加上五分之一条,最后卖出余下的11条…… 嘿,这家伙到底捡了多少条鱼呀?

    (题目都源自网络,我将其归并到一起,希望更加有乐趣……)

    假设第J次鱼的总数为X,则第J次留下的条数为:

    X - (x + 1)/(J + 1)

    这个式子怎么来的呢?

    第J次先出售全部的(J+1)分之一,再卖掉(J+1)分之一条,将这个加一起,最后被X减掉即可。

    #include<stdio.h>
    #include<stdbool.h>
    
    int main()
    {
        // i为鱼的初始条数,j为出售次数,x为剩余条数,n控制循环结束
        int i,j,x;
        bool mark=true;
        for(i=23;n;i+=2)
        {
            for(j=1,x=i;j<=4&&x>=11;j++)
                if((x+1)%(j+1)==0) // 执行4次出售操作
                    x-=(x+1)/(j+1);
                else
                {
                    x=0; // 剩余条数为0,则开始下一次循环
                    break;
                }
            if(j==5&&x==11) // 若第四次余下11条则结束
            {
                printf("There are %d fishes at first.\n",i);
                mark=false; // 循环结束
            }
        }
    }

    3.还记得前面的5个渔夫吗?最后拿鱼的三个人发现了自己明显比一开始拿的人多,于是它们就离开了船队,自己去打鱼了…… 他们随船带了21只箩筐,当返航时,发现有7筐装满了鱼、7筐装了半筐鱼、7筐是空的。他们互相承诺过这次一定要平分的,可是他们没有东西来称量,却又不像读者一样会编程…… 你能帮帮他们吗?

    显然每个人应该分到7个箩筐,共有3.5筐鱼。采用一个3*3的数组a来表示三个人分到的东西。其中每个人对应数组a的一行,数组的第0列放分到的鱼的整筐数,数组的第1列放分到的半筐数,数组的第2列放分到的空筐数。由题目可以推出:
    。数组的每行或每列的元素之和都为7;
    。对数组的行来说,满筐数加半筐数=3.5;
    。每个人所得的满筐数不能超过3筐;
    。每个人都必须至少有1 个半筐,且半筐数一定为奇数
    对于找到的某种分鱼方案,三个人谁拿哪一份都是相同的,为了避免出现重复的分配方案,可以规定:第二个人的满筐数等于第一个人的满筐数;第二个人的半筐数大于等于第一个人的半筐数。

    #include<stdio.h>
    
    int a[3][3],count;
    
    int main()
    {
        // i,j分别为数组的行和列,m为半筐,n为整筐,flag为判断循环是否结束
        int i,j,k,m,n,flag;
        printf("It exists possible distribtion plans:\n");
        for(i=0;i<=3;i++) /*试探第一个人满筐a[0][0]的值,满筐数不能>3*/
        {
            a[0][0]=i;
            for(j=i;j<=7-i&&j<=3;j++) /*试探第二个人满筐a[1][0]的值,满筐数不能>3*/
            {
                a[1][0]=j;
                if((a[2][0]=7-j-a[0][0])>3)
                    continue; /*第三个人满筐数不能>3*/
                if(a[2][0]<a[1][0])
                break; /*要求后一个人分的满筐数>=前一个人,以排除重复情况*/
                for(k=1;k<=5;k+=2) /*试探半筐a[0][1]的值,半筐数为奇数*/
                {
                    a[0][1]=k;
                    for(m=1;m<7-k;m+=2) /*试探 半筐a[1][1]的值,半筐数为奇数*/
                    {
                        a[1][1]=m;
                        a[2][1]=7-k-m;
                        for(flag=1,n=0;flag&&n<3;n++)
                        /*判断每个人分到的鱼是 3.5筐,flag为满足题意的标记变量*/
                            if(a[n][0]+a[n][1]<7&&a[n][0]*2+a[n][1]==7)
                                a[n][2]=7-a[n][0]-a[n][1]; /*计算应得到的空筐数量*/
                            else flag=0; /*不符合题意则置标记为0*/
                        if(flag)
                        {
                            printf("No.%d Full basket Semi–basket Empty\n",++count);
                            for(n=0;n<3;n++)
                            printf(" fisher %c: %d %d %d\n",'A'+n,a[n][0],a[n][1],a[n][2]);
                        }
                    }
                }
            }
        }
    }
    

    这的场景的核心在于他们不必去调整鱼筐中的鱼,只需要对鱼筐本身操作即可……挺方便的。

    于是,这三个渔夫就像所有的小学课文中所描述的那样快乐地回家了……


    欢迎大家点击左上角的“关注”或右上角的“收藏”方便以后阅读。


    为使本文得到斧正和提问,转载请注明出处:
    http://blog.csdn.net/nomasp

    展开全文
  • 本文是关于项目管理中,软件项目开发团队组员跨项目组兼职案例分析。

            按照现代项目管理的观点,项目团队是指“项目的中心管理小组,由一群人集合而成并被看作是一个组,他们共同承担项目目标的责任,兼职或者全职地向项目经理进行汇报”。

            项目团队的特征有:

            (1)项目团队具有一定的目的

            项目团队的使命就是完成某项特定的任务,实现项目的既定目标,满足客户的需求。此外项目利益相关者的需求具有多样性的特征,因此项目团队的目标也具有多元性。

            (2)项目团队是临时组织

            项目团队有明确的生命周期,随着项目的产生而产生,项目任务的完成而结束,即可解散。它是一种临时性的组织。

            (3)项目经理是项目团队的领导

            (4)项目团队强调合作精神

            (5)项目团队成员的增减具有灵活性

            (6)项目团队建设是项目成功的组织保障

            软件项目开发团队通常构成有:需求人员、设计人员、编码人员、测试人员。


            案例一:十多年前,大概是2002年时,我曾经参加"供电营业数据集中系统"(以下简称YX2000)项目,做为重点项目,公司抽调各个部门人员,与北京某公司联合组建项目组集中开发。我负责线损子系统开发,同时也是公司软件开发部经理,并负责IC卡表综合管理信息系统项目(注:收尾阶段)。但是,在此YX2000项目组内,软件开发部人员不归我管。

            按此项目制管理模式,其他部门经理,也有副总,对此有些意见,也有骨干人员不配合情况。

            而我还是尽职尽责,小心翼翼的完成我份内工作,不便多说一句话。同时,我还要兼顾我所负责的项目,以及跟踪部门所属的其他项目,例如电能表全生命周期管理系统项目。

            经过三个多月半封闭式开发,项目暂停了。转年,项目转到我所在部门,并于当年夏天上线。

            在此项目开发过程中,我就是典型兼职开发人员,说实在的真的比较难做。在人力资源管理X理论和Y理论中,我属于典型Y理论情况。因此,项目开发过程还是算顺利的,组员虽然有怨言,但合作精神还是值得称赞的。

            成功的经验在于:

            (1)兼职人员周期短(三个多月);

            (2)总经理做的工作比较到位,与参与项目的兼职人员单独谈话,要求以重点项目为优先,其他兼职任务协商处理,并禁止带有职能身份参与项目;

            (3)兼职人员多是公司骨干,多属于Y理论类型人员,工作积极主动,有自我调节和自我监督能力。


            问题也存在,我所理解到的地方有:

            (1)由于是骨干人员兼职情况多,势必影响工作的投入,设计开发效果、质量与预期有差距,客观上是人力资源不足;

            (2)由于系统建设采用全新技术平台,中间件为Bea Tuxdeo和Weblogic,开发语言以C++为主,与兼职人员技术方向不太一致,技术掌握达不到预期;

            (3)由于必须依赖外部北京某公司,内部兼职人员人盯人传承技术、指导业务,影响进度。


            案例二:是非软件行业的团队案例。在某会计师事务所中,有这样的团队,黑龙江省首家新三板上市公司就是她们做审计的,现已经做成两家,也是她们所里仅有两家,团队中组员兼职不同审计项目也是家常便饭,其团队及兼职特点如下:

            (1)团队相对稳定;

            (2)同时承接多个审计项目,其审计底稿、合并报表,有自己的成型的方法和技术;

            (3)组员兼职方式是分较长时间片专注某个审计项目,而且是成规模人员去做,有较强的连续性、持续性。

            这个非软件行业的案例,能否启示我们,我们应该有个稳定的开发团队,以团队去承接项目,承接多个项目,而且我们可以专注某个方向和某个平台技术呢?


            案例三:是我当前刚刚组建1个月的项目开发团队,目前兼职人员比例为67%,很棘手,工作推进非常费劲,我必须投入较大的精力解决兼职人员过多所带来的问题,什么问题?

            (1)技术平台、架构不同,无法深入投入项目工作中;

            (2)团队不稳定,目标不明确,为什么这么说?

            “兼职人员用空闲时间参加你这个项目”,而不是加入项目组,换句话说将违背共同目标的原则;

            (3)兼职人员投入不可控。

            针对上述问题,解决方案如下:

            (1)改变计划,明天就开始Cordys平台技术培训,先形成共同的技术氛围;

            (2)加快采购合作伙伴人员,降低兼职人员比例;

            (3)明天就开始估算、计划兼职人员投入工作量和投入时间计划,并在下周工作计划中体现。

            要知道问题解决的情况,请关注后续的博客。

            由于时间仓促,不足之处及笔误,欢迎反馈。


    参考:

    智库.百科 项目团队



    展开全文
  • 行四边形具有对边相等、对角相等、对角线互相平分等性质,解决某些几何题时,若能根据平行四边形的判定,巧妙地构造出平行四边形,就会化难为易、化繁为简,证明过程简捷。现举例说明。策略1:利用平行线构造平行...
  • 小组赛,每个小组有5支队伍,互相之间打单循环赛,胜一场3分,平一场1分,输一场不得分,小组前三名出线。平分抽签。问一个队最少拿多少分就有理论上的出线希望 解:首先假设某一队得分0分,那么证明这个队伍输了...
  • (4)平行四边形的对角线互相平分。(性质)几何语言:如图所示, (1)四边形ABCD是平行四边形 ABCD,ADBC(2)四边形ABCD是平行四边形 AB=CD,AD=BC(3)四边形ABCD是平行四边形 ABC=ADC, BAD=BCD(4)四边形ABCD...
  • 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 C-平分游戏链接:https://www.nowcoder.com/acm/contest/90/C来源:牛客网题目描述转眼间又过了一年,又有一届的师兄师姐要毕业了。有些师兄师姐就去了景驰科技实习...
  • 怎样证明平行

    2020-12-19 07:37:26
    定理和判定都可以求的根据定理来就是:两组对边分别平行根据判定来:a一组对边平行且相等b对角线互相平分c对角相等d两组对边分别相等 2 1,两组对边分别平行2,两组对边分别相等3,一组对边平行且相等4,对角线互相...
  •  用类似的方法,我们能证明一个更强的命题:对任意一个凸多边形,总能用两条互相垂直的直线把它的面积分成四等份。利用前面的结论,我们能找到一条直线l1,它把整个凸多边形分成上下相等的两份;类似地,我们能找到...
  • 初中三年数学几何公式、定理梳理,今天分享给大家,家长可以为孩子转发,让孩子的几何学习更方便些。1.过两点有且只有一条直线2.两点之间线段最短3....如果两条直线都和第三条直线平行,这两条直线也互相平行9....
  • 初二数学知识点归纳

    2021-06-27 06:13:20
    46平行四边形判定定理1 两组对角分别相等的四边形是平行四边形 47平行四边形判定定理2 两组对边分别相等的四边形是平行四边形 48平行四边形判定定理3 对角线互相平分的四边形是平行四边形 49平行四边形判定定理4 一...
  • ④平行四边形的对角线互相平分。 菱形:①一组邻边相等的平行四边形是菱形 ②领心的四条边相等,两条对角线互相垂直平分,每一组对角线平分一组对角。 ③判定条件:定义/对角线互相垂直的平行四边形/四条边都相等的...
  • ​→→→数学大师:shuxueds1一元一次方程△=b2-4ac当△>0时,一元二次方程有2个不相等的实数根;当△=0时,一元二次方程有2个相同的实数根;...④平行四边形的对角线互相平分。菱 形 ①一组邻边相等...
  • 初中三年数学几何公式、定理梳理,今天整理给大家,家长可以为孩子收藏,让孩子的几何学习更方便些。1.过两点有且只有一条直线2.两点之间线段最短3....如果两条直线都和第三条直线平行,这两条直线也互相平行9....
  • 53平行四边形性质定理2 平行四边形的对边相等 54推论 夹在两条平行线间的平行线段相等 55平行四边形性质定理3 平行四边形的对角线互相平分 56平行四边形判定定理1 两组对角分别相等的四边形是平行四边形 57平行...
  • 七年级所有知识点

    2021-01-15 20:43:46
    垂直平分线垂直平分的一定是线段,不能是射线或直线,这根据射线和直线可以无限延长有关,再看后面的,垂直平分线是一条直线,所以在画垂直平分线的时候,确定了2点后(关于画法,后面会讲)一定要把线段穿出2点。...
  • 初中数学知识点总结

    2020-12-19 15:34:55
    垂直平分线垂直平分的一定是线段,不能是射线或直线,这根据射线和直线可以无限延长有关,再看后面的,垂直平分线是一条直线,所以在画垂直平分线的时候,确定了2点后(关于画法,后面会讲)一定要把线段穿出2点。...
  • 本人新手小白,研一渣渣一名,信息与通信...这是我学习的第一个程序在matlab下可以运行,转载自百度经验,如有不妥之处请大家见谅,这是一个简单线性分类学习机(利用了平分最近点法)matlab实现https://jingyan....
  • 对角线互相平分4?AB.邻角互补5? 2.平行四边形的判定 DCOAB . 矩形的性质3. 1;具有平行四边形的所有通性?CDCD? ?ABCD因为四边形是矩形;四个角都是直角2?O3对角线相等?ABAB 是轴对称图形它有两条对称轴 (4) 矩形的判定...
  • TXT与EXCEL的互相转换

    2019-09-28 00:29:21
    我前段时间写了一个TXT与EXCEL为什么要互相转换的功能,可能有人会问,这样的功能有什么作用?是的,这小功能在软件开发上有很大的作用的。txt文本是没有格式的,但是excel文档是有格式的,将没有格式的东西转换为...
  • 垂直平分线垂直平分的一定是线段,不能是射线或直线,这根据射线和直线可以无限延长有关,再看后面的,垂直平分线是一条直线,所以在画垂直平分线的时候,确定了2点后,一定要把线段穿出2点。 垂直平分线定理: 性质...
  • 对角线互相平分的四边形是平行2.有三个角是直角的四边形是矩形四边形是菱形(九)正方形正方形的四个角都是直角,四条边都相等,正方形的两条对角线相等,(八)菱形1.一组邻边相等的平行四边形是菱形。2.四边都相等的...
  • 判定2-A层加餐答案.doc

    2020-04-22 20:49:33
    试说明PQ与MN互相平分 证明 四边形ABCD是平行四边形 AB=DC,ABCD MN分别是ABCD的中点 DN=CN=DC,AM=BM=AB DNBMDN=BM 四边形DMBN是平行四边形 PMNQ 同理PNMQ 四边形PNQM为平行四边形 PQ与MN互相平分 2如图在?...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,358
精华内容 943
关键字:

互相平分