好久没有做基础编程题了,现在做起来真的是有一点畅快的感觉,想当初被各种问题虐的死去活来的,现在真的有种满级大号回新手村追杀NPC的感觉不能乱立flag,要是翻车了就毁了(T▽T),开始我们今天的基础练习~,现在小编就来说说关于java质数分解的方法?下面内容希望能帮助到你,我们来一起看看吧!

java质数分解的方法(Java编程基本功二)

java质数分解的方法

好久没有做基础编程题了,现在做起来真的是有一点畅快的感觉,想当初被各种问题虐的死去活来的,现在真的有种满级大号回新手村追杀NPC的感觉。不能乱立flag,要是翻车了就毁了(T▽T),开始我们今天的基础练习~

第六题

打印出所有的 "水仙花数",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为 153=1*1*1+5*5*5+3*3*3。为了显示我的专业水准,还查了一下“水仙花数” 的英文怎么拼 (* ̄︶ ̄)又多学了一个单词,我真是棒棒哒~

代码:

public class DaffodilsNumber {

public static void main(String[] args) {

int a,b,c,sum;

for(int i=100;i<1000;i ){

a=i;

b=i/100;

c=(i-b*100)/10;

sum=a*a*a b*b*b c*c*c;

if(i==sum){

System.out.println(i);

}

}

}

}

结果是:153、370、371、407

第七题

输入一个正整数分解质因数。如:输入90,输出90=2*3*3*5。

程序的思路:

1.用Scanner实现输入一个正整数n

2.用一个for循环遍历一个从 k=2 开始查找到 k<=n 的数

3.当 n%k==0 的时候,输出 k 的值

4.然后把 n 的值递归一下,即 n=n/k;

5.这个时候要把 for 循环重新执行,即k=2;

修改后的代码:

import java.util.Scanner;

public class PrimeFactor {

public static void main(String[] args) {

Scanner in = new Scanner(System.in);

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

int n = in.nextInt();

System.out.print(n "=");

for(int k=2;k<=n/2;){

if(n%k==0){

System.out.print(k "*");

n=n/k;

k=2;

}else{

k ;

}

}

System.out.print(n);

}

}

第八题:

利用 条件运算符 的嵌套来完成此题:

学习成绩> =90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。这里涉及里一个知识点就是条件运算符。不知道的小伙伴抓紧查一下吧~

代码:

public class Grade {

public static void main(String[] args) {

System.out.println("请输入学生成绩:");

Scanner in = new Scanner(System.in);

char s;

while(in.hasNext()){

int n =in.nextInt();

s=n>=90?'A':n>=60?'B':'C';

System.out.println(s);

}

}

}

小伙伴们在编写代码的时候,也要有自己的节奏,要是有的题目不会做了。就跳过去~先做后面简单的,等后面有了自己的想法了。再回来试试~

,