Найти все числа, не превосходящие заданного натурального N, которые яв-ляются палиндромами в двоичной системе.
вот код :
[C++]// 4.3.cpp :10. Найти все числа, не превосходящие заданного натурального N, которые яв¬ляются палиндромами в двоичной системе.
#include <stdio.h>
#include <string.h>
#include "stdafx.h"
int k=0;
char s[255]={};
void binary(int number) {
int remainder;
if(number <= 1) {
s[k]=number+'0';
k++;
return;
}
remainder = number%2;
binary(number >> 1);
s[k]=remainder+'0';
k++;
}
int ifpol()
{
int i=0;
for(i=0;i<(strlen(s) / 2);i++)
if(s[i]!=s[strlen(s)-1-i]) return 0;
return 1;
}
int main(int argc, char **argv)
{
int i,n;
printf("vvedit chislo n=");
scanf("%d",&n);
for(i=0;i<=n;i++)
{
//printf("%d %s\n",i,s);
binary(i); k=0;
if(ifpol()) printf("Chislo %d yavlyaetsa dvoichnim polindromom %s\n",i,s); }
return 0;
} [/C++]
при дебаге выдает 2 ошибки
c:\documents and settings\администратор\мои документы\visual studio 2005\projects\4.3\4.3\4.3.cpp(25) : error C3861: 'strlen': identifier not found
c:\documents and settings\администратор\мои документы\visual studio 2005\projects\4.3\4.3\4.3.cpp(26) : error C3861: 'strlen': identifier not found
Понимаю,что ошибка с strlen, но не понимаю что там не правильно? помогите