Симпатичный узор



Дата18.11.2023
өлшемі1,01 Mb.
#124783


Есеп 4 “симпатичный узор”


#include
using namespace std;

int main() {


char pattern[4][4];

// Считывание входных данных


for (int i = 0; i < 4; ++i) {
for (int j = 0; j < 4; ++j) {
cin >> pattern[i][j];
}
}

bool is_suitable = true;

// 2х2 квадраттың әдемілігін тексеру үшін шарт жазамыз
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 3; ++j) {
if (pattern[i][j] == pattern[i][j + 1] &&
pattern[i][j] == pattern[i + 1][j] &&
pattern[i][j] == pattern[i + 1][j + 1]) {
is_suitable = false;
break;
}
}
if (!is_suitable) {
break;
}
}

// Вывод результата


if (is_suitable) {
cout << "Yes" << endl;
} else {
cout << "No" << endl;
}

return 0;


}
ТҮСІНДІРМЕ :1
char pattern[4][4];
for (int i = 0; i < 4; ++i) {
for (int j = 0; j < 4; ++j) {
cin >> pattern[i][j];
} //Бұл жерде pattern деген екіөлшемді массив құрып аламыз . Бұл массив плитакада ғы узорларды көрсетеді яғни 4 жол мен 4 қатардағы түстерді анықтап отырады .

ТҮСІНДІРМЕ 2:


bool is_suitable = true;
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 3; ++j) {
if (pattern[i][j] == pattern[i][j + 1] &&
pattern[i][j] == pattern[i + 1][j] &&
pattern[i][j] == pattern[i + 1][j + 1]) {
is_suitable = false;
break;
}
}
if (!is_suitable) {
break;
}
}//Кірістірілген ПЛИТКАДАҒЫ үлгідегі әрбір мүмкін болатын 2x2 шаршы арқылы тексеріледі және оның тек бір түсті тақтайшалардан тұратынын қарастырамыз. Егер мұндай шаршы табылса, is_suitable айнымалысы fulse болады және тексеру аяқталады.
if (is_suitable) {
cout << "Yes" << endl;
} else {
cout << "No" << endl;
}\\Егер үлгі әдемі болса (бір түстің 2x2 квадратта болмаса) бағдарлама "yes", әйтпесе "No" деп шығарады.


Достарыңызбен бөлісу:




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет