谁能帮我用JAVA语言写几个很简单的小程序
1、判断一个数是否为素数,并求出1-1000中的全部素数(素数即质数,除1和自身以外没有其它因子,最小的质数是2)。2、求m和n的最大公约数与最小公倍数(最大公约数:转辗...
1、判断一个数是否为素数,并求出1-1000中的全部素数(素数即质数,除1和自身以外没有其它因子,最小的质数是2)。
2、求m和n的最大公约数与最小公倍数(最大公约数:转辗相除法)。
3、求100-1000之间的水仙花数。(水仙花数,是指一个三位数,它的各位数字的立方和等于自身数,例:153=13+53+33)
4、判断一个年份是否为闰年。(闰年即满足以下两条件的年份:其一:能被4整除但不能被100整除;其二:能被400带除)
5、求1!+2!+3!+…+10!的值。
6、鸡兔同笼问题。鸡兔同笼,头共46,足共128,鸡兔各几只?
7、菲波拉契数列问题。菲波拉契数列是指数列的第1、2项均是1,从第3项开始,每一项等于前2项之和。数值呈以下规律分布:1,1,2,3,5,8,13,21.......。
8、求100之内的所有“完数”。完数是指本身等于其各个因子之和的数。例如:
6=1+2+3则6是一个完数。 展开
2、求m和n的最大公约数与最小公倍数(最大公约数:转辗相除法)。
3、求100-1000之间的水仙花数。(水仙花数,是指一个三位数,它的各位数字的立方和等于自身数,例:153=13+53+33)
4、判断一个年份是否为闰年。(闰年即满足以下两条件的年份:其一:能被4整除但不能被100整除;其二:能被400带除)
5、求1!+2!+3!+…+10!的值。
6、鸡兔同笼问题。鸡兔同笼,头共46,足共128,鸡兔各几只?
7、菲波拉契数列问题。菲波拉契数列是指数列的第1、2项均是1,从第3项开始,每一项等于前2项之和。数值呈以下规律分布:1,1,2,3,5,8,13,21.......。
8、求100之内的所有“完数”。完数是指本身等于其各个因子之和的数。例如:
6=1+2+3则6是一个完数。 展开
5个回答
展开全部
/**
* @(#)Jiejue1.java
*
* @判断一个数是否为素数
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue1 {
public static void main(String args[]) {
System.out.println("1-1000中的全部素数为:");
//判断1到1000中的所有素数
for(int i=1; i<1001; i++) {
if (sushu(i)) {
System.out.println(i);
}
}
}
//判断一个数是否为素数
public static boolean sushu(int n) {
if(n == 1) {
return false;
}
else {
for(int j=2; j<n; j++) {
if(n % j == 0) {
return false;
}
}
}
return true;
}
}
/**
* @(#)Jiejue2.java
*
* @求m和n的最大公约数和最小公倍数
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue2 {
public static void main(String args[]) {
System.out.println(gongyue(8, 6));
System.out.println(gongbei(8,6));
}
//求m和n的最大公约数
public static int gongyue(int m, int n) {
while(m % n != 0) {
int temp = m % n;
m = n;
n = temp;
}
return n;
}
//求m和n的最小公倍数
public static int gongbei(int m, int n) {
return m * n / gongyue(m, n);
}
}
/**
* @(#)Jiejue3.java
*
* @求水仙花数
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue3 {
public static void main(String args[]) {
System.out.println("100-1000的水仙花数是:");
for(int n=100; n<1000; n++) {
if(shuixianhua(n)) {
System.out.println(n);
}
}
}
//判断一个数是否为水仙花数
public static boolean shuixianhua(int n) {
//获得个位数
int gewei = n % 10;
//获得十位数
int shiwei = n / 10 % 10;
//获得百位数
int baiwei = n /100 % 10;
if (n == gewei*gewei*gewei + shiwei*shiwei*shiwei + baiwei*baiwei*baiwei) {
return true;
}
return false;
}
}
/**
* @(#)Jiejue4.java
*
* @判断是否为闰年
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue4 {
public static void main(String args[]) {
System.out.println(panduan(2000));
}
//判断是否为闰年
public static boolean panduan(int n) {
if((n%4 == 0 && n%100 != 0) || n%400 == 0) {
return true;
}
return false;
}
}
/**
* @(#)Jiejue5.java
*
* @求1!+2!+……+10!的和
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue5 {
public static void main(String args[]){
//用来存放1!+2!+……+10!的和,初始值为零
int sum = 0;
for(int i = 0; i < 10; i++ ){
//调用jiecheng()函数算出i+1的阶乘,加到sum当中
sum += jiecheng(i + 1);
}
System.out.println("1!+2!+……+10!的和为:" + sum);
}
//算阶乘的函数
public static int jiecheng(int n){
if(n == 1 || n == 0){
return 1;
}
else return n * jiecheng(n - 1);
}
}
/**
* @(#)Jiejue6.java
*
* @鸡兔同笼问题
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue6 {
public static void main(String args[]) {
for(int i=0; i<47; i++) {
if(4*i + 2*(46-i) == 128) {
System.out.println("鸡有" + (46-i) + "只");
System.out.println("兔有" + i + "只");
}
}
}
}
/**
* @(#)Jiejue7.java
*
* @菲波拉契数列问题
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue7 {
public static void main(String args[]) {
System.out.println("菲波拉契数列的第10个数为:" + feibolaqi(10));
}
public static int feibolaqi(int n) {
if(n == 1 || n ==2) {
return 1;
}
else {
return feibolaqi(n-1) + feibolaqi(n-2);
}
}
}
/**
* @(#)Jiejue8.java
*
* @求100之内的所有“完数”
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue8 {
public static void main(String args[]) {
System.out.println("100以内的完数为:" );
for(int i = 1; i < 100; i++) {
if(wanshu(i)) {
System.out.println(i);
}
}
}
//判断是否为完数
public static boolean wanshu(int n) {
int sum = 0;
for(int i=1; i<n; i++) {
if(n % i == 0) {
sum += i;
}
}
if(sum == n) {
return true;
}
return false;
}
}
* @(#)Jiejue1.java
*
* @判断一个数是否为素数
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue1 {
public static void main(String args[]) {
System.out.println("1-1000中的全部素数为:");
//判断1到1000中的所有素数
for(int i=1; i<1001; i++) {
if (sushu(i)) {
System.out.println(i);
}
}
}
//判断一个数是否为素数
public static boolean sushu(int n) {
if(n == 1) {
return false;
}
else {
for(int j=2; j<n; j++) {
if(n % j == 0) {
return false;
}
}
}
return true;
}
}
/**
* @(#)Jiejue2.java
*
* @求m和n的最大公约数和最小公倍数
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue2 {
public static void main(String args[]) {
System.out.println(gongyue(8, 6));
System.out.println(gongbei(8,6));
}
//求m和n的最大公约数
public static int gongyue(int m, int n) {
while(m % n != 0) {
int temp = m % n;
m = n;
n = temp;
}
return n;
}
//求m和n的最小公倍数
public static int gongbei(int m, int n) {
return m * n / gongyue(m, n);
}
}
/**
* @(#)Jiejue3.java
*
* @求水仙花数
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue3 {
public static void main(String args[]) {
System.out.println("100-1000的水仙花数是:");
for(int n=100; n<1000; n++) {
if(shuixianhua(n)) {
System.out.println(n);
}
}
}
//判断一个数是否为水仙花数
public static boolean shuixianhua(int n) {
//获得个位数
int gewei = n % 10;
//获得十位数
int shiwei = n / 10 % 10;
//获得百位数
int baiwei = n /100 % 10;
if (n == gewei*gewei*gewei + shiwei*shiwei*shiwei + baiwei*baiwei*baiwei) {
return true;
}
return false;
}
}
/**
* @(#)Jiejue4.java
*
* @判断是否为闰年
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue4 {
public static void main(String args[]) {
System.out.println(panduan(2000));
}
//判断是否为闰年
public static boolean panduan(int n) {
if((n%4 == 0 && n%100 != 0) || n%400 == 0) {
return true;
}
return false;
}
}
/**
* @(#)Jiejue5.java
*
* @求1!+2!+……+10!的和
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue5 {
public static void main(String args[]){
//用来存放1!+2!+……+10!的和,初始值为零
int sum = 0;
for(int i = 0; i < 10; i++ ){
//调用jiecheng()函数算出i+1的阶乘,加到sum当中
sum += jiecheng(i + 1);
}
System.out.println("1!+2!+……+10!的和为:" + sum);
}
//算阶乘的函数
public static int jiecheng(int n){
if(n == 1 || n == 0){
return 1;
}
else return n * jiecheng(n - 1);
}
}
/**
* @(#)Jiejue6.java
*
* @鸡兔同笼问题
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue6 {
public static void main(String args[]) {
for(int i=0; i<47; i++) {
if(4*i + 2*(46-i) == 128) {
System.out.println("鸡有" + (46-i) + "只");
System.out.println("兔有" + i + "只");
}
}
}
}
/**
* @(#)Jiejue7.java
*
* @菲波拉契数列问题
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue7 {
public static void main(String args[]) {
System.out.println("菲波拉契数列的第10个数为:" + feibolaqi(10));
}
public static int feibolaqi(int n) {
if(n == 1 || n ==2) {
return 1;
}
else {
return feibolaqi(n-1) + feibolaqi(n-2);
}
}
}
/**
* @(#)Jiejue8.java
*
* @求100之内的所有“完数”
* @author 智鸱儿—zhichier
* @version 1.00 己丑年三月初十—2009/4/5
*/
public class Jiejue8 {
public static void main(String args[]) {
System.out.println("100以内的完数为:" );
for(int i = 1; i < 100; i++) {
if(wanshu(i)) {
System.out.println(i);
}
}
}
//判断是否为完数
public static boolean wanshu(int n) {
int sum = 0;
for(int i=1; i<n; i++) {
if(n % i == 0) {
sum += i;
}
}
if(sum == n) {
return true;
}
return false;
}
}
展开全部
就是,楼上说的对,老师有问题,用Java做算法方面的题目,事倍功半啊!还是C语言比较合适。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你那么多问题想我怎么做啊?其实这些问题都不是很难的,自己做出来就最好啦。如果真的不行,在网上也有类似的题目和解答。我就不帮你完成了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我不大明白为什么老师就是喜欢让人做这些呢... 又不是学C语言..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
帮你做做第一题目
for(int i=1;i<1000;i++)
{
for(int j=2;j<i;j++)
{
if(i%j==0)
{
if(i==j)
{
System.out.println(j);
}
else
break;
}
}
}
for(int i=1;i<1000;i++)
{
for(int j=2;j<i;j++)
{
if(i%j==0)
{
if(i==j)
{
System.out.println(j);
}
else
break;
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询