Armenian Knowledge Base  

Go Back   Armenian Knowledge Base > Technical sections > Languages, Compilers, Interpreters > C/C++
Register

Reply
 
LinkBack Thread Tools
Old 12.03.2006, 09:10   #1
Младенец
 
Join Date: 03 2006
Location: Tver
Age: 32
Posts: 4
Downloads: 0
Uploads: 0
Reputation: 0 | 0
Default generate

не подскажите как в билдере 6 сгенерировать 2 простых числа=)) я новичёк ешё=) не получается что то!
Reply With Quote
Old 12.03.2006, 10:55   #2
Грустно...
 
Agregat's Avatar
 
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 35
Posts: 21,717
Downloads: 2
Uploads: 0
Reputation: 250 | 8
Default Re: generate

ну например 3 и 7
а так - rand-ом генеришь числа и проверяешь на простоту... для новичка проще не придумаешь...
Reply With Quote
Old 12.03.2006, 11:06   #3
Какое небо, *, Багдад!
 
knightmare's Avatar
 
Join Date: 10 2005
Location: Ереван
Posts: 1,682
Downloads: 16
Uploads: 0
Reputation: 99 | 3
Default Re: generate

Ну, например, генерируешь любое число и находишь его наибольший простой делитель.
Reply With Quote
Old 12.03.2006, 11:24   #4
Младенец
 
Join Date: 03 2006
Location: Tver
Age: 32
Posts: 4
Downloads: 0
Uploads: 0
Reputation: 0 | 0
Default Re: generate

пример можете написать??
есть функция random, но как она работает, и какие аргументы ей писать?
Reply With Quote
Old 12.03.2006, 11:47   #5
Какое небо, *, Багдад!
 
knightmare's Avatar
 
Join Date: 10 2005
Location: Ереван
Posts: 1,682
Downloads: 16
Uploads: 0
Reputation: 99 | 3
Default Re: generate

есть rand()
делаешь два раза по [не проверял]:
---------------
unsigned int i, j;
for(i=j=1+rand(); !(j%i && is_simple(i)); i--);
//имеем нужное в i здесь
---------------
bool is_simple(unsigned int c){
unsigned int i;
for(i=2; i<c && c%i; i++);
return i==c || c==1;
}
---------------

Last edited by knightmare; 12.03.2006 at 12:19.
Reply With Quote
Old 12.03.2006, 13:56   #6
Грустно...
 
Agregat's Avatar
 
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 35
Posts: 21,717
Downloads: 2
Uploads: 0
Reputation: 250 | 8
Default Re: generate

на самом деле цикл надо завешать при i=Sqrt(c), так как если не нашлось, то и не найдется. Но, увы, это не работает для больших чисел
Reply With Quote
Sponsored Links
Reply

Thread Tools


На правах рекламы:
реклама

All times are GMT. The time now is 13:57.


Powered by vBulletin® Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.