ปัญหา
จะพิมพ์ตัวเลขสองหลักที่ระบุในลำดับย้อนกลับโดยใช้ตัวดำเนินการดิวิชั่นและโมดูโลโดยใช้ภาษาการเขียนโปรแกรม C ได้อย่างไร
วิธีแก้ปัญหา
จนถึงตอนนี้ เราได้เห็นวิธีการย้อนกลับสตริงโดยใช้ฟังก์ชันสตริงและไม่มีฟังก์ชันสตริง ตอนนี้เรามาดูวิธีการกลับตัวเลขสองหลักโดยไม่ต้องใช้ฟังก์ชันที่กำหนดไว้ล่วงหน้า
ตรรกะที่เราใช้ในการย้อนกลับตัวเลขโดยใช้ตัวดำเนินการคือ −
int firstno=number%10; //stores remainder int secondno=number/10;// stores quotient
จากนั้นพิมพ์หมายเลขแรกตามด้วยหมายเลขที่สอง จากนั้นคุณจะได้หมายเลขย้อนกลับสำหรับหมายเลขที่กำหนด
โปรแกรมที่ 1
ในตัวอย่างนี้ เราจะใช้ตัวเลข 2 หลักและใช้ตัวดำเนินการหารและโมดูโลเพื่อกลับตัวเลข -
#include<stdio.h>
int main(){
int number;
printf("enter a number:");
scanf("%4d",&number);
int firstno=number%10; //stores remainder
int secondno=number/10;// stores quotient
printf("After reversing =%d%d\n",firstno,secondno);
return 0;
} ผลลัพธ์
enter a number:45 After reversing =54
โปรแกรม 2
ในตัวอย่างนี้ เราจะใช้ตัวเลข 3 หลักและใช้ตัวดำเนินการหารและโมดูโลเพื่อกลับตัวเลข -
#include<stdio.h>
int main(){
int number,num1,num2,num3,result;
printf("enter a number:");
scanf("%4d",&number);
num1 = number / 100;
num2 = (number % 100) / 10;
num3 = number%10 ;
result = 100*num3 + 10*num2 + num1;
printf("After reversing =%d\n",result);
return 0;
} ผลลัพธ์
enter a number:479 After reversing =974