程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> 初學Java:整理的幾個簡單小程序以及初學心得,java小程序

初學Java:整理的幾個簡單小程序以及初學心得,java小程序

編輯:JAVA綜合教程

初學Java:整理的幾個簡單小程序以及初學心得,java小程序


整理這幾天裡寫的幾個小程序,都是循環練習
//設N是一個四位數,它的9倍恰好是其反序數
//(例如:1234的反序數是4321),求N值
package Azhi;
public class Job_5 {
public static void main(String[] args) {
for(int n=1000;n<=9999;n++){
int ge=n%10;
int shi=n%100/10;
int bai=n%1000/100;
int qian=n/1000;
int temp=ge*1000+shi*100+bai*10+qian;//求出反序數
if(temp==n*9){ //它的9倍恰好是其反序數
System.out.println(n);
}
}
}
}

/*打印出所有的 "水仙花數 ",
* 所謂 "水仙花數 "是指一個三位數,其各位數字立方和等於該數本身。
*例如:153是一個 "水仙花數 ",因為153=1的三次方+5的三次方+3的三次方*/
package Azhi;
public class Job_6 {
public static void main(String[] args) {
for(int i=100;i<999;i++){
int g=i%10;
int s=i%100/10;
int b=i/100;
int temp=g*g*g+s*s*s+b*b*b;//三位數的各位數字立方和等於該數本身
if(temp==i){
System.out.print("\t"+i);
}
}
}
}

// 計算1-2+3-4+5-.......+99-100的結果
package Azhi;
public class Job_7 {
public static void main(String[] args) {
int sum=0,sum1=0,sum2=0;
for(int i=1;i<=100;i++){
if(i%2==0){ //偶數做減法
sum1-=i;
}else {
sum2+=i; //奇數做加法
}
}
sum=sum1+sum2;
System.out.print(sum);
}
}

//求 2/1+3/2+5/3+8/5+13/8.....前20項之和
package Azhi;
public class Job_8 {
public static void main(String[] args) {
int i=0;
double x=2.0, y=1.0,z=0.0;
double sum = 0;
for (i=1;i<=20;i++){
sum=sum+x/y;
z=x;
x=x+y;
y=z;
}
System.out.print(sum);
}
}

// 輸出9*9乘法表
package Azhi;
public class Job_9 {
public static void main(String[] args) {
for(int x=1;x<=9;x++){
for(int y=1;y<=x;y++){
System.out.print("\t"+y+"×"+x+"="+y*x);
}
System.out.println();
}
}
}

/*使用while循環
計算1-1000之間7的倍數和帶有7的數字之和 7 14 17 21 27 28...*/
package Azhi;
public class Seven100 {
public static void main(String[] args) {
int i=0;
int sum=0;
while(i<=1000){
int ge=i%10;
int shi=i/10%10;
int bai=i/100;
if(i%7==0||ge==7||shi==7||bai==7){
sum+=i;
}
i++;
}
System.out.println(sum);
}
}

  這幾天編寫的都是比較簡單的小程序,但是對於我這樣的初學者來說,這些小程序是很不錯的,首先練習了基礎語法,其次通過這些小程序,加強自己對程序的認知和理解。這幾天編寫這幾個簡單的程序,我還是存在不小問題。就拿這個題“求 2/1+3/2+5/3+8/5+13/8.....前20項之和”來說,開始我找了很久都沒找到這個題的規律,找不到規律就寫不出表達式,後來想了很久實在想不到就去百度了,然後度娘給我說很簡單,我也發現的確很簡單,我開始卻想不到,可能更多的是自己練習的還比較少,對於這種題目見得不多,缺乏意識。

  再有99乘法表的輸出,開始我寫的內循環是for(int y=1;y<=9;y++),現在看來很明顯輸出一個矩形,但是當時就想不明白,說白了還是理解不足,還是旁邊的哥們兒給我說了那裡要寫成y<x,因為它在X內部循環。

  這幾天的學習,我總體感覺這個需要勤加練習,方能孰能生巧。比如之前我寫那個計算某年某月的天數,主要就是個閏年的判斷,整個程序我寫的很多,看起來很雜,很亂,但是老師講的時候,簡單幾句就完了,又回到剛才說的,多練,多做,經驗很重要。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved