ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #4291  
Старый 14.11.2009, 11:50
Аватар для winflip
winflip
Познающий
Регистрация: 13.05.2009
Сообщений: 40
Провел на форуме:
91842

Репутация: 1
По умолчанию

Цитата:
Сообщение от Irdis  
не пойдёт вылезает за границы допустимых значений
Переписал, выводит частично не те числа:
Код:
// http://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D1%81%D1%82_%D0%9C%D0%B8%D0%BB%D0%BB%D0%B5%D1%80%D0%B0_%E2%80%94_%D0%A0%D0%B0%D0%B1%D0%B8%D0%BD%D0%B0
#include <cmath>
#include <iostream>
bool is_prime(int);
int main(){
    using namespace std;
    int a,b;
    cin >> a >> b;
    for(int i=a;i<=b;i++){
          if(is_prime(i)){
               cout << i << " ";
          }
    }  
    system("PAUSE");  
}
bool is_prime(int m){
	using namespace std;
	int r = 1000;
	int t = m-1;
	int s = 0;
	bool b = true;
	if(m==2){
		return true;
	}
	if(m%2==0){
		return false;
	}
	if(m==1){
		return false;
	}
	while(t%2==0 || b){
		b = false;
		s++;
		t=t/2;
	}
	for(int i=1;i<r+1;i++){
		int a = 2+rand()%(m-1);
		int x = (long(pow(float(a),float(t))))%m;
		if((x==1)||(x==m-1)){
			continue;
		}
		for(int j=1;j<s;j++){
			x=(long(pow(float(x),2)))%m;
			if(x==1){
				return false;
			}
			if(x==m-1){
				break;
			}
			return false;
		}
	}
	return true;
}
 
Ответить с цитированием

  #4292  
Старый 14.11.2009, 13:14
Аватар для rudvil
rudvil
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
Провел на форуме:
2066562

Репутация: 86
По умолчанию

Цитата:
Сообщение от Irdis  
http://msdn.microsoft.com/en-us/library/aa450989.aspx
http://msdn.microsoft.com/en-us/library/ms886760.aspx
=======================
и кури конвертацию одного типа к другому
Спасибо конечно, но это только под винду.
Извиняюсь что не уточнил сразу, необходимо кроссплатформенное решение.
 
Ответить с цитированием

  #4293  
Старый 14.11.2009, 14:13
Аватар для Aag
Aag
Познающий
Регистрация: 26.07.2005
Сообщений: 54
Провел на форуме:
47901

Репутация: 46
По умолчанию

Цитата:
Можно ли хранить в std::string текст с кодировкой utf8?
Если да, то как?
вот так объявлен std:string
Код:
typedef basic_string<char_t> string;
а вот так мультибайтовый вариант std::wstring
Код:
typedef basic_string<wchar_t> wstring;
 
Ответить с цитированием

  #4294  
Старый 14.11.2009, 17:42
Аватар для razb
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


Отправить сообщение для razb с помощью ICQ
По умолчанию

Цитата:
Спасибо конечно, но это только под винду.
Извиняюсь что не уточнил сразу, необходимо кроссплатформенное решение.
вот тебе кросс вариант _http://utfcpp.sourceforge.net/
 
Ответить с цитированием

  #4295  
Старый 14.11.2009, 18:27
Аватар для m0Hze
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

Необходимо: консольное окошко, указываем урл
PHP код:
cin >> url
Софт коннектиться по указоному урлу,и записывает страничку в log.txt.
Спасибо.Желательно с использованием класса от Греата.Необходимо в своих образовательных целях
 
Ответить с цитированием

  #4296  
Старый 14.11.2009, 21:50
Аватар для draliokero
draliokero
Познающий
Регистрация: 14.03.2009
Сообщений: 86
Провел на форуме:
385811

Репутация: 12
По умолчанию

Помогите с кодом, нужно пробежаться с указанного начального каталога по его подкаталогам, удаляя из них файлы с расширениями *.@@@,*.bla, *.sdx.
 
