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

ตรวจสอบว่าสตริงประกอบด้วยตัวอักษรสลับกันสองตัวหรือไม่ ใน C++


ตรวจสอบว่าสตริงประกอบด้วยตัวอักษรสลับกันสองตัว (alternating characters) หรือไม่

ตัวอย่าง: "XYXYXY" = valid, "ABCD" = invalid

วิธี: ตรวจสอบว่าตัวอักษรตำแหน่ง i และ i+2 เหมือนกันทุกคู่ ถ้าไม่เหมือน = false และตัวแรกไม่เท่ากับตัวที่สอง

ตัวอย่างโค้ด

#include <iostream>
using namespace std;

bool hasAlternateChars(string str) {
    for (int i = 0; i < str.length() - 2; i++) {
        if (str[i] != str[i + 2]) return false;
    }
    if (str[0] == str[1]) return false;
    return true;
}

int main() {
    string str = "XYXYXYX";
    if (hasAlternateChars(str)) cout << "Valid String";
    else cout << "Not a Valid String";
}

ผลลัพธ์

Valid String