前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >编程题:百钱买百鸡

编程题:百钱买百鸡

作者头像
用户6182664
发布2019-09-12 11:16:57
8110
发布2019-09-12 11:16:57
举报
文章被收录于专栏:Java程序员那些事

### 百钱买百鸡

#### 案列说明:主要内容是:公鸡5元一只,母鸡3元一只,小鸡1元三只,问100元怎样可以买100鸡?

思想:想要实现此算法,只要明白各种条件的关系即可,而且知道公鸡最多买20只,母鸡最多买33只,小鸡最多买300只,这样买各种鸡的钱总为100,元,鸡的只数也是100;

```

public class BQMJ {

public static void main(String[] args) {

int cock,hen,chicken=0;

// 定义最多公鸡买19只,外层循环控制

for(cock=0;cock<=19;cock++){

// 母鸡二层循环控制最多33只

for(hen=0;hen<=33;hen++){

// 剩下为小鸡数

chicken=100-cock-hen;

int p;

// 小鸡数必须是三的倍数

p=chicken%3;

if(((5*cock+3*hen+chicken/3)==100

&&(p==0)){

System.out.print("买公鸡:"+cock);

System.out.print("买母鸡:"+hen);

System.out.print("买小鸡:"+chicken);

System.out.println("\n");

}

}

}

}

}

```

结果:

```

可以买公鸡的只数:0 可以买母鸡的只数:25 可以买小鸡的只数:75

可以买公鸡的只数:4 可以买母鸡的只数:18 可以买小鸡的只数:78

可以买公鸡的只数:8 可以买母鸡的只数:11 可以买小鸡的只数:81

可以买公鸡的只数:12 可以买母鸡的只数:4 可以买小鸡的只数:84

```

#### 算法应用之韩信点兵

##### 案列说明:韩信带兵不足百人,3人一行排列多一人,7人一行排列少两人,5人一行正好,本例是计算韩信究竟点了多少兵?

##### 想法:对于韩信点兵算法,只需将7人少2人转换7人多5人,这样解决问题的方法就很明显了,再限定人数不多于100即可。

实现代码:

```

public class Hxin {

public static void main(String[] args){

int a=0,b=0,c=0,preson;

//定义总人数和各种站法的剩余人数

for(preson=0;preson<100;preson++){

//每排三人剩余人数

a=preson%3;

//每排七人的剩余人数

b=preson%7;

//每排五人的剩余人数

c=preson%5;

//都符合条件时的人数

if(a==1&&b==5&&c==0){

// 韩信带兵人数

System.out.println(preson);

}

}

}

}

```

得出结果为:40人

#### 算法应用之斐波那契数列

##### 说明:斐波那契数列的定义:它的第一项和第二项均为1,以后各项都为前两项之和

难点:如何设计好循环

实现代码:

```

public class Fbo {

private static void f(int x){

int f1=1,f2=1,i=3;

if(x==1)System.out.print(f1);

if(x==2)System.out.print(f1+" "+f2);

//求位置大于三的数列

if(x>=3){

System.out.print(f1+" "+f2);

//求数列

while(x>=i){

//求两项之和

f1=f2+f1;

System.out.print(" "+f1);

i++;

f2=f2+f1;

System.out.print(" "+f2);

}

}

}

public static void main(String[] args) {

Scanner s=new Scanner(System.in);

System.out.println("请输入个数:");

int num=s.nextInt();

System.out.println("你想看的斐波那契数列:");

f(num/2+1);

}

}

```

输入 10:

```

你想看的斐波那契数列:

1 1 2 3 5 8 13 21 34 55

```

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java程序员那些事 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档