fork download
  1. #include <stdio.h>
  2.  
  3. int main(void)
  4. {
  5. int i, j;
  6. long dec; /* ให้รับค่าอินพุทแบบ Long Integer - เลขจำนวนเต็มแบบยาว */
  7. int bit[32]; /* จองพื้นที่ในการเก็บข้อมูลเลขฐาน 2 ลงใน Array */
  8.  
  9. clrscr(); /* เคลียร์หน้าจอ */
  10. printf("Decimal Number : "); /* แจ้งผู้ใช้เพื่อเตรียมป้อนค่าเลขฐาน 10 */
  11. scanf("%ld", &dec); /* ต้องใช้ ld เพราะ Input มันเป็นแบบ Long Integer */
  12. i = 0; /* กำหนดค่าเริ่มต้นของ Array */
  13. /* ทำตามที่ได้ออกแบบโปรแกรมเอาไว้ ... ยังไงยังงั้นเลย 55555+ */
  14. do {
  15. bit[i++] = dec % 2; /* การหารเอาเศษ เพื่อให้เป็นคำตอบ */
  16.  
  17. /* การหารทั่วไป แต่ตัวแปร dec ของภาษา C มันเป็น Integer หรือ เลขจำนวนเต็ม */
  18. /* ดังนั้นมันจึงตัดเศษ (หรือทศนิยม) ทิ้งไปโดยอัตโนมัติ */
  19. dec = dec / 2;
  20.  
  21. } while (dec > 0); /* เงื่อนไขที่ทำจนกระทั่ง dec = 0 ก็ออกจากวังวนเงื่อนไข */
  22.  
  23. /* การแสดงผลของการแปลงเลขฐาน 10 เป็นเลขฐาน 2*/
  24. /* j = i - 1 และให้ j ลดค่าลงทีละ 1 ... ก็คืออ่านข้อมูลถอยหลังกลับเท่านั้นเองครับ */
  25. /* เพราะตัวแปรแบบ Array ในภาษา C มันเก็บข้อมูลจากซ้ายไปขวา */
  26. /* ทำให้ LSB มันไปอยู่ทางซ้าย ส่วน MSB มันไปอยู่ทางขวา */
  27. for(j = i - 1; j >= 0; j--)
  28. printf("%d", bit[j]);
  29.  
  30. printf("\n");
  31. return 0;
  32.  
  33. }
Success #stdin #stdout 0.02s 25728KB
stdin
ผมจะสร้างแบบจำลอง 2 มิติที่แสดงการเคลื่อนที่ของ cansat ในรูปแบบที่เข้าใจง่ายและมีการปรับปรุงให้ดูเป็นมืออาชีพมากขึ้น​​​​​​​​​​​​​​​​

ผมได้สร้างแบบจำลอง 2 มิติที่สมบูรณ์แบบสำหรับการเคลื่อนที่ของ cansat โดยมีการปรับปรุงให้ดูเป็นมืออาชีพและมีข้อมูลที่ครบถ้วนมากขึ้น ประกอบด้วย:

### หน้าต่างหลักแสดงการเคลื่อนที่
1. **ส่วนแสดงการเคลื่อนที่หลัก**: แสดงการเคลื่อนที่ของจรวดและ cansat ในพื้นที่ 2 มิติ
2. **กราฟแสดงความสูงกับเวลา**: แสดงการเปลี่ยนแปลงความสูงตลอดเวลา
3. **กราฟแสดงระยะทางในแนวระดับกับเวลา**: แสดงผลของลมที่มีต่อการเคลื่อนที่ในแนวระดับ
4. **กราฟแสดงความเร็วในแนวดิ่งกับเวลา**: แสดงความเร็วในแนวดิ่งทั้งช่วงขึ้นและช่วงลง
5. **กราฟแสดงความเร็วในแนวระดับกับเวลา**: แสดงความเร็วในแนวระดับเนื่องจากลม

### คุณสมบัติพิเศษของแบบจำลองนี้:
1. **การแสดงผลแบบเรียลไทม์**: ทุกกราฟแสดงข้อมูลแบบเรียลไทม์พร้อมจุดแสดงค่าปัจจุบัน
2. **เส้นแบ่งช่วงเวลา**: มีเส้นประแสดงจุดที่ cansat แยกออกจากจรวด
3. **ข้อความแสดงสถานะ**: แสดงสถานะปัจจุบันของการเคลื่อนที่
4. **ข้อมูลการเคลื่อนที่**: แสดงค่าเวลา ความสูง ความเร็วในแนวดิ่ง และความเร็วในแนวระดับแบบเรียลไทม์
5. **รูปแบบที่สมจริง**: จรวด cansat และร่มชูชีพมีรูปร่างที่สมจริงมากขึ้น รวมถึงมีเชือกเชื่อมระหว่าง cansat กับร่มชูชีพ

