62,620
社区成员
发帖
与我相关
我的任务
分享package com.powernode.test1;
/**求 100至999的所有水仙花数
* 水仙花数是指其每个数位的数字的立方相加等于其本身
* 例如 407 = 4*4*4+0*0*0+7*7*7
* 程序分析,用for循环控制100至999个数
* 每个数分解出 百位 十位 个位
*/
public class Daffodils {
/** 判断i是否是一个水仙花数的方法
* @param i i是要判断的数
* @return 如果i是水仙花数,则返回true
*/
public static boolean isDaffodils(int i){
// 求参数i的百位,十位,各位数字
int baiwei=i/100; //百位
int shiwei=i/10%10; //十位
int gewei=i%100%10; //个位
if((liFang(baiwei)+liFang(shiwei)+liFang(gewei))==i)
return true;
else
return false;
}
//返回i的立方值
public static int liFang(int i){
return i*i*i;
}
}package com.powernode.test1;
public class JinZiTa{
// 实现金字塔的方法
//@pram i 要打印的金zi塔的高度
public void makeJinZiTa(int i){
//用for循环控制层数
for (int j= 0; j<i;j++){
// 先打印金字塔的前半部分空格
for(int k=0;k<i-j;k++){
System.out.print(" ");
}
//再打印*符号,*的个数是2*层数数目+1,
for(int f=0;f<j*2+1;f++){
System.out.print("*");
}
//打印完*换行
System.out.print("\n");
}
}
}package com.powernode.test1;
public class Student{
// 类的静态特性叫属性
// 类的动态行为叫方法
nt age;
String name;
public void setName(String _name){
name=_name;
}
public String getName(){
return name;
}
public void setAge(int _age){
age=_age;
}
public int getAge(){
return age;
}
//在类的方法中可以直接访问类的属性
public void study(String kecheng){
System.out.println(name + "正在学习" +kecheng+", 他的年龄: "+age);
}
public Student(int _age,String _name){
age=_age;
name=_name;
}
public Student(){
}
}package com.powernode.test;
// 一个java源文件中只能有一个package语句
// 但是可以有多个import语句
// 注意:import com.powernode.test1.*;
// 以上的语句只能导入test1目录中的字节码
// 但是test1目录里面的子目录中的字节码是无法导入的
import com.powernode.test1.*;
//import com.powernode.test1.Narcissus;
public class StudentTest {
public static void main(String[] args) {
//Student stu = new Student("張1",21);
Student stu = new Student();
stu.setAge(23);
stu.setName("张1");
stu.study("CoreJava");
System.out.println("====================");
Narcissus n = new Narcissus();
for(int i = 100;i<1000;i++){
if(n.isNarcissus(i)){
System.out.println(i + " 是水仙花数!");
}
}
System.out.println("====================");
JinZiTa1 ta = new JinZiTa1();
ta.printTa(10);
}
}
package com.powernode.test1;
/*
【程序4】
打印出所有的"水仙花数",所谓"水仙花数"是指一
个三位数,其各位数字立方和等于该数本身。例如:
153是一个"水仙花数",因为153=1的三次方+5的三次方
+3的三次方。
1.程序分析:利用for循环控制100-999个数,
每个数分解 出个位,十位,百位。
*/
public class Narcissus {
/**
* 判断指定的num是否是水仙花数
* @param num 要判读的数
* @return 是否是水仙花数,true 表示是
*/
public boolean isNarcissus(int num){
// 分别从这个数中拆分出个位数值,十位数值,百位数值
int baiWei = num/100; //百位数值
int shiWei = num/10%10; // 十位数值
int geWei = num%100%10; // 个位数值
if(num == liFang(baiWei) + liFang(shiWei) + liFang(geWei) ){
return true;
}else{
return false;
}
}
/**
* 计算指定的数值的立方
* @param num 要计算的数
* @return 该数的立方
*/
private int liFang(int num){
return num * num * num;
}
}package com.powernode.test1;
public class JinZiTa1 {
/**
* 打印金子塔
* @param level 金字塔的层数
*/
public void printTa(int level){
for(int i = 0;i<level;i++){
// 控制金子塔每层前面的空格
// 如果总共是5层,则第一层要打印4个空格,
// 第二层要打印3个空格,则控制空格个数的
// 表达式为j<n-i
for(int j=0;j<level-i;j++ ){
System.out.print(" ");//空格数
}
// 控制每层金字塔打印的*号的个数
// 当i=0时,第一层金字塔 :for(int k = 0; k <= 0; k++),打印一个*号
// 当i=1时,第二层金字塔 :for(int k = 0; k <= 2; k++):打印三个*号
for(int k=0;k<=i*2;k++){
System.out.print("*");//星号数
}
System.out.println("");
}
}
}// java源文件中只能有一个package语句,并且只能放在代码的第一行
// 包明的命名规范:所有的包名都是小写的
// 动力节点的域名 powernode.com;
// 实际命名包名的时候:com.powernode.xxx
// java中打包是为了把功能相同的一些类组织到一起
package com.powernode.test1;
// 类里面是什么?属性和方法构造方法
public class Student{
// 对于成员变量,系统会自动的进行初始化(0,null)
private int age;
private String name;
public void setName(String _name){
name =_name;
}
public String getName(){
return name;
}
public void setAge(int _age){
/*
if(_age <0 || _age >130){
System.out.println(_age + " 不是有效的年龄");
}else{
age = _age;
}
*/
if(_age <0 || _age >130){
System.out.println(_age + " 不是有效的年龄");
return;
}
age = _age;
}
public int getAge(){
return age;
}
public void study(String className){
System.out.println(name + " 在学习:" + className + " 他的年龄是:" + age);
}
// 当我们自己提供了有参数的构造方法之后,系统默认的无参数的构造方法就不会再提供了
// 如果还想要用无参数的构造方法,只能自己提供
// 在一个类中,可以同时提供多个构造方法,这种形式叫做:构造方法重载(Overload)
// 必须是构造方法的参数列表不同(参数的个数,参数的类型,参数的顺序)
public Student(String _name,int _age){
name =_name;
age =_age;
}
public Student(){
}
}package com.powernode.test;
// 一个java源文件中只能有一个package语句
// 但是可以有多个import语句
// 注意:import com.powernode.test1.*;
// 以上的语句只能导入test1目录中的字节码
// 但是test1目录里面的子目录中的字节码是无法导入的
import com.powernode.test1.*;
//import com.powernode.test1.Narcissus;
public class StudentTest {
public static void main(String[] args) {
//Student stu = new Student("張1",21);
Student stu = new Student();
stu.setAge(23);
stu.setName("张1");
stu.study("CoreJava");
System.out.println("====================");
Narcissus n = new Narcissus();
for(int i = 100;i<1000;i++){
if(n.isNarcissus(i)){
System.out.println(i + " 是水仙花数!");
}
}
System.out.println("====================");
JinZiTa1 ta = new JinZiTa1();
ta.printTa(10);
}
}