| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1664 人关注过本帖
标题:菜虫有问题~~请高手帮忙
只看楼主 加入收藏
kd0376
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2007-12-7
结帖率:100%
收藏
 问题点数:0 回复次数:16 
菜虫有问题~~请高手帮忙
某公司使用某种原材料加工两种规格的产品,其中生产每件A产品消耗原材料56kg,生产每件B产品消耗原材料64kg。假设该公司现有800kg的原材料,编写程序计算A、B各生存多少件,剩余的原材料最少?

#include "stdio.h"
#include "conio.h"

void main()
{
    int x,y,s;
    for(x=1;x<14;x++)
    for(y=1;y<12;y++)
    {
        s=800-56*x-64*y;
        if(s>=0)
        printf("A=%d B=%d yuliang=%d \n",x,y,s);
     }
    getch();
}

如果用以上代码输出能把所有的解都输出,可是如何输出s的最小值呢?不能把if(s>=0)改为if(s=0)
搜索更多相关主题的帖子: 原材料 quot include 
2007-12-12 08:33
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
加几个中间变量就可以哦...
#include "stdio.h"
#include "conio.h"
void main()
{
    int x,y,s,a,b;
    int min=800;
    for(x=1;x<14;x++)
    for(y=1;y<12;y++)
    {
        s=800-56*x-64*y;
        if(s>=0)
            if(s<min)
            {min=s;
            a=x;b=y;}           
     }
    printf("A=%d B=%d yuliang=%d \n",a,b,min);
    getch();
}

2007-12-12 09:09
monomania
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2007-10-16
收藏
得分:0 
程序如下,
#include "stdio.h"
#include "conio.h"

int  main(void)
{
    int x,y,s,t;
     t=800;
    for(x=1;x<14;x++)
    for(y=1;y<12;y++)
    {
        s=800-56*x-64*y;
        if(s>=0)
       { printf("A=%d B=%d yuliang=%d \n",x,y,s);
            if(s<t)
                t=s;
           }
      
     }
   
     printf("the least materials is %d\n",t);
    getch();

return 0;
}

不好意思我只是想明白真相
2007-12-12 09:22
monomania
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2007-10-16
收藏
得分:0 
原来有人已经提前了哈
呵呵

不好意思我只是想明白真相
2007-12-12 09:24
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
想了一下,似乎这样更好些,
#include "stdio.h"
#include "conio.h"

int  main(void)
{
    int x,y,s,t;
    t=800;
    for(x=1;x<14;x++)
    for(y=1;y<12;y++)
    {
        s=800-56*x-64*y;
        if(s>=0)
            if(s<t)
                t=s;
     }
    for(x=1;x<14;x++)
    for(y=1;y<12;y++)
    {
        s=800-56*x-64*y;
        if(s==t)
        printf("A=%d B=%d yuliang=%d \n",x,y,s);   
      
      
     }
    getch();

return 0;
}

2007-12-12 09:29
布拉莫斯
Rank: 1
来 自:中国太平洋舰队
等 级:新手上路
帖 子:169
专家分:0
注 册:2007-3-31
收藏
得分:0 
这是个典型的运筹优化问题。。最好用Lingo 或 matlab 编程来做,一般C 能做的大多是用穷举搜索的办法。。。。

真理往往掌握在少数人手中,可现实却是少数服从多数!
2007-12-12 13:40
diaoxue
Rank: 1
等 级:新手上路
帖 子:142
专家分:0
注 册:2007-6-1
收藏
得分:0 
哪怕是lindo

上善若水,水善利万物而不争,处众人之所恶
2007-12-12 14:36
kidd2005
Rank: 1
等 级:新手上路
帖 子:193
专家分:0
注 册:2007-11-2
收藏
得分:0 
3个程序的结果都不同啊,怎么会产生不同啊??
请高手明示啊

潜心苦C,却发觉百C不得其解啊~
2007-12-12 16:41
kd0376
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2007-12-7
收藏
得分:0 
完了~~~晕啊~~上边三个程序的结果不太一样啊~~谢谢大家帮助~~不过看来还得改下程序~~呵呵
2007-12-13 07:27
C语言的深度
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:卡特的怀抱
等 级:版主
威 望:1
帖 子:9577
专家分:19
注 册:2007-10-22
收藏
得分:0 
这个可不是菜鸟级别的问题了
程序
要靠自己去研究

用代码打出楼房...用编程编出幸福...
2007-12-13 09:35
快速回复:菜虫有问题~~请高手帮忙
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040831 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved