| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1247 人关注过本帖
标题:一些java题
只看楼主 加入收藏
gpt0407
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2010-4-16
结帖率:50%
收藏
已结贴  问题点数:15 回复次数:10 
一些java题
1、    使用Java语言编写两个方法,分别实现求两个整数的最大公约数和最小公倍数。在main()方法里面进行测试。要求是:从控制台进行两个整数的输入。
2、    编写一个猜数的应用程序,用随机函数产生一个10到99的随机数。根据猜中使用的次数X计算得分。每次猜完给出是大于还是小于的提示。注:得分的计算办法:110—X*10;
3、    利用随机函数产生10道两位数的加法题,判断用户的得分。程序运行界面为:   
13+35=? xx
34+27=?  xx
…………..
你的得分是:80分
4、    从键盘输入一个长整数,求其各位数字之和。
5、    编写根据三条边求三角形面积的方法。利用该方法求以下两个三角形面积。
a)    三条边分别为:3,4,5;
b)    三条边分别为:5.3,6.2,8;

请高手给指点指点!
搜索更多相关主题的帖子: java 
2010-04-17 10:25
lampeter123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:54
帖 子:2508
专家分:6424
注 册:2009-1-30
收藏
得分:2 
1、    使用Java语言编写两个方法,分别实现求两个整数的最大公约数和最小公倍数。在main()方法里面进行测试。要求是:从控制台进行两个整数的输入。
程序代码:
import java.util.*;

public class Ex1 {
        public static void gongYue(int m, int n) {
                if (m > n) {
                        int h = m;
                        m = n;
                        n = h;
                }
                if (n % m == 0) {
                        System.out.println("最大公约数为:" + m);
                } else {
                        for (int i = n / 2; i > 1; i--) {
                                if (m % i == 0 && n % i == 0) {
                                        System.out.println("最大公约数为:" + i);
                                        break;
                                }
                        }
                }

        }

        public static void gongBei(int m, int n) {
                if (m > n) {
                        int h = m;
                        m = n;
                        n = h;
                }
                for (int j = n; j <= m* n; j++) {
                        if (j % m == 0 && j % n == 0) {
                                System.out.println("最小公倍数:" + j);
                                break;
                        }
                }
        }

        public static void main(String[] args) {
                Scanner scan = new Scanner(System.in);
                System.out.print("x=");
                int x = scan.nextInt();
                System.out.print("y=");
                int y = scan.nextInt();
               
                gongYue(x, y);
                gongBei(x, y);
        }
}



[ 本帖最后由 lampeter123 于 2010-4-17 12:06 编辑 ]

你的优秀和我的人生无关!!!!
    
    我要过的,是属于我自己的生活~~~
2010-04-17 12:04
linjx0123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:279
专家分:1362
注 册:2006-4-7
收藏
得分:2 
程序代码:
import java.util.Random;
import java.util.Scanner;

public class GuessNum {
    public static final int EQUALS=0;
    public static final int GREATER_THAN=1;
    public static final int LITTLE_THAN=2;
    int count=0;
   
    private int generateNum(){
        Random random = new Random();
        return 10+random.nextInt(90);
    }
   
    private int getTotal(){
        return 110-(count+1)*10;
    }
   
    public int compare(int guess, int random){
        if(guess==random){
            System.out.println("恭喜你,你猜对了");
            System.out.println("你猜对了. 你的得分是:"+getTotal());
            return EQUALS;
        }else if(guess<random){
            count++;
            System.out.println("你已经猜了"+count+"次了,你的数小了");
            return LITTLE_THAN;
        }else{
            count++;
            System.out.println("你已经猜了"+count+"次了,你的数大了");
            return GREATER_THAN;
        }
    }
   
    public static void main(String[] args){
        GuessNum gn = new GuessNum();
        Scanner scan = new Scanner(System.in);
        int num = gn.generateNum();
        int guess;
        do{
            System.out.println("请输入一个10到99之间的数字");
            guess = scan.nextInt();
        }
        while((guess, num)!=GuessNum.EQUALS);
    }
}
2010-04-17 21:00
linjx0123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:279
专家分:1362
注 册:2006-4-7
收藏
得分:2 
第三题:
程序代码:
import java.util.Random;
import java.util.Scanner;

public class AddTest {
   