Ответить с цитированием

  #4297  
Старый 15.11.2009, 01:58
Аватар для Irdis
Irdis
Участник форума
Регистрация: 06.02.2006
Сообщений: 177
Провел на форуме:
1576821

Репутация: 88
Отправить сообщение для Irdis с помощью ICQ
По умолчанию

winflip
Возрадуйся...
опа, у меня ещё и пост простой 101
Код:
#include <cmath>
#include <iostream>
bool is_prime(int);
int main(){
	using namespace std;
	//int a,b;
	for(int i=1;i<=1000;i++){
		if(is_prime(i)){
			cout << i << " ";
		}
	}  
	system("PAUSE");  
}
bool is_prime(int m){
	using namespace std;
	int r = 1000;
	int t = m-1;
	int s = 0;
	//bool b = true;
	if((m==2)||(m==3)){
		return true;
	}
	if(m%2==0){
		return false;
	}
	if(m==1){
		return false;
	}
	while(t%2==0){
		s++;
		t=t/2;
	}
	for(int i=1;i<r+1;i++){
		int a = 2+rand()%(m-3);
		bool next = false;
		long x = a;
		for (int i1=0;i1<t-1;i1++)
			x = (x*a)%m;
		
		//int x = (long(pow(float(a),float(t))))%m;
		if((x==1)||(x==m-1)){
			continue;
		}
		for(int j=1;j<s;j++)
		{
			x=(x%m)*(x%m)%m;
			if(x==1){
				return false;
			}
			if(x==m-1){
				next = true;
				break;
			}
		}
		if (!next)
				return false;

	}
	return true;
}
 
Ответить с цитированием

  #4298  
Старый 15.11.2009, 04:34
Аватар для Linkus
Linkus
Участник форума
Регистрация: 20.12.2008
Сообщений: 130
Провел на форуме:
436500

Репутация: 11
По умолчанию

Цитата:
Сообщение от draliokero  
Помогите с кодом, нужно пробежаться с указанного начального каталога по его подкаталогам, удаляя из них файлы с расширениями *.@@@,*.bla, *.sdx.
В коде куча лишнего хлама, ибо вырезано кое-как из совсем другого проекта удачи!

Код:
#include <stdio.h>
#include <windows.h>

HANDLE ch;

DWORD WriteToConsole(LPSTR text)
{
  DWORD nChars;
  char buf[MAX_PATH];
  strcpy(buf,text);
  strcat(buf,"\r\n");
  char buf2[MAX_PATH];
  CharToOem(buf,buf2);
  WriteConsole(ch,buf2,strlen(buf2),&nChars,0);

  return nChars;
}

void FindAndDelete(LPSTR path, LPSTR name )
{

	WIN32_FIND_DATA wfd;
        HANDLE fh;
        char lol[MAX_PATH];
        strcpy(lol,path);
        strcat(lol,"*");
        fh = FindFirstFile(lol,&wfd);

	if(fh == INVALID_HANDLE_VALUE) return;

        do
        {

           if (strstr(wfd.cFileName,name) != NULL)
          {

                  char delfilebuf[MAX_PATH];
                  strcpy(delfilebuf,path);
                  strcat(delfilebuf,wfd.cFileName);
                  WriteToConsole(delfilebuf);
                  //Удаляем файл
                  DeleteFile(delfilebuf);

            }

                        if ((!strcmp(wfd.cFileName,".")) || (!strcmp(wfd.cFileName,".."))) continue;

                           if (wfd.dwFileAttributes ==FILE_ATTRIBUTE_DIRECTORY)
                           {

                                                char pathbuf[MAX_PATH];
                                                strcpy(pathbuf,path);
                if (pathbuf[strlen(pathbuf)-1] != '\\') strcat(pathbuf,"\\");
                                                strcat(pathbuf,wfd.cFileName);
                if (pathbuf[strlen(pathbuf)-1] != '\\') strcat(pathbuf,"\\");


                FindAndDelete(pathbuf,name);

                           }


        } while (FindNextFile(fh,&wfd));

        FindClose(fh);

        return;

}

