Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

จำนวนหลักคู่ที่ใหญ่ที่สุดไม่เกิน N ใน C++


ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมที่หาจำนวนที่มากที่สุดที่มีตัวเลขเป็นคู่และไม่มากกว่า n ที่กำหนด

มาดูขั้นตอนการแก้ปัญหากัน

  • เริ่มต้นหมายเลข n.
  • เขียนลูปจาก i =n .
    • ตรวจสอบว่าตัวเลขปัจจุบันเป็นเลขคู่ทั้งหมดหรือไม่
    • หากตรงตามเงื่อนไขข้างต้น ให้พิมพ์ตัวเลข
    • อย่างอื่นลด i.

ตัวอย่าง

มาดูโค้ดกันเลย

#include <bits/stdc++.h>
using namespace std;
int allDigitsEven(int n) {
   while (n) {
      if ((n % 10) % 2){
         return 0;
      }
      n /= 10;
   }
   return 1;
}
int findLargestEvenNumber(int n) {
   int i = n;
   while (true) {
      if (allDigitsEven(i)) {
         return i;
      }
      i--;
   }
}
int main() {
   int N = 43;
   cout << findLargestEvenNumber(N) << endl;
   return 0;
}

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

42

บทสรุป

หากคุณมีข้อสงสัยใดๆ ในบทแนะนำ โปรดระบุในส่วนความคิดเห็น