การเขียนโปรแกรมส่วนใหญ่จะต้องมีการคำนวณการคณิตศาสตร์ (arithmetic calculation) มาเกี่ยวข้องด้วยเสมอ ตัวอย่างเช่น โปรแกรมคิดเกรด, โปรแกรมหาพื้นที่, โปรแกรมคำนวณดอกเบี้ย บทความนี้จะอธิบายเกี่ยวกับการดำเนินการคณิตศาสตร์ในการเขียนโปรแกรม
การดำเนินการคณิตศาสตร์ในการเขียนโปรแกรมประกอบด้วย บวก, ลบ, คูณ, หาร, หารเอาเศษ สัญลักษณ์ตัวดำเนินการเหล่านี้ในภาษา Java อาจจะแตกต่างกับทางพีชคณิต (Algebra) เล็กน้อย ดังตารางด้านล่าง
Java Operation |
Arithmetic Operator |
Algebraic Expression |
Java Expression |
Addition (บวก) |
+ |
a + 2 |
a + 2 |
Subtraction (ลบ) |
- |
a - b |
a - b |
Multiplication (คูณ) |
* |
ab |
a * b |
Division (หาร) |
/ |
a / b |
a / b |
Remainder (หารเอาเศษ) |
% |
a mod b |
a % b |
เนื่องจากโปรแกรมคอมพิวเตอร์จะมีลำดับการทำงานที่ชัดเจน สำหรับภาษา Java แล้ว ลำดับการทำงานของตัวดำเนินการคณิตศาสตร์จะให้ความสำคัญการคูณ, หาร, หารเอาเศษ ทำก่อนการบวก, ลบ
Operator |
Operation |
ลำดับการทำงาน |
* |
Multiplication (คูณ) |
คูณ, หาร, หารเอาเศษ จะทำงานก่อน บวก, ลบ ทำงานจากซ้ายไปขวา |
/ |
Division (หาร) |
% |
Remainder (หารเอาเศษ) |
+ |
Addition (บวก) |
บวก, ลบ จะทำงานหลัง คูณ, หาร, หารเอาเศษ ทำงานจากซ้ายไปขวา |
- |
Subtraction (ลบ) |
แสดงตัวอย่างการทำงานแบบเป็น Step ของการคำนวณ y = 3 * 4 * 5 + 6 * 7 + 8
Step 1 |
y = 3 * 4 * 5 + 6 * 7 + 8
3 * 4 เป็น 12
|
Step 2 |
y = 12 * 5 + 6 * 7 + 8
12 * 5 เป็น 60
|
Step 3 |
y = 60 + 6 * 7 + 8
6 * 7 เป็น 42
|
Step 4 |
y = 60 + 42 + 8
60 + 42 เป็น 102
|
Step 5 |
y = 102 + 8
102 + 8 เป็น 110
|
Step 6 |
y = 110 |
*สังเกตุว่า คูณ จะทำก่อน บวก
ตัวอย่าง Source code แสดงผลลัพธ์การคำนวณ
Source Code
public class Arithmetic {
public static void main( String args[] ) {
int result1, result2, result3, result4, result5;
result1 = 3 * 4 * 5 + 6 * 7 + 8;
result2 = 4 + 6 / 2;
result3 = (4 + 6) / 2;
result4 = 2 * (1 + 3);
result5 = ((2 + 1) * 3);
System.out.printf( "Result1 is %d\n", result1);
System.out.printf( "Result2 is %d\n", result2);
System.out.printf( "Result3 is %d\n", result3);
System.out.printf( "Result4 is %d\n", result4);
System.out.printf( "Result5 is %d\n", result5);
}
}
Output
Result1 is 110
Result2 is 7
Result3 is 5
Result4 is 8
Result5 is 9
บทความถัดไป