Trước khi làm các bài tập Java 1 chương 1, sinh viên phải đọc và thực hành được các topic sau:
Cách thiết lập biến môi trường để chạy Java ở cơ chế command line
Ví dụ biên dịch và thực thi Java source bằng Command Line Download và cài đặt JDK
Bài 1: Thao tác với toán tử trong Java.
import java.util.*;
public class MathOps {
//method to print a string and an int
static void printInt(String s, int i) {
System.out.println(s + ” = ” + i);
}
//method to print a string and a float
static void printFloat(String s, float f) {
System.out.println(s + ” = ” + f);
}
public static void main(String[] args) {
Random random = new Random();
int i, j, k;
//Choose value from 1 to 100
j = random.nextInt (100) + 1;
k = random.nextInt (100) + 1;
printInt(“j”, j);
printInt(“k” , k);
i = j + k; printInt(“j + k”, i);
i = j – k; printInt(“j – k”, i);
i = j/ k; printInt(“j/k”, i);
i = j * k; printInt(“j * k”, i);
i = j % k; printInt(“j % k”, i);
j %= k; printInt(“j %= k” , j);
// Floating-point number tetts
float u, v, w; // also applies to doubles
v = random.nextFloat ();
w = random.nextFloat ();
printFloat(“v”, v);
printFloat(“w”, w);
u = v + w; printFloat(“v + w”, u); // contd…
u = v – w; printFloat(“v – w”, u);
u = v * w; printFloat(“v * w”, u);
u = v / w; printFloat(“v/w”, u);
//The following also works for char, byte, short, int, long, and double
u += v; printFloat(“u += v”, u);
u -= v; printFloat(“u -= v”, u);
u *= v; printFloat(“u *= v”, u);
u /= v; printFloat(“u /= v”, u);
}
}
Kết quả được xuất ra là gì? Giải thích các toán tử trên.
Bài 2: Thao tác với toán tử tự động tăng giảm.
public class AutoInc_DecOps {
public static void main(String[] args) {
int i = 1;
System.out.println(“i : ” + i);
System.out.println(“++i : ” + ++i); // Pre-increment
System.out.println(“i++ : ” + i++); // Post-increment
System.out.println(“i : ” + i);
System.out.println(“–i : ” + –i); // Pre-decrement
System.out.println(“i– : ” + i–); // Post-decrement
System.out.println(“i : ” + i);
}
}
Kết quả được xuất ra là gì? Giải thích.
Bài 3: Thao tác với toán tử logic
import java.util.*;
public class Rel_LogOps {
public static void main(String[] args) {
Random random = new Random();
int i = random.nextInt (100);
int j = random.nextInt (100);
// Using Relational Operators
System.out.println(“i = ” + i);
System.out.println(“j = ” + j);
System.out.println(“i > j is ” + (i > j));
System.out.println(“i < j is ” + (i < j));
System.out.println(“i >= j is ” + (i >= j));
System.out.println(“i <= j is ” + (i <= j));
System.out.println(“i == j is ” + (i == j));
System.out.println(“i != j is ” + (i != j));
//Using Logical Operators
System.out.println(“(i < 10) && (j<10) is ” +
((i<10)&&(j<10)) );
System.out.println(“(i < 10) || (j<10) is ” +
((i<10)||(j<10)) );
}
}
Kết quả được xuất ra là gì? Giải thích
Bài 4:
Viết chương trình in ra tổng của 10 số chẵn đầu tiên (sử dụng vòng lặp for hoặc while)
Bài 5:
Viết chương trình in ra những số lẻ từ 1 đến 99.
Bài 6:
Viết chương trình xuất ra tổng các số là bội số của 7 (từ 1 đến 100)
Bài 7:
Viết chương trình in ra tổng 1+2+3….+n với n được nhập từ tham số command line
Bài 8:
Viết chương trình in ra tổng 1+3+5….+n nếu n là số chẳn, 2+4+6+….n nếu n là số lẻ. Giá trị n được nhập vào từ tham số command line
Bài 9:
Viết chương trình in ra giá trị lớn nhất và nhỏ nhất trong một dãy các giá trị user đã nhập vào từ tham số command line.
Bài 10:
Viết chương trình giải phương trình bậc 1 với hệ số a, b được nhập vào bởi user từ tham số command line.
Bài 11:
Viết chương trình đọc một giá trị nguyên từ bàn phím và in ra số đó là số chẵn, lẻ hoặc zero
Bài 12:
Viết chương trình in ra bội số của 3 từ 300 đến 3
Bài 13:
Viết chương trình in ra số lần kí tự ‘a’ xuất hiện trong một chuỗi.
Bài 14:
Viết chương trình in ra những hình sau: (mỗi hình sử dụng những vòng lặp khác nhau)