    private static int generateNum(){
        Random random = new Random();
        return 10+random.nextInt(90);
    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int answer;
        int sum=0;
        Scanner scan = new Scanner(System.in);
        for(int i=0;i<10;i++){
            int x = generateNum();
            int y = generateNum();
            answer = x+y;
            System.out.print(x+" +"+y+" = ");
            int myanswer = scan.nextInt();
            if(myanswer==answer)
                sum+=10;
        }
        System.out.println("***************************");
        System.out.println("你的得分是:"+sum);
    }

}
2010-04-17 21:13
linjx0123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:279
专家分:1362
注 册:2006-4-7
收藏
得分:2 
第四题
程序代码:
Scanner scan = new Scanner(System.in);
        long lnum = scan.nextLong();
        int sum = 0;
        while(lnum!=0){
            sum=sum+(int)(lnum%10);
            lnum=lnum/10;
        }
        System.out.println(sum);
2010-04-17 21:19
linjx0123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:279
专家分:1362
注 册:2006-4-7
收藏
得分:0 
最后一个也太简单了,直接利用公式就行了
p=(a+b+c)/2
三角形的面积就是p(p-a)(p-b)(p-c)的开方
2010-04-17 21:24
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:2 
第一道题:                                     //后面的一一道来啊 别急,因为我也是新手,相互学习嘛!嗬嗬嗬嗬
import javax.swing.JOptionPane;

public class CommonDivisor {

    public static void main(String[] args) {
        String number1 = JOptionPane.showInputDialog("Enter an integer!");
        String number2 = JOptionPane.showInputDialog("Enter an integer!");
        int n = Integer.parseInt(number1);
        int m = Integer.parseInt(number2);
        int i = divisor(n, m);
        int j = multiple(n, m);
        String output = "The common divisor is " + i + "\n"
                + "The common multiple is " + j;
        JOptionPane.showMessageDialog(null, output);
    }

    public static int divisor(int num1, int num2) {
        int gcd = 1;
        int k = 1;
        while (k <= num1 && k <= num2) {
            if (num1 % k == 0 && num2 % k == 0)
                gcd = k;
            k++;
        }
        return gcd;
    }

    public static int multiple(int num3, int num4) {
        int gcd1 = 1;
        //int x = 1;
        for (int x =num3 * num4; x >=1; x--) {
            if (x % num3 == 0 && x % num4 == 0){
                gcd1 = x;
            //return gcd1;
            }
        }
        return gcd1;}
   
}

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-04-17 21:27
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:2 
第二道:
import javax.swing.JOptionPane;

public class guess {

    public static void main(String[] args) {
        String output = "";
        int n = (int) (10 + 90 * Math.random());
        for (int i = 1; i <= 100; i++) {
            String number = JOptionPane
                    .showInputDialog("Please input the answer !");
            int m = Integer.parseInt(number);
            int sum = 0;
            int count = 0;
            count++;
            sum = 110 - count * 10;
            if (m <= 0 || m >= 100) {
                output = "Please an integer 10-99 !";
            } else if (m < n) {
                output = "输入的值小于实际值!";
            } else if (m > n) {
                output = "输入的值大于实际值!";
            } else {
                output = "恭喜您答对了!您的最终得分为: " + sum;
                JOptionPane.showMessageDialog(null, output);
                break;
            }
            JOptionPane.showMessageDialog(null, output);
        }
    }
}

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-04-17 22:22
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:2 
第五道题:
import javax.swing.JOptionPane;

public class He {

    public static void main(String[] args) {
        double arr[] = new double[3];
        String output = "";
        for (int x = 0; x <= 10000; x++) {
            for (int i = 1; i <= 3; i++) {
                String number = JOptionPane.showInputDialog("请输入三角形的第" + i
                        + "条边!");
                double n = Double.parseDouble(number);
                arr[i - 1] = n;
            }
            if (arr[0] + arr[1] <= arr[2] || arr[0] + arr[1] <= arr[2]
                    || arr[0] + arr[1] <= arr[2] || arr[0] == 0 || arr[1] == 0
                    || arr[2] == 0) {
                output = "数据错误,请输入正确的值!";
                JOptionPane.showMessageDialog(null, output);
                continue;
            } else {
                double area = 0;
                double P = 0;
                P = (arr[0] + arr[1] + arr[2]) / 2;
                area = Math.pow(P * (P - arr[0]) * (P - arr[1]) * (P - arr[2]),
                        1.0 / 2);
                output = "三角形的面积为: " + area;
                JOptionPane.showMessageDialog(null, output);
                break;
            }
        }
    }
}

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-04-17 23:11
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:1 
第三道题:
public class EverySum {

    public static void main(String[] args) {
        int i = 0;
        String output = "";
        while (i <= 10) {
            int m = (int) (Math.random() * 90 + 10);
            int n = (int) (Math.random() * 90 + 10);
            i++;
            output = "\n" + n + "+" + m + "=?  " + (int) (m + n);
            JOptionPane.showMessageDialog(null, output);
        }

    }

}

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-04-18 18:28
快速回复:一些java题
数据加载中...
 
   



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

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