На всё отвечает NO | C++
На всё отвечает NO, а должна найти слово "nozm" или "NOZM" и сказать YES - если есть или NO - если нет
Код:
#include <iostream>
#include <cstring>
using namespace std;
void himoji(char* ar){
int o=strlen(ar);
int k=0;
for(int i=0; i<o; i++){
if((ar[i]=='N' || ar[i]=='n')&&(ar[i+1]=='O' || ar[i+1]=='o')&&(ar[i+2]=='Z' || ar[i+2]=='z')&&(ar[i+3]=='M' || ar[i+3]=='m')){
k=1;
}
else {
k=0;
}
}
if (k==1 && k<4){
cout<<"YES";
}
else {
cout<<"NO";
}
}
int main() {
char *ar = new char[1000];
cin>>ar;
himoji(ar);
}
пример: aaanozmaaaa - YES
aaaNOZMaa -YES
aaaNOMZaaa -NO
aaanokmaaa - NO
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Ладно, будем считать, что ни toupper, ни strstr недоступны...
Первое -
for(int i=0; i< o - 3; i++) // -3 - чтоб не вылазить за пределы строки!!!
Второе -
.... (ar[i+3]=='M' || ar[i+3]=='m'))
{
k = 1;
break;
}
После чего просто
if (k)
{
cout<<"YES";
}
else
{
cout<<"NO";
}