当前位置: 代码迷 >> J2SE >> 求帮忙写程序解决方法
  详细解决方案

求帮忙写程序解决方法

热度:6946   发布时间:2013-02-25 00:00:00.0
求帮忙写程序
求帮忙写程序:(这些题目我自己能分析,就是不会写出来,有些题关于数学的,本人数学很丢人。刚学完二重循环,请大家尽量用我能看懂的方法写,最好能加点注释,老师给了40道题,多半都写不出来,希望借鉴大家的方法,再去理解。)谢谢大家!


1.我国古代数学家张邱建在《算经》中出了一道“百钱买白鸡”的问题,题意是这样的:5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。

2。彩票生成系统:生成一组随机的双色球彩票(一共7个数字,前六位随机范围为1-33,最后一位范围1-16),使用数组保存生成的每次随机数。要求数组的前六位不能出现重复的数字。提示:使用数组和二重循环。

3.题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
程序分析:(a>b)?a:b这是条件运算符的基本例子。

4.题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完数。

5.题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。程序分析:请抓住分子与分母的变化规律。

6.题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下
的是原来第几号的那位。

7.题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?

8.题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),显示出总分最高的学生的学生号、姓名、三门课的平均成绩。(不考虑最高分

9.题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数

10.题目:打印出杨辉三角形(要求打印出10行如下图)
1.程序分析:
  1
  1 1
  1 2 1
  1 3 3 1
  1 4 6 4 1
1 5 10 10 5 1







------解决方案--------------------------------------------------------
Java code
import java.util.Random;public class Test{    public static void main(String[] args)    {        // 1. 百元买百鸡        // 5X + 3Y + Z/3 = 100;        // X + Y + Z = 100; ->        // 15X + 9Y + (100 - X - Y) = 300; ->        // 14X + 8Y = 200; ->        // 7X + 4Y = 100;        for (int i = 0; i < 100 / 4; i++)        {            if ((100 - i * 4) % 7 == 0)            {                int x = (100 - i * 4) / 7;                int y = i;                int z = 100 - x - y;                System.out.println(x + ":" + y + ":" + z);            }        }        // 2.彩票        int[] caipiao = new int[7];        for (int i = 0; i < 7; i++)        {            caipiao[i] = -1;        }        for (int i = 0; i < 6; i++)        {            int ran = new Random().nextInt(33) + 1;            while (haveSame(caipiao, ran))            {                ran = new Random().nextInt(33) + 1;            }            caipiao[i] = ran;        }        caipiao[6] = new Random().nextInt(16) + 1;        // 打印        for (int i : caipiao)        {            System.out.println(i);        }    }    public static boolean haveSame(int[] caipiao, int ran)    {        for (int i = 0; i < 6; i++)        {            if (caipiao[i] == ran)            {                return true;            }        }        return false;    }}
------解决方案--------------------------------------------------------
Java code
    // 题目4    public static void main(String args[])    {        int m = 0;        int s = 0;        int i = 0;        int a[] = new int[1000];        for (s = 2; s < 1000; s++)        {            m = 0;            for (i = 1; i < s; i++)            {                if (s % i == 0)                    a[i - 1] = i;                else                    a[i - 1] = 0;            }            for (i = 1; i < s; i++)                m = m + a[i - 1];            if (m == s)                System.out.println(s);        }    }
------解决方案--------------------------------------------------------
import java.util.Random;

public class Test
{
public static void main(String[] args)
{
// 1. 百元买百鸡
// 5X + 3Y + Z/3 = 100;
// X + Y + Z = 100; ->
// 15X + 9Y + (100 - X - Y) = 300; ->
// 14X + 8Y = 200; ->
// 7X + 4Y = 100;
for (int i = 0; i < 100 / 4; i++)
{
if ((100 - i * 4) % 7 == 0)
{
int x = (100 - i * 4) / 7;
  相关解决方案