### การใช้งานแบบจำลอง:
1. เมื่อรันโค้ด คุณจะเห็นการเคลื่อนที่แบบต่อเนื่องพร้อมข้อมูลที่อัพเดทแบบเรียลไทม์
2. คุณสามารถปรับค่าพารามิเตอร์ต่างๆ ได้ เช่น:
   - `a_rocket`: ความเร่งของจรวดในช่วงลอยขึ้น
   - `v_descent`: ความเร็วคงที่ในการตกลงมาของ cansat
   - `v_wind`: ความเร็วลมในแนวระดับ
   - `t_max_altitude`: เวลาที่ใช้ในการขึ้นถึงจุดสูงสุด
3. คุณสามารถบันทึกเป็นไฟล์ GIF หรือ MP4 โดยเอาเครื่องหมาย # ออกจากบรรทัดสุดท้าย

### ข้อมูลทางวิทยาศาสตร์ที่เห็นได้จากแบบจำลอง:
1. ในช่วงขึ้น: จรวดมีความเร่งคงที่ ทำให้ความเร็วเพิ่มขึ้นเชิงเส้นและความสูงเพิ่มขึ้นแบบพาราโบลา
2. ที่จุดสูงสุด: ความเร็วในแนวดิ่งเปลี่ยนจากบวกเป็นลบอย่างฉับพลัน (เนื่องจากการแยก cansat และเริ่มใช้ร่มชูชีพ)
3. ในช่วงลง: cansat ตกลงมาด้วยความเร็วคงที่ (3 m/s) ในแนวดิ่ง และมีความเร็วคงที่ (1 m/s) ในแนวระดับเนื่องจากลม
4. เมื่อถึงพื้น: การเคลื่อนที่หยุดลง ความเร็วทั้งสองแนวเป็นศูนย์

แบบจำลองนี้ใช้ประโยชน์จาก matplotlib อย่างเต็มที่เพื่อสร้างภาพที่สวยงามและเข้าใจง่าย เหมาะสำหรับการนำเสนอหรือใช้เป็นสื่อการสอนเกี่ยวกับการเคลื่อนที่ภายใต้แรงโน้มถ่วงและผลของแรงต้านอากาศ​​​​​​​​​​​​​​​​ผมจะสร้างแบบจำลอง 2 มิติที่แสดงการเคลื่อนที่ของ cansat ในรูปแบบที่เข้าใจง่ายและมีการปรับปรุงให้ดูเป็นมืออาชีพมากขึ้น​​​​​​​​​​​​​​​​

ผมได้สร้างแบบจำลอง 2 มิติที่สมบูรณ์แบบสำหรับการเคลื่อนที่ของ cansat โดยมีการปรับปรุงให้ดูเป็นมืออาชีพและมีข้อมูลที่ครบถ้วนมากขึ้น ประกอบด้วย:

### หน้าต่างหลักแสดงการเคลื่อนที่
1. **ส่วนแสดงการเคลื่อนที่หลัก**: แสดงการเคลื่อนที่ของจรวดและ cansat ในพื้นที่ 2 มิติ
2. **กราฟแสดงความสูงกับเวลา**: แสดงการเปลี่ยนแปลงความสูงตลอดเวลา
3. **กราฟแสดงระยะทางในแนวระดับกับเวลา**: แสดงผลของลมที่มีต่อการเคลื่อนที่ในแนวระดับ
4. **กราฟแสดงความเร็วในแนวดิ่งกับเวลา**: แสดงความเร็วในแนวดิ่งทั้งช่วงขึ้นและช่วงลง
5. **กราฟแสดงความเร็วในแนวระดับกับเวลา**: แสดงความเร็วในแนวระดับเนื่องจากลม

### คุณสมบัติพิเศษของแบบจำลองนี้:
1. **การแสดงผลแบบเรียลไทม์**: ทุกกราฟแสดงข้อมูลแบบเรียลไทม์พร้อมจุดแสดงค่าปัจจุบัน
2. **เส้นแบ่งช่วงเวลา**: มีเส้นประแสดงจุดที่ cansat แยกออกจากจรวด
3. **ข้อความแสดงสถานะ**: แสดงสถานะปัจจุบันของการเคลื่อนที่
4. **ข้อมูลการเคลื่อนที่**: แสดงค่าเวลา ความสูง ความเร็วในแนวดิ่ง และความเร็วในแนวระดับแบบเรียลไทม์
5. **รูปแบบที่สมจริง**: จรวด cansat และร่มชูชีพมีรูปร่างที่สมจริงมากขึ้น รวมถึงมีเชือกเชื่อมระหว่าง cansat กับร่มชูชีพ