int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
        AllocConsole();
        ch = GetStdHandle(STD_OUTPUT_HANDLE);

        //Запускаем рекурсивную функцию
        //Её параметры: путь к стартовой папке и 
        // расширение удаляемых файлов (с точкой!)
        // удаляет файлы с заданным расширением в
        //стартовой папке,  её подпапках, и их подпапках, и их
        //подпапках))))) etc
        FindAndDelete("D:\\tst\\",".\@\@\@");
        FindAndDelete("D:\\tst\\",".bla");
        FindAndDelete("D:\\tst\\",".sdx");

        system("pause");



        return 0;
}
 
Ответить с цитированием

  #4299  
Старый 15.11.2009, 07:53
Аватар для draliokero
draliokero
Познающий
Регистрация: 14.03.2009
Сообщений: 86
Провел на форуме:
385811

Репутация: 12
По умолчанию

Помогите разобраться, FindFirstFile(mask, &findFileData)
mask не передается с типами какойто косяк

Код:
#include <windows.h>
#include <string.h>
#include <stdio.h>
#include <conio.h>

TCHAR * filemask[] = { ".---", ".@@@", ".$a", ".$db", ".$sa", ".___", "._dd",
    "._detmp", "._mp", ".aps", ".bac", ".bak", ".bbs", ".bup",
    ".cdr_", ".chk", ".cpy", ".da0", ".diz", ".dmp", ".err",
    ".fic", ".fnd", ".ftg", ".fts", ".gid", ".ilk", ".ion",
    ".lo_", ".mch", ".MS", ".nav", ".ncb", ".nhc", ".nu3",
    ".nu4", ".old", ".pch", ".prv", ".sdi", ".sfap0", ".sfk",
    ".shd", ".sik", ".spc", ".sud", ".swr", ".syd", ".tds",
    ".temp", ".tmp", ".wbk", ".wc", ".wlg", ".wpx", ".xlg",
".xlk" };


int SearchFiles(TCHAR *buffer, TCHAR *mask)
{
        HANDLE hFile;
        WIN32_FIND_DATA findFileData;
        TCHAR temp[MAX_PATH];
        
        SetCurrentDirectory(buffer);
        
        if((hFile=FindFirstFile(mask, &findFileData))==INVALID_HANDLE_VALUE)
        {
                printf("Invalid file handle (%d)\n", GetLastError());
                return -2;
        }
        else 
        {       
                do
                {
                        if(!strcmp(findFileData.cFileName, TEXT("."))||!strcmp(findFileData.cFileName, TEXT("..")))     
                        {
                                continue;
                        }
                        
                        if(findFileData.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)
                        {                               
                                strcpy(temp, buffer);
                                strcat(buffer, "\\");
                                strcat(buffer, findFileData.cFileName);
                                
                                SearchFiles(buffer);
                                strcpy(buffer,temp);
                                continue;
                        }
                        printf("File name is %s\n", findFileData.cFileName);
                }
                while(FindNextFile(hFile, &findFileData)!=0);
        }
        FindClose(hFile);
        return true;
}
 
int main(int argc, TCHAR* argv[])
{
        
        TCHAR buffer[MAX_PATH];
        GetCurrentDirectory(sizeof(buffer), buffer);
    int arrsize = sizeof(filemask)/sizeof(int);
    
    for(int i=0; i<arrsize; i++){
       SearchFiles(buffer, filemask[i]);
    }
    system("pause");
    return 0;
}

Последний раз редактировалось draliokero; 15.11.2009 в 14:30..
 
Ответить с цитированием

  #4300  
Старый 15.11.2009, 17:34
Аватар для Дикс
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию

как в чистом С++ конвертировать текст в utf-8?

(и накрайняк как это сделать с бустом)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP, PERL, MySQL, JavaScript 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Форумы 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