JAVA编程题,就JAVA大侠帮忙啊~~~ 1:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、母

、雏各几只?
2:用选择排序算法对如下几个数排列,14,2,5,1,6,9,456,8并打印结果。
3:设计窗体,实现在交互输入的两个整数范围内求所有素数的和(写明计算按钮的单击事件处理以及类、接口等的使用)。
用JAVA环境实现~~~
求打下帮忙啊啊
~~~~帮忙的出门捡钱包~~~

第1个回答  2011-07-21
public class test {
public static void main(String args[]){
for(int i = 0;i<21;i++){//公鸡
for(int j = 0;j<34;j++){//母鸡
int k = 100-j-i;
if((i+j+k==100)&&(15*i+9*j+k==300)){//因为int类型的数相除会舍弃余数,
//所以1/3为零,我让他们同时乘以3,没有分数

System.out.print("公鸡"+i+"\t");
System.out.print("母鸡"+j+"\t");
System.out.println("小鸡"+k+"\t");

}
}
}
第2个回答  2011-07-14
为了捡到钱。。。

import java.awt.Button;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

public class First {

public static void main(String[] args) {

first();//第一题
second();//第2个
third();//第3题
}

private static void third() {
final String reg = "[^0-9]*";
Frame f = new Frame("Third question");
Label first = new Label("Number1");
Label second = new Label("Number2");
final TextField num1 = new TextField(15);
final TextField num2 = new TextField(15);

f.add(first);//
f.add(num1);
f.add(second);
f.add(num2);

Button calc = new Button("Calculate");
final TextField result = new TextField();

calc.addMouseListener(new MouseListener(){

public void mouseClicked(MouseEvent e) {
if(num1.getText().matches(reg) || num2.getText().trim().matches(reg)){
result.setText("0");
return;
}

int number1 = Integer.parseInt(num1.getText());
int number2 = Integer.parseInt(num2.getText());

int min = Math.min(number1, number2);
int max = Math.max(number1, number2);

int sum = 0;
while(min <= max){
boolean isPrime = true;
for(int j = 2; j <= Math.sqrt(min); j++){
if(min % j == 0){
isPrime = false;
}
}

sum += isPrime? min: 0;
min++;
}

result.setText(String.valueOf(sum));
}

public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
});
f.add(calc);
f.add(result);

f.addWindowListener(new WindowClose());
f.setLayout(new GridLayout(3, 2));
f.setVisible(true);
f.pack();
}

private static void second() {
int[] ary = {14, 2, 5, 1, 6, 9, 456, 8};

for(int i = 0; i < ary.length; i++){

int index = i;

for(int j = i; j < ary.length; j++){
if(ary[index] > ary[j]){
index = j;
}
}

if(i != index){
int temp = ary[index];
ary[index] = ary[i];
ary[i] = temp;
}
}

System.out.print("After sorting, the array is: ");
for(int i = 0; i < ary.length; i++){
System.out.print(ary[i] + ",");
}

}

private static void first() {
int money = 100;
int qty = 100;
for(int i = 0; i <= money /5; i++){
for(int j = 0; j <= money/3 + 1; j++){
int jichuQty = 100 - i - j;
if(jichuQty % 3 == 0){
if(i * 5 + j * 3 + (100 - i - j ) / 3 == qty){
System.out.println("jiWeng = " + i + ", jimu = " + j + ", jichu= " + jichuQty);
}
}

}
}

}

}

class WindowClose implements WindowListener{

public void windowClosing(WindowEvent e) {
System.exit(0);
}

public void windowActivated(WindowEvent e) {}
public void windowClosed(WindowEvent e) {}
public void windowDeactivated(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowOpened(WindowEvent e) {}
}
第3个回答  2011-07-13
帮你写第二个吧。。。你的要求这么高,又不给分。
import java.util.Arrays;

public class InsertSort
{
public static void main(String[] args)
{
int[] a={14,2,5,1,6,9,456,8};
insertSort(a);
System.out.println(Arrays.toString(a));
}

public static void insertSort(int[] a){
int in,out,temp;
for(out=1; out<a.length; out++){
temp=a[out];
in=out;
while(in>0&&a[in-1]>=temp){
a[in]=a[in-1];
in--;
}
a[in]=temp;
}
}
}追问

帅哥,把第一个也写一下呗,回头给你加分啦,(*^__^*) 嘻嘻

追答

第一个是算法类型的题目,我自认为自己的算法布过关,因为写算法是看效率问题的,所以我不敢写,因为我的算法方面不够扎实,写出来的话有可能是很低效率的,你还是查查相关算法书的写法,算法书里面肯定有你那道题

本回答被网友采纳
第4个回答  2011-07-14
百钱买百鸡设3个变量就可以实现,排序嘛就用冒泡法最简单。
第5个回答  2011-07-14
用啥语言都一个写法 。