คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 2
1. iterate ใช้ for ตามค่าหลักในส่วนที่เป็นจำนวนเต็ม
ตัวอย่าง
100000 มีค่าหลัก = 6
1000000 มีค่าหลัก = 7
หลักซ้ายสุด (6 และ 7 ตามลำดับในตัวอย่าง) เรา "หลับหูหลับตา" พิมพ์หลักนี้โดยไม่สนใจคอมม่าได้เลยจริงมั้ยครับ
หลักที่เหลือมาทางขวาทั้งหมด (ก่อน decimal point) ถ้าค่าหลักหารสามลงตัว พิมพ์ , ก่อนพิมพ์ค่าในหลัก
จากนั้นพิมพ์จากตำแหน่งของ . รวมถึงที่เหลือทั้งหมดต่อไปตรง ๆ ได้เลย
2. คุณสามารถ iterate for บนค่าที่เคลื่อนไหวมากกว่า 1 ค่าได้นะครับ
int a = x;
int b = y;
for ( ; a > 0; --a, ++b) {
...
}
3. เปลี่ยน prinf %c เป็น putchar(',') , putchar(num[index])
เห็นจขกท.
- หา index ชอง decimal point ได้แล้ว
- หาค่าหลักในส่วนของจำนวนเต็มก็ได้แล้ว
ยังไงลองเขียนใหม่ดู ต่อจุดนั้นแหละครับ
ตัวอย่าง
100000 มีค่าหลัก = 6
1000000 มีค่าหลัก = 7
หลักซ้ายสุด (6 และ 7 ตามลำดับในตัวอย่าง) เรา "หลับหูหลับตา" พิมพ์หลักนี้โดยไม่สนใจคอมม่าได้เลยจริงมั้ยครับ
หลักที่เหลือมาทางขวาทั้งหมด (ก่อน decimal point) ถ้าค่าหลักหารสามลงตัว พิมพ์ , ก่อนพิมพ์ค่าในหลัก
จากนั้นพิมพ์จากตำแหน่งของ . รวมถึงที่เหลือทั้งหมดต่อไปตรง ๆ ได้เลย
2. คุณสามารถ iterate for บนค่าที่เคลื่อนไหวมากกว่า 1 ค่าได้นะครับ
int a = x;
int b = y;
for ( ; a > 0; --a, ++b) {
...
}
3. เปลี่ยน prinf %c เป็น putchar(',') , putchar(num[index])
เห็นจขกท.
- หา index ชอง decimal point ได้แล้ว
- หาค่าหลักในส่วนของจำนวนเต็มก็ได้แล้ว
ยังไงลองเขียนใหม่ดู ต่อจุดนั้นแหละครับ
แสดงความคิดเห็น
ภาษา C โค้ดใส่ comma ทำไมใส่แล้วเลขเพี้ยนครับ
เวลาใส่เลขมากๆ แล้ว run ก็ปกติครับ แต่พอเศษส่วนเพิ่มนิดหน่อยก็เพี้ยนแล้ว
หรือ ตัวเลขปกติพอใส่ค่ามากๆ ก็แสดงค่าเพี้ยนครับ พอมีแนวทาง หรือวิธีการแก้ไขมั้ยครับ T T (จนปัญญา orz )
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้