Code: #include <stdlib.h> #include <stdio.h> #include <conio.h> #include <dos.h> #include <time.h> unsigned char far *screen = MK_FP (0xA000,0); void SetMode (int Mode) { union REGS regs; regs.h.ah = 0; regs.h.al = Mode; int86 (0x10, ®s, ®s); } void ClearScreen (void) { unsigned i; for (i=0; i<64000l; i++) screen [i]=0; } void drawBody (int x, int y, unsigned char *draw) { int x1,y1; x += 2; y += 3; for (y1=0;y1<14;y1++) for (x1=0;x1<17;x1++) if (draw[y1*17+x1] !=0) screen[320*(y1+y)+x1+x] = draw[y1*17+x1]; } void clearBody (int x, int y) { int x1,y1; x += 2; y += 3; for (y1=0;y1<14;y1++) for (x1=0;x1<17;x1++) screen[320*(y1+y)+x1+x] = 0; } void drawObstacle (int x, int y, unsigned char *draw) { int x1,y1; x += 4; y += 5; for (y1=0;y1<10;y1++) for (x1=0;x1<12;x1++) if (draw[y1*12+x1] !=0) screen[320*(y1+y)+x1+x] = draw[y1*12+x1]; } void WaitSync(void) { while(inportb(0x3DA) &0x8); while(!(inportb(0x3Da)&0x8)); } void drawLine1 (int x) { int y; for (y=0;y<=200;y++) screen[320*y+x] = 8; } void drawLine2 (int y) { int x; for (x=0;x<=320;x++) screen[320*y+x] = 8; } unsigned char robot[17*14] = { 0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0, 0,0,1,1,1,0,0,1,1,1,0,0,1,1,1,0,0, 0,1,1,1,1,0,0,1,1,1,0,0,1,1,1,1,0, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1,1, 1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1, 1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 0,0,1,1,1,0,0,0,0,0,0,0,1,1,1,0,0, 0,0,1,1,1,0,0,0,0,0,0,0,1,1,1,0,0, 0,0,1,1,1,0,0,0,0,0,0,0,1,1,1,0,0, 0,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,0, 1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1 }; unsigned char obstacle[12*10] = { 8,8,8,8,8,8,8,8,8,8,8,8, 8,3,1,1,1,1,1,1,1,1,3,8, 8,1,3,1,1,1,1,1,1,3,1,8, 8,1,1,3,1,1,1,1,3,1,1,8, 8,1,1,1,3,3,3,3,1,1,1,8, 8,1,1,1,3,3,3,3,1,1,1,8, 8,1,1,3,1,1,1,1,3,1,1,8, 8,1,3,1,1,1,1,1,1,3,1,8, 8,3,1,1,1,1,1,1,1,1,3,8, 8,8,8,8,8,8,8,8,8,8,8,8 }; void goNow(int go, int *kx, int *ky ) { int x = *kx; int y = *ky; if( go == 1) y--; else if( go == 2) {y--; x++;} else if( go == 3) {x++;} else if( go == 4) {x++; y++;} else if( go == 5) {y++;} else if( go == 6) {y++; x--;} else if( go == 7) {x--;} else if( go == 8) {x--; y--;} *kx = x; *ky = y; } void main () { int x, y, i = 1; int up = 0; int r_max = 0; int kx = 0, ky = 0; int r = 0; int go = 0; // все шаги int xs[1000]; int xy[1000]; //препятствия int ss[161]; int xx; long j; time_t t; SetMode (0x13); srand((unsigned) time(&t) ); r = rand() % 1000000; //for(x=0; x <= 320; x += 20) drawLine1(x); //for(y=0; y <= 200; y += 20) drawLine2(y); for (xx=0; xx < 160; xx++) ss[i] = 0; xs[0] = 0; xy[0] = 0; while (kx != 15 || ky != 9) { srand(i * i * r * r); if (ky == 0 && kx == 0) { up = 2; r_max = 3; } else if (ky == 0 && kx == 15) { up = 4; r_max = 2; } else if (ky == 9 && kx == 15) { up = 1; r_max = 2; } else { if (ky == 0) {up = 2; r_max = 4;} else if (kx == 0) {up = 1; r_max = 4;} else if (kx == 15) {up = 4; r_max = 2;} else if (ky == 9) {up = 0; r_max = 3;} else { up = 1; r_max = 5;} } go = (rand() % (r_max - 1) ) + up + 1; goNow( go, &kx, &ky ); xs[i] = kx; xy[i] = ky; ss[ky*16+kx] = 1; i++; } for (xx=0; xx < 160; xx++) { if (ss[xx] == 0) { srand(r * r * xx * xx); go = rand() % 5; if (go > 1) drawObstacle( (xx % 16) * 20, (xx / 16) * 20, obstacle); } } for(xx = 0 ; xx < i; xx++) { drawBody( xs[xx]*20, xy[xx]*20, robot); for (j = 0; j < 200000000; j++) {} clearBody(xs[xx]*20, xy[xx]*20); } SetMode(3); } Вот только я незнаю правильно или нет
добрый день, подскажите пожалуйста библиотеки для работы с webom, и примеры программ или faq. Просто надо сделать такую программку, каторая проверяет url (url в текстовом файле), на наличие в html коде данной страницы (вот пример http://www.flamberg.pl/forum/memberlist.php) тут надо проверить если в html коде данная строка profile.php?mode=email&u если есть, то удалить из файла, или может кто-нибудь для примера написать данное прогу?
зачем вообще библиотека. поиск и замена подстроки в строке уже требует доп библиотек? причем в любом языке...
2 Ann$ ... ставь точнее задачу ... если обьезд препятствия то с какой целью ... если из одной точки достичь другой то существуют алгоритмы нахождения наикратчайшего пути и без разницы робот это или колобок!
А можно попросить тех, кто желает получить помощь в составлении алгоритма? Уважаемые дамы и господа! Если вы желаете получить ответы на свои вопросы, то задайте вопрос и предоставьте необходимую информацию так, чтобы у знающих людей была возможность ответить вам. Не в коем случае не допускайте по 50 синтаксических, грамматических, пунктуационных и прочих ошибок. Такие обращения очень сложно читаются!!! Очень сложно!!! И, скорее всего, ваш вопрос останется без внимания определённого процента посетителей. Если выкладываете исходник - выкладывайте ту часть, которая имеет отношение к вопросу. Не ленитесь отсеивать ненужную информацию! Каждый человек ценит своё время и ни у кого нет желания разбирать громоздкий код в несколько сот строк! Одним словом - задавайте человеческие вопросы, если вы желаете получить человеческие ответы. Спасибо за внимание. Надеюсь, моя просьба не останется незамеченной.
язык с++, поиск и замена не требует никаких библиотек, ну как мне искать подстроку, если файл (html страница) находится в интернети?
зачем мне удалять подстроку? Дан файл (txt) такого вида Программа должна заходить на них и если на страницы присутствует эта строка , удалить из текстового файла данный url.
libcurl для закачки файла http://curl.haxx.se/libcurl/ здесь библотека, чтоб пропарсить html http://www.codeproject.com/KB/library/GomzyHTMLReader.aspx написать условие для удаления строки из текста, я надеюсь, ты сумеешь.
Как системно отслеживать что в папке появился новый файл? Скажем у вас есть папка(папки), и вот этой папкой пользуются многа народа (и по сети и так), скажем вам нужно чтобы в папку можно было скопировать только файлы типа doc и txt, все остальные типы файлов скопировать туда было нельзя, что делать? Под рукой у вас тока Dev C++, и ось винда. И да, характеристики компа сильно ограничены, предположим пень 3.
Все поклоняются гуглу но пользоваться им не хотят http://www.cyberforum.ru/visual-cpp/thread24216.html 2H1N1 Периодически Парси файлы в папке по расширению и все что левое удаляй (чтобы не заморачиваться с организацией циклов, можно воспользоваться "Расписание зада"). Это все можно сделать с помощью батника. 2aydar Куда? какая среда? на MVC я так и не заставил CURL толком работать
Вот сам разобрался уже )) Code: #include <windows.h> #include <iostream> using namespace std; int main() { char drive[] = {"A:"}; DWORD drive_mask = GetLogicalDrives(); while(drive_mask) { if(drive_mask & 1) { cout<<drive<<"\n"; switch(GetDriveType(drive)) { case DRIVE_UNKNOWN: cout<<"Drive unknown\n"; break; case DRIVE_NO_ROOT_DIR: cout<<"No root\n"; break; case DRIVE_REMOVABLE: cout<<"DRIVE_REMOVABLE\n"; break; case DRIVE_FIXED: cout<<"DRIVE_FIXED\n"; break; case DRIVE_REMOTE: cout<<"DRIVE_REMOTE\n"; break; case DRIVE_CDROM: cout<<"DRIVE_CDROM\n"; break; case DRIVE_RAMDISK: cout<<"RAMDISK\n"; break; }; } ++drive[0]; drive_mask >>= 1; } return (0); } Только вот теперь вопрос: char drive[] = {"A:"}; - здесь как я понял определили символьный массив, и первый элемент его равен "A:" ++drive[0]; - а после этого автоматически продолжается по алфавиту?? или что это вообще
Что произойдет если сделать так A - указатель на динамически созданный массив размерности X A = (int*) realloc(A, Y*sizeof(int)); Если Y < X. Уменьшиться размер массива и затрется последний элемент (что собсно и нужно) или что то неопределенное ? Вот то что я хочу сделать Code: int main(){ int *mas = new int [5]; int mas1[]={1,2,3,4,5}; for (int i=0; i<5; i++) mas[i] = mas1[i]; mas = (int*) realloc(mas, 3*sizeof(int)); for (int i=0; i<5; i++) cout<<mas[i]<<" "; cout<<endl; } Оно выводит 1 2 3 4 5 Но я не могу проверить выводит оно это потому что: 1. Память не успела затереться но за границу массива мы уже вышли 2. Граница массива осталась на прежнем месте
realloc не предназначен для перевыделения памяти, выделенной new. http://www.cplusplus.com/reference/clibrary/cstdlib/realloc/
неповеришь, но именно от тудова и взял ее. У меня туговато с англ, если не для изменения размера массива то, пилять, для чего ж она ?