Forum » Znanost in tehnologija » Digitalna evolucija
Digitalna evolucija
asPeteR ::
Uau Thomas, clo HP ma zdej critticall! Zdele sem ga dolpovlekel, tko da ...
It's going to start sweating from now on ...
It's going to start sweating from now on ...
snow ::
Da vidimo to digitalno beštijo!
Random mutation plus nonrandom cumulative natural selection - Richard Dawkins
asPeteR ::
Zlede ga malo probavam na prilozenih primerih ... Moram rect, da je GUI, kar prijeten, preprost in vidne so vse pomembne informacije.
Edino kar se bo treba matrat, bo pri kovanju kode ... Striktno se drzat pravil programiranja, ki jih zateva Crittcall.
Aja, pohvalno, da ni potrebno po vsakem evoluiranem programu pritistini "Evoluate" ... Al je to sam zacetni bug?
(nekaj casa nazaj si govoril da bo taksna.
Recimo zdele randomSort po osmih minutah spravilo na 48% prvotnih korakov ... Impresivno!
Edino kar se bo treba matrat, bo pri kovanju kode ... Striktno se drzat pravil programiranja, ki jih zateva Crittcall.
Aja, pohvalno, da ni potrebno po vsakem evoluiranem programu pritistini "Evoluate" ... Al je to sam zacetni bug?
(nekaj casa nazaj si govoril da bo taksna.
Recimo zdele randomSort po osmih minutah spravilo na 48% prvotnih korakov ... Impresivno!
jeti51 ::
Ja koliko RAMa pa sploh rabi ta zadeva? Meni se odpre okno, notri pa nič. Samo okvir in meni zgoraj, skozi se pa vidi, kaj je spodaj. V oknu se mi nič ne izriše. Sicer pa deluje, nekaj "beepa" in tudi ustvarja tiste datoteke z izboljšanimi programi.
asPeteR ::
Thomas: Imam takoj dva predloga. Fino bi bilo, ce bi imel Critticall moznost, da se izbere za program "opmizira" na najmanj moznih vrstic programske kode, ki seveda ni niti slucajno nujno, da je najhitrejsa, toda pride prav.
Aja, kaj je potem razlika med to verzijo in full?
Aja, kaj je potem razlika med to verzijo in full?
Zgodovina sprememb…
- spremenil: asPeteR ()
Thomas ::
Ja ... minimizacija linij je zdaj tako, da ne širi programa čez vse meje.
Da bi pa na račun hitrosti zmanjševal število linij, pa (zaenkrat še?) ni.
Razlika med tole verzijo in full je pa v tem, da tale gre čez cca. 2 uri spat. Moraš ročno pognat od tam naprej.
Da bi pa na račun hitrosti zmanjševal število linij, pa (zaenkrat še?) ni.
Razlika med tole verzijo in full je pa v tem, da tale gre čez cca. 2 uri spat. Moraš ročno pognat od tam naprej.
Man muss immer generalisieren - Carl Jacobi
ciki57 ::
Našel sem prvi bug
Če namesto:
if {
} else {
}
napišeš:
if {
}
else {
}
javi: Program's block statement structure is invalid.
Če namesto:
if {
} else {
}
napišeš:
if {
}
else {
}
javi: Program's block statement structure is invalid.
Thomas ::
Too strict, ja!
Zadeva rabi masiven prevajalanik iz raznih koderskih načinov. Najbrž.
Zadeva rabi masiven prevajalanik iz raznih koderskih načinov. Najbrž.
Man muss immer generalisieren - Carl Jacobi
OwcA ::
Saj v Cju lahko mirno "pobiješ" vse presledkaste znake (\t, \n, presledek) na vsakem stiku med črkovno (a-Z, 0-9, _) in znakovo "besedo", pri čemer bo bo koda še vedno veljavna. Stvar preproste skripte, ali celo makra. Program je sam tako kreativen, da "vse pade" od uporabnikov.
Otroška radovednost - gonilo napredka.
darh ::
kak info o vrstici ki ga zmoti bi bil priročen.
Malo se igram...
dodal sem
$rinvar leto (0,3000)
vzame en random value za leto
neprest=0;
if (mes==feb) {
leto %= 4;
if (leto==neprest) {
dni=28;
} else {
dni=29;
}
}
pravi da je invalid... al pa sem jaz :)
Malo se igram...
dodal sem
$rinvar leto (0,3000)
vzame en random value za leto
neprest=0;
if (mes==feb) {
leto %= 4;
if (leto==neprest) {
dni=28;
} else {
dni=29;
}
}
pravi da je invalid... al pa sem jaz :)
Excuses are useless! Results are priceless!
Marjan ::
Super si tole izpeljal Thomas.
Hudo, res - kot sem že rekel.
Zdej grem pa malo optimizirat...
P.S.
Za tiste, ki ne veste kako bi optimizirali .c fajl. Preprosto ga skopirate v Critticall.exe, in se čudite kaj sledi v naslednjih nekaj trenutkih, urah...
Hudo, res - kot sem že rekel.
Zdej grem pa malo optimizirat...
P.S.
Za tiste, ki ne veste kako bi optimizirali .c fajl. Preprosto ga skopirate v Critticall.exe, in se čudite kaj sledi v naslednjih nekaj trenutkih, urah...
Thomas ::
xbite, Tole je pravilna sintaksa in mora delat.
$rinvar leto (0,3000) mes (1,12) $retvar dni $minimize lines off $sound on neprest=0; jan=1; feb=2; mar=3; apr=4; may=5; jun=6; jul=7; aug=8; sep=9; oct=10; nov=11; dec=12; if (mes==jan) { dni=31; } if (mes==feb) { leto %= 4; if (leto==neprest) { dni=28; } else { dni=29; } } if (mes==mar) { dni=31; } if (mes==apr) { dni=30; } if (mes==may) { dni=31; } if (mes==jun) { dni=30; } if (mes==jul) { dni=31; } if (mes==aug) { dni=31; } if (mes==sep) { dni=30; } if (mes==oct) { dni=31; } if (mes==nov) { dni=30; } if (mes==dec) { dni=31; }
Man muss immer generalisieren - Carl Jacobi
Zgodovina sprememb…
- spremenil: Sergio ()
bond007 ::
Enostavno ZAKON. Pa kul vmesnik. Sam a se da kak to stvar zaustavit, razen da zapreš program, kak STOP button will do.
Si že slučajno probu zoptimizirat program, z tistimi šahoskimi figurami.
Si poslal novico kaki bolj znani strani, univerzi,...
kak dolg si približno delal na tem?
Si že slučajno probu zoptimizirat program, z tistimi šahoskimi figurami.
Si poslal novico kaki bolj znani strani, univerzi,...
kak dolg si približno delal na tem?
Thomas ::
Za prestopna leta tole rajši, ker je nekoliko bolj komplicirano, kot da je samo vsako 4. prestopno.
Sicer pa hvala za vse pohvale, predlogi se pazljivo preučujejo.
$rinvar leto (0,3000) mes (1,12)
$invar leto(400) mes(2)
$invar leto(100) mes(2)
$retvar dni
$minimize lines off
$sound on
neprest=0;
jan=1;
feb=2;
mar=3;
apr=4;
may=5;
jun=6;
jul=7;
aug=8;
sep=9;
oct=10;
nov=11;
dec=12;
if (mes==jan) {
dni=31;
}
if (mes==feb) {
prest = 0;
n0 = 0;
n4 = 4;
n100 = 100;
n400 = 400;
ntmp = leto % n4;
if (ntmp == n0) {prest = 1;}
ntmp = leto % n100;
if (ntmp == n0) {prest = 0;}
ntmp = leto % n400;
if (ntmp == n0) {prest = 1;}
if (prest==neprest) {
dni=28;
} else {
dni=29;
}
}
if (mes==mar) {
dni=31;
}
if (mes==apr) {
dni=30;
}
if (mes==may) {
dni=31;
}
if (mes==jun) {
dni=30;
}
if (mes==jul) {
dni=31;
}
if (mes==aug) {
dni=31;
}
if (mes==sep) {
dni=30;
}
if (mes==oct) {
dni=31;
}
if (mes==nov) {
dni=30;
}
if (mes==dec) {
dni=31;
}
Sicer pa hvala za vse pohvale, predlogi se pazljivo preučujejo.
Man muss immer generalisieren - Carl Jacobi
darh ::
Thomas, itak.. tisto je bil samo mini testek -- uvod, da vidim če se z g. Kritičnim sploh razumeva...
Excuses are useless! Results are priceless!
Kostko ::
Thomas, a verzija za linux potem bo ? ker stvar bi res rad probal (pa ne na emulaciji), pa še c koda je itaq nekako prenosljiva med platformami (če ne uporablaš ravno kakih sistemskih libov).
Human stupidity is not convergent, it has no limit!
Thomas ::
Portanje na linux bo seveda moralo biti. Samo zdej ne vem rečt, kako zahtevna reč to je pravzaprav.
Man muss immer generalisieren - Carl Jacobi
ciki57 ::
Kolika pa stane celotna verzija? Je kaj popusta za študente?
A ko se enkrat registriraš dobivaš potem zastonj tudi vse nadalnje verzije?
A ko se enkrat registriraš dobivaš potem zastonj tudi vse nadalnje verzije?
Thomas ::
Cena je $59 ali 59 € ali 10 kSIT.
Popust za študente je, če (kot site licence) zadevo kupi njihova fakulteta. Potem je lahko kar velik.
Popust za študente je, če (kot site licence) zadevo kupi njihova fakulteta. Potem je lahko kar velik.
Man muss immer generalisieren - Carl Jacobi
kopernik ::
Thomas:
glede na razpravo v temi piratiziranje, ne verjamem, da bodo zainteresirani hoteli kaj plačati. Razen, če niso spremenili svojega pogleda na celotno stvar... Vsekakor ti želim veliko uspeha pri prodaji.
lp
glede na razpravo v temi piratiziranje, ne verjamem, da bodo zainteresirani hoteli kaj plačati. Razen, če niso spremenili svojega pogleda na celotno stvar... Vsekakor ti želim veliko uspeha pri prodaji.
lp
Thomas ::
Ja no, bomo videli. Računam nekako na vsakega tisočega programerja - ali pa še to ne.
Man muss immer generalisieren - Carl Jacobi
Vesoljc ::
"Portanje na linux bo seveda moralo biti. Samo zdej ne vem rečt, kako zahtevna reč to je pravzaprav."
vidiš, na to bi bilo treba prej mislit
vidiš, na to bi bilo treba prej mislit
Abnormal behavior of abnormal brain makes me normal...
jeti51 ::
Evo, da vidimo, kako bo izboljšal algoritem za iskanje največjega skupnega delitelja dveh števil.
if (number1 > number2) {
meja = number1;
} else {
meja = number2;
}
gcd = 1;
//v zanki preveri vsa stevila od med 1 in "meja" (=vecje izmed obeh stevil)
//ce i deli obe stevili brez ostanka, potem je novi gcd kar tale i
for (i = one; i &lsth;= meja; i += one) {
ostanek = number1 % i;
if (ostanek == zero) {
ostanek = number2 % i;
if (ostanek == zero) {
gcd = i;
}
}
}
Zgodovina sprememb…
- spremenil: jeti51 ()
Thomas ::
Tkole je sintaktično pravilen vhod jetijevega programa:
$rinvar number1(1,1000) number2(1,1000)
$retvar gcd
if (number1 > number2) {
meja=number1;
} else {
meja=number2;
}
gcd = 1;
one = 1;
for (i = one; i <= meja; i += one) {
ostanek = number1 % i;
if (ostanek == zero) {
ostanek = number2 % i;
if (ostanek == zero) {
gcd = i;
}
}
}
Man muss immer generalisieren - Carl Jacobi
romci ::
Thomas: nikjer nisem zasledil, kako bi kot vhodno/izhodno spremenljivko deklariral vecdimenzionalno tabelo, ce je to mozno.
Ali je kak workaround, nekako kot tabelo tabel?
Ali je kak workaround, nekako kot tabelo tabel?
-- not all those who wander are lost...
Thomas ::
Samo ena dimenzija je. Strict C(ritticall) koda.
V tolažbo je edino to, da z enodimenzionalno tabelo se da izraziti poljubno dimenzionalne. Namreč naslovni prostor v pomnilniku je lepo po nenegativnih celih številih. Zato ima C++ večdimenzionalnost vedno hidden operacije množenja in deljenja. Če pa eksplicitno navedeš te pretvorbe iz linearnega v večdimenzionalno - kot zaheva C - pa so te transformacije tudi predmet optimizacije.
Če bomo naredili podporo večdimenzionalnim nizom, bo to na nivoju prevajalnika iz C++ v C.
V tolažbo je edino to, da z enodimenzionalno tabelo se da izraziti poljubno dimenzionalne. Namreč naslovni prostor v pomnilniku je lepo po nenegativnih celih številih. Zato ima C++ večdimenzionalnost vedno hidden operacije množenja in deljenja. Če pa eksplicitno navedeš te pretvorbe iz linearnega v večdimenzionalno - kot zaheva C - pa so te transformacije tudi predmet optimizacije.
Če bomo naredili podporo večdimenzionalnim nizom, bo to na nivoju prevajalnika iz C++ v C.
Man muss immer generalisieren - Carl Jacobi
darkolord ::
A ni jeba, ce nardis en algoritem pol ti ga pa tole kompletno obrne?
aja, zakaj meni program dela _strašno_ počasi... (drsnik rabi 1/2 sekunde da reagira, ...) ?
aja, zakaj meni program dela _strašno_ počasi... (drsnik rabi 1/2 sekunde da reagira, ...) ?
Zgodovina sprememb…
- spremenilo: darkolord ()
ciki57 ::
Trik kako pripraviš algoritem za sortiranje, da ti testira različno dolge arraye in povrh še kaže časovno zahtevnost v odvisnosti od n (št. elementov):
$dimension abcd[100]
$rinvar n (10,100)
$rinvar abcd[] (1,1000)
$INVAR n (100)
$INVAR n (50)
$INVAR n (10)
$INVAR abcd[](290,274,832,383,....
$INVAR abcd[](882,958,822,425,709,6....
$INVAR abcd[](743,259,676,734,382,574,458,58....
$retvar abcd[]
$minimize lines 40
$sound on
zero=0; //number 0 stored in a variable
flip=1; //is still to sort
noe = n-flip; // noe je bil prej fiksno določen
$dimension abcd[100]
$rinvar n (10,100)
$rinvar abcd[] (1,1000)
$INVAR n (100)
$INVAR n (50)
$INVAR n (10)
$INVAR abcd[](290,274,832,383,....
$INVAR abcd[](882,958,822,425,709,6....
$INVAR abcd[](743,259,676,734,382,574,458,58....
$retvar abcd[]
$minimize lines 40
$sound on
zero=0; //number 0 stored in a variable
flip=1; //is still to sort
noe = n-flip; // noe je bil prej fiksno določen
Thomas ::
ciki57,
Dobr ugotavljaš ...
Vhodne $invar, $rinvar (n in abcd[]) morajo biti v enem $ukazu:
$rinvar n(10,100) abcd[](1,100)
Desni graf kaže odvisnost od prve navedene variable - v tem primeru od n.
BTW - a je kdo že probal jetijev program (v sintaksi kakor sem ga uploadal jest)?
Pri meni je prišel eni uri in pol do 4,3% (reduciral za dobrih 19/20!). Ker je shareware, bo čez pol ure odjenjal.
Dobr ugotavljaš ...
Vhodne $invar, $rinvar (n in abcd[]) morajo biti v enem $ukazu:
$rinvar n(10,100) abcd[](1,100)
Desni graf kaže odvisnost od prve navedene variable - v tem primeru od n.
BTW - a je kdo že probal jetijev program (v sintaksi kakor sem ga uploadal jest)?
Pri meni je prišel eni uri in pol do 4,3% (reduciral za dobrih 19/20!). Ker je shareware, bo čez pol ure odjenjal.
Man muss immer generalisieren - Carl Jacobi
Zgodovina sprememb…
- spremenil: Thomas ()
romci ::
Thomas: Men je v 45 min. prsu do zavidljivih 0.7% :) Looks like there WAS some room for improvement ;)
Tole pa zevulirani programcek
// The algorithm has been enhanced for 99.349%
$RINVAR number1(1,1000) number2(1,1000)
$RETVAR gcd
// int array[1]; int arr256[256];int number1=0;int number2=0;int meja=0;int gcd=0;int one=0;int i=0;
// int ostanek=0;int zero=0;int critticall1=0;int critticall2=0;int critticall3=0;int critticall4=0;
$BES
ostanek=number2%number1;
if (zero!=ostanek) {
ostanek=number1%ostanek;
number1=number2%number1;
while (ostanek!=gcd) {
meja=ostanek;
ostanek=number1%ostanek;
number1=meja;
}
}
gcd=number1;
$EES
Tole pa zevulirani programcek
-- not all those who wander are lost...
Zgodovina sprememb…
- spremenil: romci ()
jeti51 ::
Kaj je pri meni dobil Critticall?
Prišel je na nekje na 5.1%. Imam pa AMD 800, ki je bil pred tremi leti špica, danes pa je bolj tako-tako. Ampak vseeno, odlična izboljšava.
zero=0;
one=1;
number1=twonumbers[zero];
number2=twonumbers[one];
gcd=1;
$BES
meja=number2%number1;
if (meja==critticall3) {
gcd=number1;
} else {
one++;
ostanek=number1%meja;
if (ostanek==critticall1) {
gcd=meja;
}
meja=ostanek+critticall1;
for (i=one;i&nblt;=meja;i+=gcd) {
ostanek=number2%i;
if (ostanek==critticall3) {
ostanek=number1%i;
if (ostanek==critticall1) {
gcd=i;
}
}
}
}
Prišel je na nekje na 5.1%. Imam pa AMD 800, ki je bil pred tremi leti špica, danes pa je bolj tako-tako. Ampak vseeno, odlična izboljšava.
jeti51 ::
Grrr... kako se še pravilno napiše znak < v HTML? (kot je presledek recimo "& nbsp;")
Zgodovina sprememb…
- spremenil: jeti51 ()
OwcA ::
@jeti51: < lahko v HTMLju zapišeš kot <
Otroška radovednost - gonilo napredka.
Zgodovina sprememb…
- spremenilo: OwcA ()
Thomas ::
Evolucija je velik hec. Tudi digitalna. Se ne bi čudil, če bi kdo dobil samo 50% izboljšavo.
Zadevo je treba pač dosti časa goniti, pa tudi (verjetno) najboljši rezultat ne izostane.
Pomaga pa seveda tudi večkratno poganjanje in več računalnikov. (Več instanc! )
Samo tale romcijev rezultat pa res ni slab!
Zadevo je treba pač dosti časa goniti, pa tudi (verjetno) najboljši rezultat ne izostane.
Pomaga pa seveda tudi večkratno poganjanje in več računalnikov. (Več instanc! )
Samo tale romcijev rezultat pa res ni slab!
Man muss immer generalisieren - Carl Jacobi
jeti51 ::
Napisal naiven algoritem za kvadriranje (v zanki n-krat seštej n), pa je v minuti poenostavil na square = n*n. Kul.
Aja, pa en bug.. program sem po pomoti vgnezdil med dva $BES in se je zadeva sesula.
Aja, pa en bug.. program sem po pomoti vgnezdil med dva $BES in se je zadeva sesula.
asPeteR ::
Hja, jaz mislim, da je potrebno obvezno v GUI pod file implementirat se recimo "save curret evoluated code" in "stop" in "pause".
Kako Thomas pravis, da dela sam pol ure?? Nekaj postov nazaj si rekel, da shareware verzija dela okrog dve uri? (hja, nisem se privocil crittcallu, da bi delal vec kot 30 min na enem programu ...
Kako Thomas pravis, da dela sam pol ure?? Nekaj postov nazaj si rekel, da shareware verzija dela okrog dve uri? (hja, nisem se privocil crittcallu, da bi delal vec kot 30 min na enem programu ...
romci ::
Evolucija je res zanimiva stvar...
Ce deluje pa se digitalno - je pa next best thing since the evolution of bread into sliced bread
Ce deluje pa se digitalno - je pa next best thing since the evolution of bread into sliced bread
-- not all those who wander are lost...
Thomas ::
asPeter,
Po eni uri in pol, deluje še pol ure.
Hja ... pause pa stop pa save ... so (tudi) dobri predlogi.
romci,
Hehe .. maybe ... may be ...
Po eni uri in pol, deluje še pol ure.
Hja ... pause pa stop pa save ... so (tudi) dobri predlogi.
romci,
Hehe .. maybe ... may be ...
Man muss immer generalisieren - Carl Jacobi
asPeteR ::
Aha, jah malo dvoumno si napisal ... No me veseli, da potem ostaja dve uri ...
Aja drugac mam jaz polno predlogov glede izbosave Critticalla ...
Recimo zelo fino bi bilo, da se pozdravna stran premakne pod "help". Na pozdravno stran pa se fikne ze dafault prikaz evolucije ter graf ter prostor za real time prikaz programa(seveda bi bil default prazen, toda ko nalozimo kodo se ustrezno napolni) Skratka, osnovna ideja je, da je pozdravna stran fiksna ...
Aja drugac mam jaz polno predlogov glede izbosave Critticalla ...
Recimo zelo fino bi bilo, da se pozdravna stran premakne pod "help". Na pozdravno stran pa se fikne ze dafault prikaz evolucije ter graf ter prostor za real time prikaz programa(seveda bi bil default prazen, toda ko nalozimo kodo se ustrezno napolni) Skratka, osnovna ideja je, da je pozdravna stran fiksna ...
njok ::
Thomas, se pohvala z moje strani. Kar tako naprej! Jaz sem tudi poizkusil z jetijevim algoritmom pa sem v osmih minutah dobil tole:
// The algorithm has been enhanced for 73.9552%
$RINVAR number1(1,1000) number2(1,1000)
$RETVAR gcd
// int array[1]; int arr256[256];int number1=0;int number2=0;int
meja=0;int gcd=0;int one=0;int i=0;int ostanek=0;int zero=0;int
critticall1=0;int critticall2=0;int critticall3=0;int critticall4=0;
$BES
meja=number2;
one=1;
for (i=one;i<=meja;i+=gcd) {
ostanek=number1%i;
if (ostanek==zero) {
ostanek=number2%i;
if (ostanek==zero) {
for
(gcd=number2;gcd!=number1;gcd+=one) {
gcd=i;
break;
}
}
if (number1==i) {
break;
}
}
}
$EES
Na začetku je nekaj časa vztrajal na if (number1>number1) {...}, nato pa se je naenkrat znebil celotnega bloka. Opazovanje napredka je sploh zanimivo po prvih izboljšavah, ki so bolj radikalne. Like it.
Aja... stvarca ogreje procesor le za eno stopinjo manj kot f@h.
// The algorithm has been enhanced for 73.9552%
$RINVAR number1(1,1000) number2(1,1000)
$RETVAR gcd
// int array[1]; int arr256[256];int number1=0;int number2=0;int
meja=0;int gcd=0;int one=0;int i=0;int ostanek=0;int zero=0;int
critticall1=0;int critticall2=0;int critticall3=0;int critticall4=0;
$BES
meja=number2;
one=1;
for (i=one;i<=meja;i+=gcd) {
ostanek=number1%i;
if (ostanek==zero) {
ostanek=number2%i;
if (ostanek==zero) {
for
(gcd=number2;gcd!=number1;gcd+=one) {
gcd=i;
break;
}
}
if (number1==i) {
break;
}
}
}
$EES
Na začetku je nekaj časa vztrajal na if (number1>number1) {...}, nato pa se je naenkrat znebil celotnega bloka. Opazovanje napredka je sploh zanimivo po prvih izboljšavah, ki so bolj radikalne. Like it.
Aja... stvarca ogreje procesor le za eno stopinjo manj kot f@h.
Sergio ::
evo... kako spravit tole v critticall form?
#include <stdio.h> int main () { int stevilo; int i=0; int j=0; int zastavica; zastavica=0; stevilo = 150000; for (i=3; i<=stevilo; i++) { for (j=2; j<i; j++) { if ((i%j)==0) { printf ("%d ni prastevilo\n",i); zastavica=1; } if (zastavica==1) break; } if (zastavica==0) printf ("%d je prastevilo\n",i); zastavica=0; } }
Tako grem jaz, tako gre vsak, kdor čuti cilj v daljavi:
če usoda ustavi mu korak,
on se ji zoperstavi.
če usoda ustavi mu korak,
on se ji zoperstavi.
Thomas ::
njok - hvala ;)
Ampak žal ti moram reči, da tistih 73% ni nič!
Evolucija včasih zaide v slepo ulico - in ta je ena. Zato je treba zadevo pognati ene parkrat, da dobiš nekaj takega kot je dobil romci.
Ali pa tole:
Ampak žal ti moram reči, da tistih 73% ni nič!
Evolucija včasih zaide v slepo ulico - in ta je ena. Zato je treba zadevo pognati ene parkrat, da dobiš nekaj takega kot je dobil romci.
Ali pa tole:
// The algorithm has been enhanced for 99.3679%
$MINIMIZE LINES 160
$RINVAR number1(1,1000) number2(1,1000)
$RETVAR gcd
// int array[1]; int arr256[256];int number1=0;int number2=0;
// int meja=0;int gcd=0;int one=0;int i=0;int ostanek=0;
//int zero=0;int critticall1=0;int critticall2=0;int critticall3=0;int critticall4=0;
$BES
number1=number1%number2;
number2=number2-number1;
number1=number1%number2;
if (number1!=one) {
number1=number2-number1;
number2=number2-number1;
number1=number1%number2;
number2=number2-number1;
number1=number1%number2;
number2=number2-number1;
number1=number1%number2;
if (number1>ostanek) {
number1=number2-number1;
number2=number2-number1;
number1=number1%number2;
number2=number2-number1;
number1=number1%number2;
while (number1!=zero) {
number2=number2-number1;
number1=number1%number2;
}
}
}
gcd=i+number2;
$EES
Man muss immer generalisieren - Carl Jacobi
Zgodovina sprememb…
- spremenil: Sergio ()
Sergio ::
Thomas:
$RETVAR prastevilo $BES nula=0; enka=1; dvojka=2; trojka=3; stevilo=0; prastevilo=0; zastavica=0; stevilo = 1500; for (i=trojka; i<=stevilo; i+=enka) { for (j=dvojka; j<i; j+=enka) { tmp = i; tmp = tmp%j; if (tmp==nula) { prastevilo=nula; zastavica=enka; } if (zastavica==enka) { break; } } if (zastavica==nula) { prastevilo=enka; } zastavica=nula; } $EESje to v redu?
Tako grem jaz, tako gre vsak, kdor čuti cilj v daljavi:
če usoda ustavi mu korak,
on se ji zoperstavi.
če usoda ustavi mu korak,
on se ji zoperstavi.
Thomas ::
Sergio,
Kot vidiš, ne printamo več. Luxus prevelik, namesto tega pišemo v tabelo. Tudi smo zgornjo mejo zmanjšali, da nekaj hitreje zevoluira - saj jo potem lahko spet povečamo.
$dimension prafl[1001]
$retvar prafl[]
$minimize lines off
num1=1;
num0=0;
num3=3;
num2=2;
i=0;
j=0;
zastavica=0;
stevilo = 1000;
for (i=num3; i<=stevilo; i+=num1) {
for (j=num2; j<i; j+=num1) {
x=i%j;
if (x==num0) {
prafl[i]=num0;
zastavica=num1;
}
if (zastavica==num1) {break;}
}
if (zastavica==num0) {prafl[i]=num1;}
zastavica=num0;
}
Kot vidiš, ne printamo več. Luxus prevelik, namesto tega pišemo v tabelo. Tudi smo zgornjo mejo zmanjšali, da nekaj hitreje zevoluira - saj jo potem lahko spet povečamo.
Man muss immer generalisieren - Carl Jacobi
Sergio ::
Joj... Folding sem zaradi tega sedaj ustavil ;)
Trenutno je na 99.8%. Sedaj pa gledam, če mu bo uspelo pogruntati, da mu ni treba gledati vseh števil, ampak samo praštevila. He
Trenutno je na 99.8%. Sedaj pa gledam, če mu bo uspelo pogruntati, da mu ni treba gledati vseh števil, ampak samo praštevila. He
Tako grem jaz, tako gre vsak, kdor čuti cilj v daljavi:
če usoda ustavi mu korak,
on se ji zoperstavi.
če usoda ustavi mu korak,
on se ji zoperstavi.
Sergio ::
Krhm... Smo že na 80%
Tako grem jaz, tako gre vsak, kdor čuti cilj v daljavi:
če usoda ustavi mu korak,
on se ji zoperstavi.
če usoda ustavi mu korak,
on se ji zoperstavi.
Thomas ::
Mi smo na 49%. Vendar sploh ni nujno, da bosta obe instanci šli po isti poti. Bolj je nujno, da ne bosta.
Kar se pa tiče rahlo nižje temperature procesorja kot pri F@H, kot je opazil njok, je to zaradi grafike, ki jo pa vseeno precej stradamo. Zato ni čisto gladkega teka slidebara.
Kar se pa tiče rahlo nižje temperature procesorja kot pri F@H, kot je opazil njok, je to zaradi grafike, ki jo pa vseeno precej stradamo. Zato ni čisto gladkega teka slidebara.
Man muss immer generalisieren - Carl Jacobi
Sergio ::
Thomas: Je možno pripisati 78.6 prvotnega rezultata samo randomu ... ali je zadeva bolj optimizirana na Intelove procesorje?
Tako grem jaz, tako gre vsak, kdor čuti cilj v daljavi:
če usoda ustavi mu korak,
on se ji zoperstavi.
če usoda ustavi mu korak,
on se ji zoperstavi.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Najhitrejši programski jezik? (strani: 1 2 )Oddelek: Programiranje | 7736 (5556) | Senitel |
» | Funkcija z logičnimi operaterji.... (strani: 1 2 )Oddelek: Programiranje | 5540 (4886) | CaqKa |
» | Petaflopsu naproti (strani: 1 2 3 )Oddelek: Novice / Procesorji | 8843 (8843) | Marjan |
» | cene permutacij help pleaseOddelek: Programiranje | 2070 (1677) | Sergio |
» | kako definirtati prasteviloOddelek: Programiranje | 3792 (3597) | ooux |