[S S N
_Push_0][S N
S _Duplicate_0][T N
T T _Read_STDIN_as_integer][T T T _Retrieve_input][T N
S T _Print_as_integer]
เพิ่มตัวอักษรS(ช่องว่าง), T(แท็บ) และN(บรรทัดใหม่) เป็นการเน้นเท่านั้น
[..._some_action]เพิ่มเป็นคำอธิบายเท่านั้น
ลองออนไลน์ คุณจะต้องคัดลอกโค้ดด้วยตัวคุณเอง (โปรดสังเกตว่า SE แปลงแท็บให้เป็นช่องว่าง!) เพื่อเรียกใช้โค้ดที่ Whitespace-compiler ออนไลน์ vii5ard เมื่อคลิกวิ่งก็จะขอให้การป้อนข้อมูล (เช่น-285.5) -283และหลังจากการคลิกที่ใส่มันจะดำเนินต่อไปและเอาท์พุท
คำอธิบายในรหัสเทียม:
Integer i = STDIN as integer
Print i as integer
ช่องว่างสามารถใช้ I / O เป็นจำนวนเต็มหรืออักขระเดี่ยวเท่านั้นดังนั้นในกรณีนี้มันจะอ่านอินพุตเป็นจำนวนเต็มและไม่สนใจอักขระต่อท้ายอื่น ๆ Ie -283.5หรือ-283abc5ทั้งสองจะมีการป้อนข้อมูล (และเอาท์พุทจึง) -283เช่น
น่าเสียดายที่สิ่งนี้ไม่ทำงานบนTIOด้วยเหตุผลสองประการ (คอมไพเลอร์ Whitespace ทั้งหมดนั้นแตกต่างกันเล็กน้อย .. ):
- มันจะให้
no parseข้อผิดพลาดเมื่อเราพยายามอ่านอินพุตเป็นจำนวนเต็มซึ่งไม่ใช่จำนวนเต็มที่ถูกต้อง ดังนั้นเราจะอ่านตัวอักษรทีละตัวและหยุด (พร้อมข้อผิดพลาด) ทันทีที่เราพบ.หรือไม่มีการป้อนข้อมูลเพิ่มเติม (เช่น50/ -50)
- ในคอมไพเลอร์ vii5ard ก็ยังเป็นไปได้ที่จะผลักดัน 0 มีเพียง
SSNในขณะที่ใน TIO มันต้องมีการเพิ่มเติมSหรือT: /SSSN SSTNประการแรกSคือเปิดใช้งานการจัดการกองซ้อน ; ที่สองSคือกดสิ่งต่อไปนี้เป็นจำนวนเต็ม ; ที่สามS/ Tเป็นบวก / ลบตามลำดับ และใด ๆS/ Tหลังจากนั้น (ตามN) คือจำนวนที่เราต้องการที่จะผลักดันในไบนารีที่และS=0 T=1สำหรับจำนวนเต็ม 0 ส่วนไบนารีนี้ไม่สำคัญเนื่องจากเป็น 0 โดยค่าเริ่มต้น แต่ใน TIO เรายังคงต้องระบุค่าบวก / ลบและด้วยคอมไพเลอร์ Whitespace อื่น ๆ เช่น vii5ard
[N
S S N
_Create_Label_LOOP][S S S N
_Push_0][S N
S _Duplicate_0][T N
T S _Read_STDIN_as_character][T T T _Retrieve_input][S N
S _Duplicate_input][S S S T S T T T S N
_Push_46_.][T S S T _Subtract][N
T S S N
_If_0_Jump_to_Label_EXIT][T N
S S _Print_as_character][N
S N
N
_Jump_to_Label_LOOP]
เพิ่มตัวอักษรS(ช่องว่าง), T(แท็บ) และN(บรรทัดใหม่) เป็นการเน้นเท่านั้น
[..._some_action]เพิ่มเป็นคำอธิบายเท่านั้น
ลองใช้ออนไลน์ (ด้วยพื้นที่ว่างเปล่าแท็บและบรรทัดใหม่เท่านั้น)
คำอธิบายในรหัสเทียม:
Start LOOP:
Character c = STDIN as character
If(c == '.'):
Exit program
Print c as character
Go to the next iteration of LOOP
3.00สำหรับ3.14?