/* bài viết thuộc loạt bài hướng dẫn trong "khóa học lập trình java miễn phí"
trên diễn đàn android.vn, bạn có thể vào đây đọc
để hiểu hơn về khóa học và tham gia ngay cùng mọi người */
1, toán tử số học:
view attachment 16729
ví dụ:
Mã nguồn PHP:
[color=#000000]
[/color][color=#007700]public class [/color][color=#0000bb]sohoc [/color][color=#007700]{ public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]int a[/color][color=#007700], [/color][color=#0000bb]b[/color][color=#007700], [/color][color=#0000bb]du[/color][color=#007700], [/color][color=#0000bb]nguyen[/color][color=#007700]; [/color][color=#0000bb]a [/color][color=#007700]= [/color][color=#0000bb]10[/color][color=#007700]; [/color][color=#0000bb]b [/color][color=#007700]= [/color][color=#0000bb]3[/color][color=#007700]; [/color][color=#0000bb]du [/color][color=#007700]= [/color][color=#0000bb]a [/color][color=#007700]% [/color][color=#0000bb]b[/color][color=#007700]; [/color][color=#0000bb]nguyen [/color][color=#007700]= [/color][color=#0000bb]a [/color][color=#007700]/ [/color][color=#0000bb]b[/color][color=#007700]; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"phần dư (a:b) là: " [/color][color=#007700]+ [/color][color=#0000bb]du[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"phần nguyên (a:b) là: " [/color][color=#007700]+ [/color][color=#0000bb]nguyen[/color][color=#007700]); [/color][color=#0000bb]a[/color][color=#007700]++; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"giá trị a đã tăng lên 1, giá trị mới là: " [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700]); [/color][color=#0000bb]b[/color][color=#007700]--; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"giá trị của b đã giảm đi 1, giá trị mới là: " [/color][color=#007700]+ [/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"với 2 giá trị a, b mới trên, tích (a x b) = " [/color][color=#007700]+ [/color][color=#0000bb]a [/color][color=#007700]* [/color][color=#0000bb]b[/color][color=#007700]); }}[/color]
lưu ý: với 2 câu lệnh a= a+1 và a++ có kết quả là như nhau, nhưng về bản chất có sự khác biệt:
a = a+1 là gán a bằng giá trị a+1, còn phép a++ là tăng a lên 1, phép a++ đỡ tốn tài nguyên hơn, cú pháp ngắn gọn, các bạn nên chọn cách này để chương trình tối ưu hơn
2, toán tử trên quan hệ, logic:
view attachment 16730
ví dụ:
Mã nguồn PHP:
[color=#000000]
[/color][color=#007700]public class [/color][color=#0000bb]quanhelogic [/color][color=#007700]{ public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]boolean sosanh[/color][color=#007700]; [/color][color=#0000bb]int a[/color][color=#007700], [/color][color=#0000bb]b[/color][color=#007700]; [/color][color=#0000bb]a [/color][color=#007700]= [/color][color=#0000bb]5[/color][color=#007700]; [/color][color=#0000bb]b [/color][color=#007700]= [/color][color=#0000bb]10[/color][color=#007700]; [/color][color=#0000bb]sosanh [/color][color=#007700]= ([/color][color=#0000bb]a [/color][color=#007700]== [/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"kết quả so sánh " [/color][color=#007700]+ [/color][color=#0000bb]a [/color][color=#007700]+ [/color][color=#dd0000]"=" [/color][color=#007700]+ [/color][color=#0000bb]b [/color][color=#007700]+ [/color][color=#dd0000]" không? " [/color][color=#007700]+ [/color][color=#0000bb]sosanh[/color][color=#007700]); [/color][color=#0000bb]sosanh [/color][color=#007700]= ([/color][color=#0000bb]a [/color][color=#007700]< [/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"kết quả so sánh " [/color][color=#007700]+ [/color][color=#0000bb]a [/color][color=#007700]+ [/color][color=#dd0000]"<" [/color][color=#007700]+ [/color][color=#0000bb]b [/color][color=#007700]+ [/color][color=#dd0000]" không? " [/color][color=#007700]+ [/color][color=#0000bb]sosanh[/color][color=#007700]); [/color][color=#0000bb]sosanh [/color][color=#007700]= ([/color][color=#0000bb]a[/color][color=#007700]!=[/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"kết quả so sánh " [/color][color=#007700]+ [/color][color=#0000bb]a [/color][color=#007700]+ [/color][color=#dd0000]"#" [/color][color=#007700]+ [/color][color=#0000bb]b [/color][color=#007700]+ [/color][color=#dd0000]" không? " [/color][color=#007700]+ [/color][color=#0000bb]sosanh[/color][color=#007700]); [/color][color=#0000bb]sosanh [/color][color=#007700]= ([/color][color=#0000bb]a [/color][color=#007700]>= [/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"kết quả so sánh " [/color][color=#007700]+ [/color][color=#0000bb]a [/color][color=#007700]+ [/color][color=#dd0000]">=" [/color][color=#007700]+ [/color][color=#0000bb]b [/color][color=#007700]+ [/color][color=#dd0000]" không? " [/color][color=#007700]+ [/color][color=#0000bb]sosanh[/color][color=#007700]); [/color][color=#0000bb]sosanh [/color][color=#007700]= ([/color][color=#0000bb]a [/color][color=#007700]< [/color][color=#0000bb]b[/color][color=#007700])||([/color][color=#0000bb]a[/color][color=#007700]==[/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"kết quả so sánh " [/color][color=#007700]+ [/color][color=#0000bb]a [/color][color=#007700]+ [/color][color=#dd0000]"<=" [/color][color=#007700]+ [/color][color=#0000bb]b [/color][color=#007700]+ [/color][color=#dd0000]" không? " [/color][color=#007700]+ [/color][color=#0000bb]sosanh[/color][color=#007700]); [/color][color=#0000bb]sosanh [/color][color=#007700]= ![/color][color=#0000bb]true[/color][color=#007700]; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"biến sosanh được gán bằng giá trị phủ định của true, giá trị đó là: "[/color][color=#007700]+[/color][color=#0000bb]sosanh[/color][color=#007700]); }}[/color]
3, toán tử trên bit:
view attachment 16731
- ở kiến thức cơ bản, chúng ta chưa nghiên cứu sâu vào những toán tử này, mình chỉ chú ý tới 2 phép đó là dịch trái, dịch phải. hiểu cơ bản thì dịch trái dịch phải n bit cho kết quả giống việc bạn nhân với 2^n và chia cho 2^n (dịch trái – nhân, dịch phải - chia)
- vd số 16:
dịch trái đi 2 bit thì kết quả là nhân 16 x 2^2 = 64
dịch phải đi 3 bit thì kết quả là chia 16 : (2^3) = 2
- vậy tại sao có phép nhân, phép chia rồi, chúng ta lại cần biết 2 phép này. vì 2 phép này tiết kiệm tài nguyên hệ thống hơn là bạn dùng phép chia thông thường. nói chung, khi có thể, bạn nên dùng 2 phép này để chương trình chạy nhanh hơn. nó cũng thể hiện tính chuyên nghiệp trong cách lập trình của bạn!
(phần này đa số các bạn học cntt cơ bản đều được học, mình sẽ không giải thích nhiều, bạn nào chưa hiểu có thể tìm trên mạng xem. nếu thấy không ổn, mình sẽ viết 1 bài viết nói về phần này!)
để biết cú pháp và cách sử dụng 2 phép này, bạn tham khảo chương trình dưới đây:
Mã nguồn PHP:
[color=#000000]
[/color][color=#007700]public class [/color][color=#0000bb]phepdich [/color][color=#007700]{ public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]int a[/color][color=#007700], [/color][color=#0000bb]dichphai1[/color][color=#007700], [/color][color=#0000bb]dichphai2[/color][color=#007700], [/color][color=#0000bb]dichtrai1[/color][color=#007700], [/color][color=#0000bb]dichtrai2[/color][color=#007700]; [/color][color=#0000bb]a [/color][color=#007700]= [/color][color=#0000bb]16[/color][color=#007700]; [/color][color=#0000bb]dichtrai1 [/color][color=#007700]= [/color][color=#0000bb]a [/color][color=#007700]<< [/color][color=#0000bb]1[/color][color=#007700]; [/color][color=#0000bb]dichtrai2 [/color][color=#007700]= [/color][color=#0000bb]a [/color][color=#007700]<< [/color][color=#0000bb]2[/color][color=#007700]; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"giá trị a ban đầu: " [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"khi a dịch trái 1 bit thì giá trị là: " [/color][color=#007700]+ [/color][color=#0000bb]dichtrai1[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"khi a dịch trái 2 bit thì giá trị là: " [/color][color=#007700]+ [/color][color=#0000bb]dichtrai2[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"
"[/color][color=#007700]); [/color][color=#ff8000]// xuống dòng [/color][color=#0000bb]dichphai1 [/color][color=#007700]= [/color][color=#0000bb]a [/color][color=#007700]>> [/color][color=#0000bb]1[/color][color=#007700]; [/color][color=#ff8000]// dịch phải 1 bit [/color][color=#0000bb]dichphai2 [/color][color=#007700]= [/color][color=#0000bb]a [/color][color=#007700]>> [/color][color=#0000bb]2[/color][color=#007700]; [/color][color=#ff8000]// dịch phải 2 bit [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"giá trị a ban đầu: " [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"khi a dịch phải 1 bit thì giá trị là: " [/color][color=#007700]+ [/color][color=#0000bb]dichphai1[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"khi a dịch phải 2 bit thì giá trị là: " [/color][color=#007700]+ [/color][color=#0000bb]dichphai2[/color][color=#007700]); }}[/color]
4, toán tử ép kiểu:
- ép kiểu rộng (widening conversion): từ kiểu nhỏ sang
kiểu lớn (không mất mát thông tin)
- ép kiểu hẹp (narrow conversion): từ kiểu lớn sang kiểu
nhỏ (có khả năng mất mát thông tin)
<tên biến> = (kiểu_dữ_liệu) <tên_biến>;
bạn hãy tham khảo chương trình nhỏ sau:
Mã nguồn PHP:
[color=#000000]
[/color][color=#007700]public class [/color][color=#0000bb]epkieu [/color][color=#007700]{ public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]float sothuc[/color][color=#007700]; [/color][color=#0000bb]int songuyen[/color][color=#007700]; [/color][color=#0000bb]sothuc [/color][color=#007700]= [/color][color=#0000bb]10.6f[/color][color=#007700]; [/color][color=#0000bb]songuyen [/color][color=#007700]= (int) [/color][color=#0000bb]sothuc[/color][color=#007700]; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"số thực vào là: " [/color][color=#007700]+ [/color][color=#0000bb]sothuc[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"số nguyên ép kiểu từ số thực là: " [/color][color=#007700]+ [/color][color=#0000bb]songuyen[/color][color=#007700]); }}[/color]
5, một số hàm toán học:
các bạn thao tác như sau, gõ “math.” (có dấu chấm phía cuối), rồi ấn ctrl + “cách”, ide sẽ gợi ý cho bạn sẽ thấy rất nhiều hàm toán học có sẵn trong java, bạn kéo xuống và chọn cái bạn cần.
vd: math.min(a,b): tìm giá trị nhỏ nhất của 2 số a và b
math.sqrt(b): tính căn của số b
bạn xem ví dụ để hiểu một số hàm này
Mã nguồn PHP:
[color=#000000]
[/color][color=#007700]public class [/color][color=#0000bb]toanhoc [/color][color=#007700]{ public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]float a [/color][color=#007700]= -[/color][color=#0000bb]3.2f[/color][color=#007700]; [/color][color=#0000bb]float b [/color][color=#007700]= [/color][color=#0000bb]16.4f[/color][color=#007700]; [/color][color=#0000bb]float trituyetdoi[/color][color=#007700]; [/color][color=#0000bb]float can[/color][color=#007700]; [/color][color=#0000bb]float min[/color][color=#007700]; [/color][color=#0000bb]trituyetdoi [/color][color=#007700]= [/color][color=#0000bb]math[/color][color=#007700].[/color][color=#0000bb]abs[/color][color=#007700]([/color][color=#0000bb]a[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"giá trị tuyệt đối của a là: "[/color][color=#007700]+[/color][color=#0000bb]trituyetdoi[/color][color=#007700]); [/color][color=#0000bb]can [/color][color=#007700]= (float) [/color][color=#0000bb]math[/color][color=#007700].[/color][color=#0000bb]sqrt[/color][color=#007700]([/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"căn của b là: "[/color][color=#007700]+[/color][color=#0000bb]can[/color][color=#007700]); [/color][color=#0000bb]min [/color][color=#007700]= [/color][color=#0000bb]math[/color][color=#007700].[/color][color=#0000bb]min[/color][color=#007700]([/color][color=#0000bb]a[/color][color=#007700], [/color][color=#0000bb]b[/color][color=#007700]); [/color][color=#ff8000]// hàm tìm giá trị nhỏ nhất của 2 số [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"giá trị nhỏ nhất của 2 số a và b là: "[/color][color=#007700]+[/color][color=#0000bb]min[/color][color=#007700]); } }[/color]
ngoài bài viết trên, bạn cũng nên tham khảo thêm 1 video khá ngắn gọn và dễ hiểu của anh việt bên blog studyandshare
bài tập về nhà: :d
view attachment 16732
bài 1: các biến a, b, c là các số nguyên. gán giá trị cho các biến. tìm phần nguyên khi chia các số này cho 2, tìm phần dư khi chia các số này cho 3, in kết quả ra màn hình. tăng giá trị a, b, c mỗi biến lên 1, in giá trị 3 số ra màn hình.
bài 2: giải phương trình 2ax+b = 8c với a, b, c là số thực – được gán giá trị trong chương trình, x cũng là số thực, là giá trị cần tìm. sau khi tính x in kết quả ra màn hình, ép kiểu x về số nguyên, in kết quả ép kiểu của x ra màn hình!
bài 3: cho a, b, c là độ dài 3 cạnh tam giác, a, b, c được gán giá trị trong chương trình. viết chương trình tính diện tích s của tam giác, in kết quả ra màn hình. tìm số đo 3 góc của tam giác đó, in kết quả ra màn hình.
(chú ý: các bạn nên tự giác làm bài tập, hoàn thiện rồi đăng lên, các bài bạn đã làm, nên để code trong thẻ code - chọn thẻ php cho rõ ràng và để ẩn code trong thẻ ẩn spoiler, để khi click vào mới hiện code lên , trước khi thử sức tự làm, bạn không nên nhìn code của các bạn khác đã đăng nhé )
view attachment 16922
my facebook: https://www.facebook.com/tiasangmoi
bài viết đăng lên diễn đàn khác vui lòng ghi rõ nguồn: android.vn
Khu dự án Diamond Alnata Plus phát triển bởi Gamuda Land thiết kế hợp lý nằm trung tâm thông gió tự nhiên. Diamond Alnata Plus Tân Phú thiết kế hợp lý sống đích thực ngay giữa trung tâm. Căn hộ cách...
Khu dự án Diamond Alnata Plus giáp trung tâm