เวิร์กสเตชันออนไลน์ของ OnWorks Linux และ Windows

โลโก้

ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | Contents | ถัดไป>

เลขคณิตอย่างง่าย

ตัวดำเนินการเลขคณิตธรรมดาแสดงอยู่ในตารางด้านล่าง:


ตารางที่ 34-3: ตัวดำเนินการเลขคณิต


คำอธิบายผู้ประกอบการ

คำอธิบายผู้ประกอบการ

+ นอกจากนี้


ภาพ

- การลบ


ภาพ


ภาพ

* การคูณ


ภาพ

/ การหารจำนวนเต็ม


ภาพ

** ยกกำลัง


ภาพ

% โมดูโล่ (ที่เหลือ)


ภาพ


สิ่งเหล่านี้ส่วนใหญ่อธิบายตนเองได้ แต่การหารจำนวนเต็มและโมดูโลต้องการการอภิปรายเพิ่มเติม

เนื่องจากเลขคณิตของเชลล์ทำงานด้วยจำนวนเต็มเท่านั้น ผลลัพธ์ของการหารจึงเป็นจำนวนเต็มเสมอ:



[me@linuxbox ~]$ เสียงสะท้อน $(( 5 / 2 ))

2

[me@linuxbox ~]$ เสียงสะท้อน $(( 5 / 2 ))

2


สิ่งนี้ทำให้การกำหนดส่วนที่เหลือในการดำเนินการหารมีความสำคัญมากขึ้น:



[me@linuxbox ~]$ เสียงสะท้อน $(( 5 % 2 ))

1

[me@linuxbox ~]$ เสียงสะท้อน $(( 5 % 2 ))

1


โดยใช้ตัวดำเนินการหารและโมดูโล เราสามารถระบุได้ว่า 5 หารด้วย 2 ผลลัพธ์เป็น 2 โดยเหลือเศษ 1

การคำนวณส่วนที่เหลือมีประโยชน์ในการวนซ้ำ อนุญาตให้ดำเนินการตามช่วงเวลาที่กำหนดระหว่างการดำเนินการของลูป ในตัวอย่างด้านล่าง เราแสดงบรรทัดของตัวเลข โดยเน้นแต่ละผลคูณของ 5:



#! / bin / ทุบตี

# modulo: สาธิตตัวดำเนินการ modulo สำหรับ ((i = 0; i <= 20; i = i + 1)); ทำ

ส่วนที่เหลือ=$((ผม % 5))

ถ้า (( เศษ == 0 )); จากนั้น printf "<%d> " $i

อื่น

printf "%d " $i

เสร็จแล้ว

printf "\ n"

#! / bin / ทุบตี

# modulo: สาธิตตัวดำเนินการ modulo สำหรับ ((i = 0; i <= 20; i = i + 1)); ทำ

ส่วนที่เหลือ=$((ผม % 5))

ถ้า (( เศษ == 0 )); จากนั้น printf "<%d> " $i

อื่น

printf "%d " $i

เสร็จแล้ว

printf "\ n"


เมื่อดำเนินการแล้ว ผลลัพธ์จะมีลักษณะดังนี้:



[me@linuxbox ~]$ โมดูล

<0> 1 2 3 4 <5> 6 7 8 9 <10> 11 12 13 14 <15> 16 17 18 19 <20>

[me@linuxbox ~]$ โมดูล

<0> 1 2 3 4 <5> 6 7 8 9 <10> 11 12 13 14 <15> 16 17 18 19 <20>


ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: