Fortran - โอเปอเรเตอร์
ตัวดำเนินการคือสัญลักษณ์ที่บอกให้คอมไพเลอร์ดำเนินการทางคณิตศาสตร์หรือตรรกะเฉพาะ Fortran มีตัวดำเนินการประเภทต่อไปนี้ -
- ตัวดำเนินการเลขคณิต
- ตัวดำเนินการเชิงสัมพันธ์
- ตัวดำเนินการทางตรรกะ
ให้เราดูตัวดำเนินการเหล่านี้ทั้งหมดทีละตัว
ตัวดำเนินการเลขคณิต
ตารางต่อไปนี้แสดงตัวดำเนินการเลขคณิตทั้งหมดที่ Fortran สนับสนุน สมมติตัวแปรA ถือ 5 และตัวแปร B ถือ 3 แล้ว -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
+ | ตัวดำเนินการเพิ่มเติมเพิ่มตัวถูกดำเนินการสองตัว | A + B จะให้ 8 |
- | ตัวดำเนินการลบลบตัวถูกดำเนินการที่สองออกจากตัวดำเนินการตัวแรก | A - B จะให้ 2 |
* | ตัวดำเนินการคูณคูณตัวถูกดำเนินการทั้งสอง | A * B จะให้ 15 |
/ | Division Operator หารตัวเศษด้วย de-numerator | A / B จะให้ 1 |
** | Exponentiation Operator ยกตัวถูกดำเนินการหนึ่งตัวขึ้นสู่อำนาจของอีกตัวหนึ่ง | A ** B จะให้ 125 |
ตัวดำเนินการเชิงสัมพันธ์
ตารางต่อไปนี้แสดงตัวดำเนินการเชิงสัมพันธ์ทั้งหมดที่ Fortran สนับสนุน สมมติตัวแปรA ถือ 10 และตัวแปร B ถือ 20 แล้ว -
แสดงตัวอย่าง
ตัวดำเนินการ | เทียบเท่า | คำอธิบาย | ตัวอย่าง |
---|---|---|---|
== | .eq. | ตรวจสอบว่าค่าของตัวถูกดำเนินการสองค่าเท่ากันหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง | (A == B) ไม่เป็นความจริง |
/ = | .ne. | ตรวจสอบว่าค่าของตัวถูกดำเนินการสองค่าเท่ากันหรือไม่หากค่าไม่เท่ากันเงื่อนไขจะกลายเป็นจริง | (A! = B) เป็นจริง |
> | .gt. | ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายมากกว่าค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง | (A> B) ไม่เป็นความจริง |
< | .lt. | ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายน้อยกว่าค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง | (A <B) เป็นจริง |
> = | .ge. | ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายมากกว่าหรือเท่ากับค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง | (A> = B) ไม่เป็นความจริง |
<= | .le. | ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายน้อยกว่าหรือเท่ากับค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง | (A <= B) เป็นจริง |
ตัวดำเนินการทางตรรกะ
ตัวดำเนินการทางตรรกะใน Fortran ทำงานเฉพาะกับค่าตรรกะ. true และ. false
ตารางต่อไปนี้แสดงตัวดำเนินการทางตรรกะทั้งหมดที่ Fortran สนับสนุน สมมติตัวแปร A ถือ. true และตัวแปร B ถือ. false แล้ว -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
.และ. | เรียกว่าตัวดำเนินการ Logical AND ถ้าตัวถูกดำเนินการทั้งสองไม่ใช่ศูนย์เงื่อนไขจะกลายเป็นจริง | (A. และ. B) เป็นเท็จ |
.หรือ. | เรียกว่า Logical OR Operator หากตัวถูกดำเนินการสองตัวใดตัวหนึ่งไม่ใช่ศูนย์เงื่อนไขจะกลายเป็นจริง | (อ. ข.) เป็นความจริง |
.ไม่. | เรียกว่า Logical NOT Operator ใช้เพื่อย้อนกลับสถานะตรรกะของตัวถูกดำเนินการ หากเงื่อนไขเป็นจริงตัวดำเนินการ Logical NOT จะสร้างเท็จ | ! (ก. และ. ข) จริง. |
.eqv. | เรียกว่าตัวดำเนินการเทียบเท่าเชิงตรรกะ ใช้เพื่อตรวจสอบความเท่าเทียมกันของค่าตรรกะสองค่า | (A .eqv. B) เป็นเท็จ |
.neqv. | เรียกว่า Logical NON-EQUIVALENT Operator ใช้เพื่อตรวจสอบความไม่เท่ากันของค่าตรรกะสองค่า | (A .neqv. B) เป็นจริง |
ลำดับความสำคัญของตัวดำเนินการใน Fortran
ลำดับความสำคัญของตัวดำเนินการกำหนดการจัดกลุ่มคำศัพท์ในนิพจน์ สิ่งนี้มีผลต่อวิธีการประเมินนิพจน์ ตัวดำเนินการบางอย่างมีลำดับความสำคัญสูงกว่าผู้อื่น ตัวอย่างเช่นตัวดำเนินการคูณมีลำดับความสำคัญสูงกว่าตัวดำเนินการบวก
ตัวอย่างเช่น x = 7 + 3 * 2; ที่นี่ x ถูกกำหนดให้เป็น 13 ไม่ใช่ 20 เนื่องจากตัวดำเนินการ * มีลำดับความสำคัญสูงกว่า + ดังนั้นจึงได้รับการคูณด้วย 3 * 2 ก่อนแล้วจึงเพิ่มเป็น 7
ที่นี่ตัวดำเนินการที่มีลำดับความสำคัญสูงสุดจะปรากฏที่ด้านบนสุดของตารางตัวดำเนินการที่มีค่าต่ำสุดจะปรากฏที่ด้านล่าง ภายในนิพจน์ตัวดำเนินการลำดับความสำคัญสูงกว่าจะได้รับการประเมินก่อน
แสดงตัวอย่าง
ประเภท | ตัวดำเนินการ | ความสัมพันธ์ |
---|---|---|
ไม่ใช่ตรรกะและเครื่องหมายลบ | .ไม่. (-) | จากซ้ายไปขวา |
การยกกำลัง | ** | จากซ้ายไปขวา |
หลายหลาก | * / | จากซ้ายไปขวา |
สารเติมแต่ง | + - | จากซ้ายไปขวา |
เชิงสัมพันธ์ | <<=>> = | จากซ้ายไปขวา |
ความเท่าเทียมกัน | == / = | จากซ้ายไปขวา |
ตรรกะ AND | .และ. | จากซ้ายไปขวา |
ตรรกะหรือ | .หรือ. | จากซ้ายไปขวา |
การมอบหมายงาน | = | จากขวาไปซ้าย |