Java入門小程式
阿新 • • 發佈:2018-11-12
學完C後,便想上手Java,這兩天寫了一些小程式碼
1.打印出九九乘法表
package 九九乘法表;
public class demo {
public static void main(String[] args)
{
for(int i= 1; i<= 9;i++)
{
for(int j =0; j<=i;j++)
{
System.out.println(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();
}
}
}
2.用 while 和 for 迴圈分別計算 100 以內奇數和偶數的和,並輸出。
package demo; //用 while 和 for 迴圈分別計算 100 以內奇數和偶數的和,並輸出。 public class demo { public static void main(String[] args) { int sum1 = 0; int sum2 = 0; //測試for迴圈 for(int i = 1; i<100 ;i++) { if(i % 2 ==0) { sum1+=i; } } //測試while迴圈 int j = 1; while( j<100) { if(j % 2 != 0) { sum2+=j; } j++; } System.out.println("for迴圈輸出:\n"+"100內偶數和:"+sum1); System.out.println("while迴圈輸出:\n"+"100以內奇數和"+sum2); } }
3.用 while 和 for 迴圈輸出 1-1000 之間能被 5 整除的數,且每行輸出 3 個
//用 while 和 for 迴圈輸出 1-1000 之間能被 5 整除的數,且每行輸出 3 個 package demo; public class demo { public static void main(String[] args) { //while迴圈 int i = 1; int count = 0; int num = 0; System.out.println("while迴圈:"); while(i<1000) { if(i%5==0) { System.out.println(i); count++; } if(count%3==0) { System.out.print("\n"); } i++; } //for迴圈 System.out.println("for迴圈:"); for(int j = 1;j < 1000;j++) { if(j%5==0) { System.out.println(j); num++; } if(num%3==0) { System.out.print("\n"); } } } }
4.程式設計求:∑1+∑2+……+∑100
package demo;
public class demo {
public static void main(String[] args)
{
int count = 0;
for(int i = 0;i<=100;i++)
{
count+=i;
}
System.out.println("一加一百的和為:"+count);
}
}
5.生成 0-100 隨機數,直到生成 88 為止,停止迴圈!
package demo;
import java.util.Random;
public class demo {
public static void main(String[] args)
{
int a =-1;
Random ss = new Random();
while(a!=88)
{
a = ss.nextInt(101);
System.out.println("隨機數為:"+a);
}
}
}
6.打印出實心 10*10 正方形、空心 10*10 正方形
package demo;
//打印出實心 10*10 正方形、空心 10*10 正方形
public class demo {
public static void main(String[] args)
{
int num = 10;
//實心正方形
for(int i = 0;i<num;i++)
{
for(int j= 0;j<num;j++)
{
System.out.print("*");
if(j==9)
{
System.out.println();
}
}
}
System.out.println("\n|||||||||||||||||||||||||||||||||||||||||||||||\n");
//空心的正方形
for(int i=0;i<num;i++)
{
System.out.print("*");
}
System.out.print("\n");
for(int i= 0;i<num-2;i++)
{
for(int j =0; j<num-2; j++)
{
if(j==0)
{
System.out.print("*");
}
System.out.print(" ");
if(j==num-3)
{
System.out.println("*");
}
}
}
for(int i=0;i<num;i++)
{
System.out.print("*");
}
}
}
7.將上面列印實心和空心正方形練習中相關程式碼,封裝成方法,便於重用
package demo;
import java.util.Scanner;
public class demo {
private int num;
demo()
{
System.out.println("請輸入正方形的邊長:");
Scanner ss = new Scanner(System.in);
num = ss.nextInt();
}
public void shi_zheng()
{
for(int i = 0;i<num;i++)
{
for(int j= 0;j<num;j++)
{
System.out.print("*");
if(j==num-1)
{
System.out.println();
}
}
}
}
public void xu_zheng()
{
for(int i=0;i<num;i++)
{
System.out.print("*");
}
System.out.print("\n");
for(int i= 0;i<num-2;i++)
{
for(int j =0; j<num-2; j++)
{
if(j==0)
{
System.out.print("*");
}
System.out.print(" ");
if(j==num-3)
{
System.out.println("*");
}
}
}
for(int i=0;i<num;i++)
{
System.out.print("*");
}
}
}
package demo;
public class testdemo {
public static void main(String[] args)
{
demo p = new demo();
System.out.println("實心正方形:");
p.shi_zheng();
System.out.println("空心正方形:");
p.xu_zheng();
}
}
8.使用遞迴演算法完成階乘:1!+2!+3!+4!+5!
package demo;
import java.util.Scanner;
//思路:先用遞迴求出一個數的階乘,接著for迴圈累加求和。
public class demo {
//a!
static long a(int m)
{
if(m==1)
{
return 1;
}
else
{
return m*a(m-1);
}
}
public static void main(String[] args)
{
int m = 0;
long sum =0;
System.out.println("請輸入階乘計算的最後一個整數:");
Scanner ss = new Scanner(System.in);
m = ss.nextInt();
ss.close();
//a!+(a-1)!+......+1!
for(int i = m;i>0;i--)
{
sum = sum + a(i) ;
}
System.out.println(sum);
}
}