span style="color: #0000BB"><?php//Функция "Удаления каталога с файлами" function delete_dir($dir){ if($scandir = scandir($dir = $dir . '/')){$x = 0; foreach($scandir as $value){ if($x > 1){$value = $dir . $value;if(is_dir($value)) delete_dir($value);else unlink($value); }++$x; } }return rmdir($dir); } |
span style="color: #0000BB"><?php/*Функция SpiderDetect - принимает $_SERVER['HTTP_USER_AGENT'] и возвращает имя кравлера поисковой системы или false.*//*База ботов - http://www.user-agents.org/Кому охото могут всех записать, но это уже будет наверно перебор :)*/ function SpiderDetect($USER_AGENT){$engines = array(array('Aport', 'Aport robot'),array('Google', 'Google'),array('msnbot', 'MSN'),array('Rambler', 'Rambler'),array('Yahoo', 'Yahoo'),array('AbachoBOT', 'AbachoBOT'),array('accoona', 'Accoona'),array('AcoiRobot', 'AcoiRobot'),array('ASPSeek', 'ASPSeek'),array('CrocCrawler', 'CrocCrawler'),array('Dumbot', 'Dumbot'),array('FAST-WebCrawler', 'FAST-WebCrawler'),array('GeonaBot', 'GeonaBot'),array('Gigabot', 'Gigabot'),array('Lycos', 'Lycos spider'),array('MSRBOT', 'MSRBOT'),array('Scooter', 'Altavista robot'),array('AltaVista', 'Altavista robot'),array('WebAlta', 'WebAlta'),array('IDBot', 'ID-Search Bot'),array('eStyle', 'eStyle Bot'),array('Mail.Ru', 'Mail.Ru Bot'),array('Scrubby', 'Scrubby robot'),array('Yandex', 'Yandex'),array('YaDirectBot', 'Yandex Direct')); foreach ($engines as $engine){if(strpos($USER_AGENT, $engine[0]) !== false) return($engine[1]); }return (false); }?> |
span style="color: #0000BB"><?phpfunction power ($b, $n) { return $b << ($n - 1);} |
span style="color: #0000BB"><?phpfunction power($b, $n) { return $b << ($n - 1); }echo power(5, 3);//20//а должно 125 = 5*5*5?> |
span style="color: #0000BB"><?phpecho '<pre>';echo 2 ^ 1; echo PHP_EOL; //3 bitsecho 25 ^ 5; echo PHP_EOL; //28 bitsecho 125 ^ 5; echo PHP_EOL; //120 bitsecho 125 ^ 25; echo PHP_EOL; //100 bitsecho '</pre>';/*The above example will output: --------- --------- -- --------- result value op test --------- --------- -- --------- Bitwise AND( 0 = 0000) = ( 0 = 0000) & ( 5 = 0101)( 1 = 0001) = ( 1 = 0001) & ( 5 = 0101)( 0 = 0000) = ( 2 = 0010) & ( 5 = 0101)( 4 = 0100) = ( 4 = 0100) & ( 5 = 0101)( 0 = 0000) = ( 8 = 1000) & ( 5 = 0101) Bitwise Inclusive OR( 5 = 0101) = ( 0 = 0000) | ( 5 = 0101)( 5 = 0101) = ( 1 = 0001) | ( 5 = 0101)( 7 = 0111) = ( 2 = 0010) | ( 5 = 0101)( 5 = 0101) = ( 4 = 0100) | ( 5 = 0101)(13 = 1101) = ( 8 = 1000) | ( 5 = 0101) Bitwise Exclusive OR (XOR)( 5 = 0101) = ( 0 = 0000) ^ ( 5 = 0101)( 4 = 0100) = ( 1 = 0001) ^ ( 5 = 0101)( 7 = 0111) = ( 2 = 0010) ^ ( 5 = 0101)( 1 = 0001) = ( 4 = 0100) ^ ( 5 = 0101)(13 = 1101) = ( 8 = 1000) ^ ( 5 = 0101)*/?> |
//C |
#include <stdio.h> |
#define EOF '\n' |
#define MAXLENGTH 1000 |
void expand(int a[], int b[]); |
int main () |
{ |
int a[MAXLENGTH], b[MAXLENGTH], c, i; |
for (i = 0; i < MAXLENGTH; i++) |
a[i] = b[i] = '\0'; |
while (1) |
{ |
printf("In: "); |
for (i = 0; (c = getchar()) != EOF; i ++) |
if (i < MAXLENGTH) a[i] = c; |
if (++i < MAXLENGTH) a[i] = '\0'; |
expand(a, b); |
for (i = 0; i < MAXLENGTH && b[i] != '\0'; i++) |
putchar(b[i]); |
putchar('\n'); |
for (i = 0; i < MAXLENGTH; i++) |
a[i] = b[i] = '\0'; |
} |
getchar(); |
} |
void expand (int a[], int b[]) |
{ |
int i, j; |
for (i = j = 0; i < MAXLENGTH && a[i] != EOF && a[i] != '\0'; i ++, j) |
{ |
if (b[j] != '\0' || j > MAXLENGTH) break; |
if (a[i] == '-') |
{ |
if (((a[i - 1] >= 'a' && a[i - 1] <= 'z') && (a[i + 1] >= 'a' && a[i + 1] <= 'z')) || ((a[i - 1] >= 'A' && a[i - 1] <= 'Z') && (a[i + 1] >= 'A' && a[i + 1] <= 'Z'))) |
{ |
if (a[i+1] > a[i-1]) |
for (int l = a[i-1] + 1; l < a[i+1]; l++) |
{ |
if (b[j] != '\0' || j > MAXLENGTH) break; |
b[j++] = l; |
} |
else b[j++] = '-'; |
} |
else if ((a[i - 1] >= 'a' && a[i - 1] <= 'z') && (a[i + 1] >= 'A' && a[i + 1] <= 'Z')) |
{ |
for (int l = a[i-1] + 1; l != a[i+1]; l++) |
{ |
if (b[j] != '\0' || j > MAXLENGTH) break; |
b[j++] = l; |
if (l == 'z') |
l = 'A' - 1; |
} |
} |
else if (a[i-1] >= '0' && a[i+1] <='9') |
{ |
if (a[i+1] > a[i-1]) |
for (int l = a[i-1] + 1; l < a[i+1]; l++) |
{ |
if (b[j] != '\0' || j > MAXLENGTH) break; |
b[j++] = l; |
} |
else b[j++] = '-'; |
} |
else |
b[j++] = '-'; |
} |
else |
b[j++] = a[i]; |
} |
b[j++] = '\0'; |
return; |
} |