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

รหัส C++ เพื่อตรวจสอบรูปแบบสมมาตรกึ่งกลางหรือไม่


สมมติว่าเรามีเมทริกซ์ขนาด 3 x 3 ที่มี 'X' และ '.' เราต้องตรวจสอบว่ารูปแบบนั้นสมมาตรตรงกลางหรือไม่ (เพิ่มเติมเกี่ยวกับความสมมาตรตรงกลาง − https://en.wikipedia.org/wiki/Central_symmetry)


ดังนั้นหากอินพุตเป็นแบบ

X X
X X

แล้วผลลัพธ์จะเป็น True

ขั้นตอน

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

ถ้า M[0, 0] เหมือนกับ M[2, 2] และ M[0, 1] เหมือนกับ M[2, 1] และ M[0, 2] เหมือนกับ M[2, 0 ] และ M[1, 0] เหมือนกับ M[1, 2] จากนั้นให้คืนค่า true มิฉะนั้นจะคืนค่าเท็จ

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

#include ใช้เนมสเปซ std;bool แก้ปัญหา(vector> M){ if (M[0][0] ==M[2][2] &&M[ 0][1] ==M[2][1] &&M[0][2] ==M[2][0] &&M[1][0] ==M[1][2]) ย้อนกลับ จริง; else คืนค่า false;}int main (){ vector> matrix ={ { 'X', 'X', '.' }, { '.', '.', '.' }, { '.', 'X', 'X' } }; ศาล <<แก้ (เมทริกซ์) < 

อินพุต

<ก่อน>{ { 'X', 'X', '.' }, { '.', '.', '.' }, { '.', 'X', 'X' } } }

ผลลัพธ์

1