ปัญหา
จะพิมพ์คำสั่งที่ให้มาในลำดับที่กลับกันโดยใช้ฟังก์ชัน iterative เช่น ขณะวนซ้ำโดยใช้ภาษาโปรแกรม C ได้อย่างไร
วิธีแก้ปัญหา
จนถึงตอนนี้ เราได้เห็นวิธีการย้อนกลับสตริงโดยใช้ฟังก์ชันสตริงและไม่มีฟังก์ชันสตริง ตอนนี้เรามาดูวิธีการกลับตัวเลขโดยไม่ต้องใช้ฟังก์ชันที่กำหนดไว้ล่วงหน้ากัน -
อัลกอริทึม
ป้อนข้อมูล − ให้ตัวเลขตอนรันไทม์
Step 1: Declare the variable number,reverse Step 2: Initialize reverse= 0 Step 3: while number>0 (a) reverse=reverse*10 + number%10; reverse = reverse*10 + num%10; (b) Divide number by 10 Step 4: return reverse
ตัวอย่าง
#include <stdio.h> int reverse(int number){ int reverse = 0; while(number > 0){ reverse = reverse*10 + number%10; number = number/10; } return reverse; } int main(){ int number; printf("enter a number:"); scanf("%d",&number); printf("Reverse of no. is %d", reverse(number)); getchar(); return 0; }
ผลลัพธ์
enter a number:356789 Reverse of no. is 987653