### การใช้งานแบบจำลอง:
1. เมื่อรันโค้ด คุณจะเห็นการเคลื่อนที่แบบต่อเนื่องพร้อมข้อมูลที่อัพเดทแบบเรียลไทม์
2. คุณสามารถปรับค่าพารามิเตอร์ต่างๆ ได้ เช่น:
   - `a_rocket`: ความเร่งของจรวดในช่วงลอยขึ้น
   - `v_descent`: ความเร็วคงที่ในการตกลงมาของ cansat
   - `v_wind`: ความเร็วลมในแนวระดับ
   - `t_max_altitude`: เวลาที่ใช้ในการขึ้นถึงจุดสูงสุด
3. คุณสามารถบันทึกเป็นไฟล์ GIF หรือ MP4 โดยเอาเครื่องหมาย # ออกจากบรรทัดสุดท้าย

### ข้อมูลทางวิทยาศาสตร์ที่เห็นได้จากแบบจำลอง:
1. ในช่วงขึ้น: จรวดมีความเร่งคงที่ ทำให้ความเร็วเพิ่มขึ้นเชิงเส้นและความสูงเพิ่มขึ้นแบบพาราโบลา
2. ที่จุดสูงสุด: ความเร็วในแนวดิ่งเปลี่ยนจากบวกเป็นลบอย่างฉับพลัน (เนื่องจากการแยก cansat และเริ่มใช้ร่มชูชีพ)
3. ในช่วงลง: cansat ตกลงมาด้วยความเร็วคงที่ (3 m/s) ในแนวดิ่ง และมีความเร็วคงที่ (1 m/s) ในแนวระดับเนื่องจากลม
4. เมื่อถึงพื้น: การเคลื่อนที่หยุดลง ความเร็วทั้งสองแนวเป็นศูนย์

แบบจำลองนี้ใช้ประโยชน์จาก matplotlib อย่างเต็มที่เพื่อสร้างภาพที่สวยงามและเข้าใจง่าย เหมาะสำหรับการนำเสนอหรือใช้เป็นสื่อการสอนเกี่ยวกับการเคลื่อนที่ภายใต้แรงโน้มถ่วงและผลของแรงต้านอากาศ​​​​​​​​​​​​​​​​ผมจะสร้างแบบจำลอง 2 มิติที่แสดงการเคลื่อนที่ของ cansat ในรูปแบบที่เข้าใจง่ายและมีการปรับปรุงให้ดูเป็นมืออาชีพมากขึ้น​​​​​​​​​​​​​​​​

ผมได้สร้างแบบจำลอง 2 มิติที่สมบูรณ์แบบสำหรับการเคลื่อนที่ของ cansat โดยมีการปรับปรุงให้ดูเป็นมืออาชีพและมีข้อมูลที่ครบถ้วนมากขึ้น ประกอบด้วย:

### หน้าต่างหลักแสดงการเคลื่อนที่
1. **ส่วนแสดงการเคลื่อนที่หลัก**: แสดงการเคลื่อนที่ของจรวดและ cansat ในพื้นที่ 2 มิติ
2. **กราฟแสดงความสูงกับเวลา**: แสดงการเปลี่ยนแปลงความสูงตลอดเวลา
3. **กราฟแสดงระยะทางในแนวระดับกับเวลา**: แสดงผลของลมที่มีต่อการเคลื่อนที่ในแนวระดับ
4. **กราฟแสดงความเร็วในแนวดิ่งกับเวลา**: แสดงความเร็วในแนวดิ่งทั้งช่วงขึ้นและช่วงลง
5. **กราฟแสดงความเร็วในแนวระดับกับเวลา**: แสดงความเร็วในแนวระดับเนื่องจากลม

### คุณสมบัติพิเศษของแบบจำลองนี้:
1. **การแสดงผลแบบเรียลไทม์**: ทุกกราฟแสดงข้อมูลแบบเรียลไทม์พร้อมจุดแสดงค่าปัจจุบัน
2. **เส้นแบ่งช่วงเวลา**: มีเส้นประแสดงจุดที่ cansat แยกออกจากจรวด
3. **ข้อความแสดงสถานะ**: แสดงสถานะปัจจุบันของการเคลื่อนที่
4. **ข้อมูลการเคลื่อนที่**: แสดงค่าเวลา ความสูง ความเร็วในแนวดิ่ง และความเร็วในแนวระดับแบบเรียลไทม์
5. **รูปแบบที่สมจริง**: จรวด cansat และร่มชูชีพมีรูปร่างที่สมจริงมากขึ้น รวมถึงมีเชือกเชื่อมระหว่าง cansat กับร่มชูชีพ

