| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1159 人关注过本帖
标题:怎么解决?
只看楼主 加入收藏
wangtengkl
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-9-19
收藏
 问题点数:0 回复次数:10 
怎么解决?
如果a,b,c,d都是不为零的整数(小于等于9)比如a=1,b=2,能用程序把他定义成ab=12或ba=21,吗
2008-10-27 15:30
freish
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1223
专家分:437
注 册:2007-6-1
收藏
得分:0 
如果要ab或ba变量的话还是需要自己定义的

如果是为了输出的话可以实现
2008-10-27 16:34
wangtengkl
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-9-19
收藏
得分:0 
能写一个吗?我还刚学,这只是其中的过程,我要输出的结果
不是这个
2008-10-27 19:10
freish
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1223
专家分:437
注 册:2007-6-1
收藏
得分:0 
程序代码:
import java.lang.reflect.Field;
public class VarTest {
    private int a = 2;
    private int b = 3;
    
    //获取类中所有的成员变量
    public Field[] getFields()throws Exception{
        return VarTest.class.getDeclaredFields();
    }
    //按成员变量出现的顺序输出
    public String getOutputInOrder()throws Exception{
        StringBuffer name = new StringBuffer();
        StringBuffer value = new StringBuffer();
        Field[] fields = getFields();
        for(Field field:fields){
            name.append(field.getName());
            value.append(field.get(this));
        }
        return "" + name + "=" + value;
    }
    //按成员变量出现的顺序的相反顺序输出
    public String getOutputReverseOrder()throws Exception{
        StringBuffer name = new StringBuffer();
        StringBuffer value = new StringBuffer();
        Field[] fields = getFields();
        for(int i=fields.length-1; i>=0; i--){
            name.append(fields[i].getName());
            value.append(fields[i].get(this));
        }
        return "" + name + "=" + value;
    }
    
    public static void main(String[] args) throws Exception{
        VarTest test = new VarTest();
        System.out.println(test.getOutputInOrder());
        System.out.println(test.getOutputReverseOrder());
    }
}
2008-10-27 19:57
wangtengkl
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-9-19
收藏
得分:0 
我要写的没这么难,求的是ab+cd=dc  (a b c db不为零是单数)输出求结果是18+13=31。。。。。。。。72+19=91
很简单的,但我不会做
2008-10-28 12:45
freish
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1223
专家分:437
注 册:2007-6-1
收藏
得分:0 
晕了,不知道你要做什么……

有具体题目的话发一个上来
2008-10-28 17:54
wangtengkl
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-9-19
收藏
得分:0 
求所有满足等式AB+CD=DC的所有A B C D(必须为自一位的自然数,不为零)
结果:
18+13=31
18+24=42



72+19=91
2008-10-28 17:59
freish
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1223
专家分:437
注 册:2007-6-1
收藏
得分:0 
程序代码:
public class GetNum {
    private int a,b,c,d;
    
    private int getAB(){
        return a*10 + b;
    }
    
    private int getCD(){
        return c*10 + d;
    }
    
    private int getDC(){
        return d*10 + c;
    }
    
    public void getABCD(){
        for(a=1; a<10; a++)
            for(b=1; b<10; b++)
                for(c=1; c<10; c++)
                    for(d=1; d<10; d++){
                        if(getAB()+getCD() == getDC())
                            System.out.println(getAB() + "+" + getCD() + "=" +  getDC());
                        }
    }
    
    public static void main(String[] args) {
        new GetNum().getABCD();
    }
}
2008-10-28 21:08
freish
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1223
专家分:437
注 册:2007-6-1
收藏
得分:0 
这样更简单一点
程序代码:
public class GetNum {
    private int a,b,c,d;
    
    private int getXY(int x,int y){
        return x*10 + y;
    }
    
    public void getABCD(){
        for(a=1; a<10; a++)
            for(b=1; b<10; b++)
                for(c=1; c<10; c++)
                    for(d=1; d<10; d++){
                        if(getXY(a,b)+getXY(c,d) == getXY(d,c))
                            System.out.println(getXY(a,b) + "+" + getXY(c,d) + "=" +  getXY(d,c));
                        }
    }
    
    public static void main(String[] args) {
        new GetNum().getABCD();
    }
}
2008-10-28 21:10
elan1986
Rank: 6Rank: 6
等 级:贵宾
威 望:18
帖 子:458
专家分:407
注 册:2007-12-17
收藏
得分:0 
很是佩服你写的代码
很规范
学习!
2008-10-28 22:03
快速回复:怎么解决?
数据加载中...
 
   



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

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