A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

aimport java.util.Scanner;
class Legs {
        public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入腿的总数量(大于1的偶数)");//输出语句提示
                int num1 = sc.nextInt();                                                                //输入腿的总数量
                System.out.println("请输入鸡与兔的总只数(大于1的整数)");
                int num2 = sc.nextInt();                                        //输入鸡与兔的总只数
                int temp = 0;                                                                //鸡的数量
                for(int i = 0;i <= num2;i++){                               
                        if(i*2+(num2-i)*4==num1){
                                temp = i;
                                break;                                                                        //通过循环得到可信的鸡的数量,得到唯一解后立即跳出循环,继续执行剩余代码
                        }else {
                                temp = -1;                                                                //无法求得整数解时,将-1赋值与temp,执行剩余代码
                        }
                }
                if (temp != -1) {                                                                //通过for循环返回的temp结果
                        System.out.println("鸡的数量为"+temp+",兔子的数量为"+(num2-temp));
                }else {
                        System.out.println("这不是地球的鸡和兔子!!!!!!!!");
                }
               
        }
}

8 个回复

倒序浏览
整理一元一次方程
[Java] 纯文本查看 复制代码
import java.util.Scanner;


public class Count {
	public static void main(String[] args) {
		 Scanner sc = new Scanner(System.in);
	     System.out.println("请输入腿总数(偶数)");
	     int numLegs = sc.nextInt();    
	     
	     
	     System.out.println("请输入鸡兔总数(整数)");
	     int all = sc.nextInt();  
	     
	     //整理一元一次方程
	     int rabbits=numLegs/2-all;
	     int chickens =all-rabbits;
	     
	     System.out.println("鸡:"+chickens+",兔:"+rabbits);
	}
	                                      
}
回复 使用道具 举报
很溜,可以的
回复 使用道具 举报
class Legs {
        public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入腿的总数量(大于1的偶数)");//输出语句提示
                int num1 = sc.nextInt();                                                                //输入腿的总数量
                System.out.println("请输入鸡与兔的总只数(大于1的整数)");
                int num2 = sc.nextInt();                                        //输入鸡与兔的总只数
                sc.close();
                for(int i = 0;i <= num2;i++){                                
                        if(i*2+(num2-i)*4==num1){
                               System.out.println("chicken" + i + "rabbit" + (num2 - i));
                                return;                                                                        //通过循环得到可信的鸡的数量,得到唯一解后结束方法
                        }
                }
                System.out.println("这不是地球的鸡和兔子!!!!!!!!");
        }
}

点评

如果之后还有需要进行操作的,把for开始至System.out.println("这不是地球的鸡和兔子!!!!!!!!");抽取成一个单独的方法,让return不结束掉主方法就好。  发表于 2016-8-22 12:56
回复 使用道具 举报
鸡兔同笼的算法吗?
回复 使用道具 举报
可以,看来一道有不同解法和算法!
回复 使用道具 举报
哎呦,不错哦
回复 使用道具 举报
import java.util.Scanner;
public class Count {
    public static void main(String[] args) {
         Scanner sc = new Scanner(System.in);
         System.out.println("请输入腿总数(偶数)");
         int num = sc.nextInt();   
         
         
         System.out.println("请输入鸡兔总数(整数)");
         int all = sc.nextInt();  
         
         if((num % 2 )==0){
                         for(int chick = 1;chick <= all; chick++) {
                                if(2 * chick + 4 * (all-chick) == num){
                                        System.out.println("鸡" + chick + "兔" + (all - chick));
                                        break;
                                }else if(chick==num) {
                                        System.out.println("不对");
                                       
                                }
                                       
                         }

         /*int rabbits= num/2-all;
         int chickens =all-rabbits;
         
         System.out.println("鸡:"+chickens+",兔:"+rabbits);*/
         }else{
                        System.out.println("这不是地球上的动物吧!");
                 }
               
    }
                                          
}

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马