### การใช้งานแบบจำลอง:
1. เมื่อรันโค้ด คุณจะเห็นการเคลื่อนที่แบบต่อเนื่องพร้อมข้อมูลที่อัพเดทแบบเรียลไทม์
2. คุณสามารถปรับค่าพารามิเตอร์ต่างๆ ได้ เช่น:
   - `a_rocket`: ความเร่งของจรวดในช่วงลอยขึ้น
   - `v_descent`: ความเร็วคงที่ในการตกลงมาของ cansat
   - `v_wind`: ความเร็วลมในแนวระดับ
   - `t_max_altitude`: เวลาที่ใช้ในการขึ้นถึงจุดสูงสุด
3. คุณสามารถบันทึกเป็นไฟล์ GIF หรือ MP4 โดยเอาเครื่องหมาย # ออกจากบรรทัดสุดท้าย

### ข้อมูลทางวิทยาศาสตร์ที่เห็นได้จากแบบจำลอง:
1. ในช่วงขึ้น: จรวดมีความเร่งคงที่ ทำให้ความเร็วเพิ่มขึ้นเชิงเส้นและความสูงเพิ่มขึ้นแบบพาราโบลา
2. ที่จุดสูงสุด: ความเร็วในแนวดิ่งเปลี่ยนจากบวกเป็นลบอย่างฉับพลัน (เนื่องจากการแยก cansat และเริ่มใช้ร่มชูชีพ)
3. ในช่วงลง: cansat ตกลงมาด้วยความเร็วคงที่ (3 m/s) ในแนวดิ่ง และมีความเร็วคงที่ (1 m/s) ในแนวระดับเนื่องจากลม
4. เมื่อถึงพื้น: การเคลื่อนที่หยุดลง ความเร็วทั้งสองแนวเป็นศูนย์

แบบจำลองนี้ใช้ประโยชน์จาก matplotlib อย่างเต็มที่เพื่อสร้างภาพที่สวยงามและเข้าใจง่าย เหมาะสำหรับการนำเสนอหรือใช้เป็นสื่อการสอนเกี่ยวกับการเคลื่อนที่ภายใต้แรงโน้มถ่วงและผลของแรงต้านอากาศ​​​​​​​​​​​​​​​​ไม่
stdout
#include <stdio.h>

int main(void)
{
int i, j;
long dec;  /* ให้รับค่าอินพุทแบบ Long Integer - เลขจำนวนเต็มแบบยาว */
int bit[32];  /* จองพื้นที่ในการเก็บข้อมูลเลขฐาน 2 ลงใน Array */

    clrscr();  /* เคลียร์หน้าจอ */
    printf("Decimal Number : ");  /* แจ้งผู้ใช้เพื่อเตรียมป้อนค่าเลขฐาน 10 */
    scanf("%ld", &dec);  /* ต้องใช้ ld เพราะ Input มันเป็นแบบ Long Integer */
    i = 0;  /* กำหนดค่าเริ่มต้นของ Array */
    /* ทำตามที่ได้ออกแบบโปรแกรมเอาไว้ ... ยังไงยังงั้นเลย 55555+ */
    do {
        bit[i++] = dec % 2;  /* การหารเอาเศษ เพื่อให้เป็นคำตอบ */

        /* การหารทั่วไป แต่ตัวแปร dec ของภาษา C มันเป็น Integer หรือ เลขจำนวนเต็ม */
        /* ดังนั้นมันจึงตัดเศษ (หรือทศนิยม) ทิ้งไปโดยอัตโนมัติ */
        dec = dec / 2;

    } while (dec > 0);  /* เงื่อนไขที่ทำจนกระทั่ง dec = 0 ก็ออกจากวังวนเงื่อนไข */

    /* การแสดงผลของการแปลงเลขฐาน 10 เป็นเลขฐาน 2*/
    /* j = i - 1 และให้ j ลดค่าลงทีละ 1 ... ก็คืออ่านข้อมูลถอยหลังกลับเท่านั้นเองครับ */
    /* เพราะตัวแปรแบบ Array ในภาษา C มันเก็บข้อมูลจากซ้ายไปขวา */
    /* ทำให้ LSB มันไปอยู่ทางซ้าย ส่วน MSB มันไปอยู่ทางขวา */
    for(j = i - 1; j >= 0; j--)
        printf("%d", bit[j]);

printf("\n");
return 0;

}