Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  Soovitage programmeerimiskeelt arvutamiseks. märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
mine lehele 1, 2  järgmine
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 10:24:12 Soovitage programmeerimiskeelt arvutamiseks. vasta tsitaadiga

Keegi teab mingit lihtsat programmeerimiskeelt, millega saaks teha suurema hulga kalkulatsioone ning millele saaks ette sööta mingi faili või andmebaasi, mille baasil neid kalkulatsioone teha? Apache + mysql + php pole just kiireimate killast, vaid 7 kalkulatsioonimassiivi sekundis ja prose 30%. icon_confused.gif

Tegevus toimub siis selliselt, et on eelsisestatud andmed, mille põhjal neid kalkulatsioone tehakse. Programm peab võtma sealt need andmed, korrutama ja liitma vajalikud numbrid ning siis salvestama tulemuse failisse või andmebaasi.

Programm peaks suutma teha palju kalkulatsioone ja töötama arvuti taustaprotsessina. Seega võiks vähe või enda poolt valitud prioriteediga kasutada arvuti ressursse.
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
2ndalpha
HV kasutaja
2ndalpha

liitunud: 03.11.2004




sõnum 17.03.2014 10:44:22 vasta tsitaadiga

Sul jääb tõenäoliselt ketas pudelikaelaks.
Kas teed pärast iga baasi sisestamist commiti või kasutad transaktsioone?
Kommentaarid: 23 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 22
tagasi üles
vaata kasutaja infot saada privaatsõnum
jnt
HV Guru
jnt

liitunud: 10.05.2005



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 10:58:03 vasta tsitaadiga

No c/c++ peaks kindlasti mõnna olema selliste asjade tegemiseks, kuid pigem on pudelikaelaks tõesti ketas. Ja siis ei anna keele vahetus ka mingit võitu.
_________________
Seisab keldris vana 386-486-Pentium1? Räägime! Ehk saan vanakesele uue elu anda. icon_wink.gif
Vaata siia, äkki müün midagi põnevat -> https://www.osta.ee/index.php?fuseaction=listing.seller&q[seller]=jnt
Kommentaarid: 106 loe/lisa Kasutajad arvavad:  :: 2 :: 0 :: 99
tagasi üles
vaata kasutaja infot saada privaatsõnum
priitr
HV kasutaja

liitunud: 17.06.2004




sõnum 17.03.2014 11:19:43 vasta tsitaadiga

C++ ja OTL näiteks?
Andmete ja ülesande kirjeldus oleks muidugi abiks...

_________________
Tšudes ne bõvajet.
Kommentaarid: 27 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 27
tagasi üles
vaata kasutaja infot saada privaatsõnum
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 11:45:33 vasta tsitaadiga

2ndalpha kirjutas:
Sul jääb tõenäoliselt ketas pudelikaelaks.
Kas teed pärast iga baasi sisestamist commiti või kasutad transaktsioone?

Tõesti? Kas lugemise või kirjutamise poolest? Ketta pidur ei tohiks väga probleemiks olla, kuna saan ajutiselt kirjutamise (kui kirjutamisest jääb väheks) ramdiskile ning kuna UPS on olemas, siis saan enne arvuti väljalülitamist käsitsi kopeerida kettale. Või kui ka miskit juhtub, siis kuna seda protsessi saan teha tsüklitena, siis midagi kaotsi eriti ei läheks. Veidi aega ehk vaid. Või halb mõte?

Aga mis muidu praeguse kooslusega võib piirajaks olla, mySQL? Ses mõttes, et kui eriti suurt kiirusevõitu ei tuleks, siis ei hakkaks teist programmeerimiskeelt õppima, ning seadistaks kuidagi mySQL-i, aga kui võit oleks suurem, siis tõesti võiks. Praegu jookseb skript localhostis ning valisin mysql seadistusfailiks my_huge.ini kohas wamp/bin/mysql/mysql5.5.20.

priitr kirjutas:
C++ ja OTL näiteks?
Andmete ja ülesande kirjeldus oleks muidugi abiks...

Mmm, kuidas ma oskan kirjeldada. Hetkel on mysql andmebaasi tabeli erinevates veergudes hunnik numbreid ning jookseb skript, mis otsib skriptis loodavatele numbritele andmebaasis kattuvusi, loendab kattuvuste hulki iga numbri kohta (pea 50 erinevat numbrit) ja nendele andmetele tuginedes teeb arvutusi ja salvestab tulemused. Tulemusi saab olema miljoneid, millest pärast saab statistikat koostada. Arvutuste hulk on ühe rea kohta üsna suur.
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
Redikate
HV veteran
Redikate

liitunud: 30.12.2005




sõnum 17.03.2014 11:51:20 vasta tsitaadiga

Andmebaas on indexeeritud õigesti? Äkki sa timed oma skripti osad ära ja vaatad mis asjad aeglased on? Mina panustaks, et reaalne arvutamine ei võta võrreldes andmebaasi päringute jms'ga üldse aega.
_________________
http://nodejs.org/
"I'm also a person. Programming is just one thing I do."
Kommentaarid: 34 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 33
tagasi üles
vaata kasutaja infot saada privaatsõnum
priitr
HV kasutaja

liitunud: 17.06.2004




sõnum 17.03.2014 12:06:33 vasta tsitaadiga

LiivaneLord kirjutas:

priitr kirjutas:
C++ ja OTL näiteks?
Andmete ja ülesande kirjeldus oleks muidugi abiks...

Mmm, kuidas ma oskan kirjeldada. Hetkel on mysql andmebaasi tabeli erinevates veergudes hunnik numbreid ning jookseb skript, mis otsib skriptis loodavatele numbritele andmebaasis kattuvusi, loendab kattuvuste hulki iga numbri kohta (pea 50 erinevat numbrit) ja nendele andmetele tuginedes teeb arvutusi ja salvestab tulemused. Tulemusi saab olema miljoneid, millest pärast saab statistikat koostada. Arvutuste hulk on ühe rea kohta üsna suur.

Ega palju targemaks ei saanud, aga _tundub_, et asi elab andmebaasi seljas, lugedes ja kirjutades pidevalt väikeseid andmehulki.
Kui palju kirjeid on baasis? Kui suur on üks kirje? Praeguses esituses kõlab asi nii, et mõistlik oleks kogu kupatus mällu lugeda ja seal opereerida. Miljonid tulemused tänapäeva gigabaitide ajastul ei avalda erilist muljet icon_smile.gif.

_________________
Tšudes ne bõvajet.
Kommentaarid: 27 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 27
tagasi üles
vaata kasutaja infot saada privaatsõnum
2korda2
HV kasutaja

liitunud: 19.07.2003




sõnum 17.03.2014 12:26:21 vasta tsitaadiga

Redikate kirjutas:
Andmebaas on indexeeritud õigesti? Äkki sa timed oma skripti osad ära ja vaatad mis asjad aeglased on? Mina panustaks, et reaalne arvutamine ei võta võrreldes andmebaasi päringute jms'ga üldse aega.

Sekundeerin sellele. Lisaks tuleks lihtsalt päringud üle vaadata - võimalik, et andmemudeli muudatus võimaldaks oluliselt efektiivsemalt töö ära teha.
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 13:31:42 vasta tsitaadiga

priitr, skript loob 1-48-st numbrist ligi 12 miljonit erinevat kombinatsiooni. Andmebaasis on pea 1100 rida, igas reas 8 veergu, mis sisaldab vastavalt reale täpselt samasuguseid numbreid. Kui skript koostab iga järgneva numbrite rea, siis loendab, palju neid andmebaasis kattuvad. Seejärel liidab kõikide 1100 rea tulemused kokku ja salvestab tulemuse. See on põhiline tegevus.

Redikate kirjutas:
Andmebaas on indexeeritud õigesti? Äkki sa timed oma skripti osad ära ja vaatad mis asjad aeglased on? Mina panustaks, et reaalne arvutamine ei võta võrreldes andmebaasi päringute jms'ga üldse aega.

Usun ka seda. Indeksi kohta ei tea, pole kuidagi indekseeri. MySQL päring on lihtsalt "select * from tabel" ja "insert into tabel (line1, line2) values (value1,value2)".

Ma proovisin veel seda, et kuna algselt FOR loop koostab iga tulemuse kohta eelnevalt eraldi mysql select käsu, siis nüüd tegin selle select käsu enne loopisid ära ning andmebaasi andmed määrasin ära PHP muutujatesse ning FOR loop kasutab hoopis muutujat, mitte ei võta pidevalt andmeid andmebaasist, aga selle tulemus oli sisuliselt 0.
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
Redikate
HV veteran
Redikate

liitunud: 30.12.2005




sõnum 17.03.2014 13:33:20 vasta tsitaadiga

Kui see pole sul mingi ülisalajane projekt, siis võiksid anda oma skirpti ning andmebaasi schema. Paar testi kirjet ei teeks ka paha. Oluliselt lihtsam oleks aidata ja kaasa mõelda kui me näeme mis kood on ning mis täpselt toimub.
_________________
http://nodejs.org/
"I'm also a person. Programming is just one thing I do."
Kommentaarid: 34 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 33
tagasi üles
vaata kasutaja infot saada privaatsõnum
priitr
HV kasutaja

liitunud: 17.06.2004




sõnum 17.03.2014 13:55:12 vasta tsitaadiga

LiivaneLord kirjutas:
priitr, skript loob 1-48-st numbrist ligi 12 miljonit erinevat kombinatsiooni. Andmebaasis on pea 1100 rida, igas reas 8 veergu, mis sisaldab vastavalt reale täpselt samasuguseid numbreid. Kui skript koostab iga järgneva numbrite rea, siis loendab, palju neid andmebaasis kattuvad. Seejärel liidab kõikide 1100 rea tulemused kokku ja salvestab tulemuse. See on põhiline tegevus.



Lotonumbrid icon_smile.gif?

Loe baas mällu hashtabelisse, sorteeri kirje ära ja tee stringiks, stringi kasuta hashi võtmena, genereeritud kombinatsioonid teed samuti stringiks ja suurendad hashi väärtust.
Kirje 1,42,36,... tee näiteks "1|...|36|...|42|...". Võid muidugi ka ise mingi hashifunktsiooni välja mõelda, ma lihtsalt puusalt tulistan.

_________________
Tšudes ne bõvajet.


viimati muutis priitr 17.03.2014 14:00:24, muudetud 1 kord
Kommentaarid: 27 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 27
tagasi üles
vaata kasutaja infot saada privaatsõnum
ranel
HV Guru

liitunud: 28.02.2005




sõnum 17.03.2014 13:56:04 vasta tsitaadiga

scicos?
_________________
Mobiilne rehvivahetus Lõuna-Eestis. www.rsrehvid.ee 53 843 843
Kommentaarid: 185 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 165
tagasi üles
vaata kasutaja infot saada privaatsõnum
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 14:01:51 vasta tsitaadiga

Et andmebaasi lugemiskordasid vähendada, tõin andmebaasist loetavad andmed ühe korraga välja muutujaga $sql_numbrid, aga kasu sellest praktiliselt ei olnud. Varem oli see käsk kõige madalama FOR loop sees.

süsteemimäng_viking tabeli päringu võtan hiljem vahelt ära vist, suht ebavajalik antud hetkel. Asja mõte oli ka süsteemipileteid kalkuleerida, aga see tulemuste hulk läheks miljarditesse sel juhul.


viimati muutis LiivaneLord 30.05.2014 01:05:12, muudetud 1 kord
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
2korda2
HV kasutaja

liitunud: 19.07.2003




sõnum 17.03.2014 14:25:22 vasta tsitaadiga

LiivaneLord kirjutas:
Asja mõte on viking loto lihtpiletite hulgast valida välja paarikaupa statistiliselt kasulikke pileteid, et neid kambakesti osta.

Mulle tundub, et ülesandele lähenetakse valesti. Kui eesmärgiks on osta "kõige tõenäolisemaid" kombinatsioone, siis pole vaja genereerida mitte kõikvõimalikke kombinatsioone, vaid vaadelda ainult toimunud loosimiste tulemusi (nagu aru saan, on neid 1100 kirjet?). Nendest lihtsalt sagedamini esinenud välja valida. Mida lugeda sagedamini esinenud:
a) numbriks
b) kombinatsiooniks
c) piletiks
on juba definitsiooni küsimus.
Muide, puudu on oluline osa analüüsist - võidusummad konkreetsete kombinatsioonide taga. Minu teada Viking Loto puhul sõltub võit võitvate piletite arvust (ja peavõit võib vist veel edasi ka kanduda?). Sestap on populaarsete kombinatsioonide korral (USA-s näiteks 9/11 seotud) võidud väiksemad. Kui eesmärgiks pole mitte "maksimaalselt võita" vaid "maksimaalselt tihti võita", siis muidugi võib selle osa välja jätta.

/offtopic
Tegeleda tõsiselt tegevusega, kus 50% sissepandust läheb süsteemi ülalhoidmiseks (+maksud/toetused), on minu meelest hullus. Keegi on kenasti öelnud: loto on lollide maks. Iseasi, kui eesmärgiks ongi meelelahutus ja/või abivajajate (sport, kultuur) toetamine. Mängida lotot aga kambakesi, on hullus kuubis. Sisuliselt keskmistatakse sedasi oma tulemust üldise taseme lähedale (loe: pool läheb kaotsi).
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum
napoleon
Unknown virus
napoleon

liitunud: 08.12.2008



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 14:33:19 vasta tsitaadiga

Natuke teemast mööda, kuid siiski kasulik soovitus - ära kasuta sql-s ei tabeli ega veeru nimedes täpitähti, sellest võib hiljem hulk peavalu olla, kui andmeid ühest süsteemist teise tahad tõsta.

Aga kirjelda lähemalt, mis on ülesandepüstitus. Võimalik, et asjale saab läheneda ka kavalamalt kui brute-force meetodil kõiki kombinatsioone genereerides.
Põgusalt peale vaadates tundub, et võibolla on siin mõistlikum lähenemine alustada hoopis loosimistest mitte numbrite huupi genereerimisest kuna mõtet on genereerida vaid kombinatsioone, kus vähemalt kolm numbrit pihta läheb.
Kommentaarid: 76 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 59
tagasi üles
vaata kasutaja infot saada privaatsõnum
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 15:03:24 vasta tsitaadiga

2korda2, võidusummad konkreetsete kombinatsioonide taga ei oma siin tähtsust, see väänab statistikat. Seetõttu on igal piletil oma väärtus. Teoreetiliselt võib see väärtus olla ka lihtsalt 1, 2 ja 3, aga seda siis kõigil piletitel, et tulemuses kajastuks statistika, mitte tegelikkus.

napoleon, nojah, aga mida see kolm numbrit eriti annab. Tulemusse tuleb see kirjutada niikuinii. Iseküsimus muidugi, kas määrata mingi alampiir, millest alates see andmebaasi salvestatakse.
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
napoleon
Unknown virus
napoleon

liitunud: 08.12.2008



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 15:17:25 vasta tsitaadiga

LiivaneLord, annab küll. Huupi genereerides tähendab kolm täiendavat numbrit 103776 korda rohkem kombinatsioone. Kaheksast numbrit kolm saad valida vaid 112 erineval moel.... aga antud juhul on variante veel vähem, kuna kolme numbri korral tohib neist ainult üks lisanumber olla. Seda muidugi eeldusel, et saan õigesti aru ja sind huvitavad vaid kombinatsioonid, mis vähemalt 2+1 pihta saavad.
Kommentaarid: 76 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 59
tagasi üles
vaata kasutaja infot saada privaatsõnum
Desmond5
HV kasutaja

liitunud: 14.09.2002




sõnum 17.03.2014 15:34:19 Re: Soovitage programmeerimiskeelt arvutamiseks. vasta tsitaadiga

LiivaneLord kirjutas:
Keegi teab mingit lihtsat programmeerimiskeelt, millega saaks teha suurema hulga kalkulatsioone ning millele saaks ette sööta mingi faili või andmebaasi, mille baasil neid kalkulatsioone teha? ... Programm peaks suutma teha palju kalkulatsioone ja töötama arvuti taustaprotsessina. Seega võiks vähe või enda poolt valitud prioriteediga kasutada arvuti ressursse.


Sedasorti ülesannet tasub lahendada spetsiaalse andmetöötlus/andmeanalüüsi töövahendiga, näiteks omataolistest enimlevinud ja sh vabavaraline R. Parim IDE selle jaoks on RStudio - https://www.rstudio.com/. R on kasutusel praktiliselt kõikides pankades, kindlustusseltsides, meditsiiniasutustes (teadustöö), statistikaseltsides, uuringuasutustes, ülikoolides jne..

Asja point on see, et kui teha tuleb palju kalkulatsioone, siis tasub ümber kolida vektor või maatriksarvutuste peale, mitte iteratiivselt nagu tavaliste prorammeerimiskeeltega. Sellisel juhul annab arvutusi teha kordades-kordades efektiivsemalt, paralleriseerides ning vajadusel isegi GPU peale skaleerides. Ehk siis "for" tsüklid jms on halvad ja aeglased, tehted vektoritega on aga kiired ja siis pole tavaliselt ka iteratsioone vaja (neid on vaja tavaliselt et kas filtreerida või mingit funktsiooni iga vektori elemendi peale rakendada, kuid see on kõik ka vektortehetega tehtav R-is).

Kui andmeid on juba tohutult (nt paarsada giga või terades või isegi petabaitides), siis on tegu nö big data ülesandega, ja siis tasub arvutamine host masinast serveri klastritesse skaleerida, kasutades big data tehnoloogiaid, nt Apache Hadoop. R ei jää ka big data korral hätta, vt Revolution R lahendust (R + Apache Hadoop) - http://www.revolutionanalytics.com/

Alternatiiviks R-ile selliste probleemide lahendamisel on täiesti tavalised ka SPSS (väga levinud, eriti meditsiinis), SAS (tohutult kallis aga nt pankades veel suht levinud), MatLab (levinud rohkem arvutiteadustes, inseneride hulgas jm) ja veel on ka veel teisigi - oluline lihtsalt on et andmetöötlust tehtaks vektorite kaupa mitte ükshaaval..
Kommentaarid: 2 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 2
tagasi üles
vaata kasutaja infot saada privaatsõnum
Ohohh
Kreisi kasutaja
Ohohh

liitunud: 13.09.2003




sõnum 17.03.2014 22:13:27 vasta tsitaadiga

Kui kiiresti see for tsüklite ahel "tühjalt" töötab, kui selle esimese select päringu asendad staatilise massiiviga ja insert'i välja kommenteerid?

Põhimõtteliselt see, mida priitr ütles, loe kõik andmed enne sisse ja pärast tulemuse saab ilmselt batchide kaupa kiiremini salvestada, kui rida-rea haaval.
Kommentaarid: 6 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 6
tagasi üles
vaata kasutaja infot saada privaatsõnum
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 17.03.2014 23:15:37 vasta tsitaadiga

Ohohh, njah, tundubki, et enamus auru läheb selle koodi jooksutamiseks, mitte andmebaasi kirjutamiseks.

See R tundus üsna huvitav tarkvara. Võiks täitsa proovida. Tegin mõned dumpuser testid ära ning tundub igati loogiliselt toimivad, peab leiutama, kuidas andmeid sellele ette sööta jne.

Uurin ...
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
DoS
HV veteran
DoS

liitunud: 19.08.2002




sõnum 18.03.2014 01:23:25 vasta tsitaadiga

Tegin huvi pärast C's katsetuse ja ei ole sel brute-forcel ka midagi häda, kui natuke teistmoodi läheneda:

c:
  1.  
  2. #include <stdio.h>
  3. #include <stdint.h>
  4.  
  5. /* numbreid piletil */
  6. #define TNUM 6
  7.  
  8. /* max loositav number, peab siin olema <=64 */
  9. #define MAXNUM 48
  10.  
  11. void get_numbers(uint64_t nr, uint8_t numbers[TNUM]) {
  12.     int k = TNUM;
  13.    
  14.     for (int i = 0; i < MAXNUM; i++) {
  15.         if ((nr & ((uint64_t)1 << i)) >> i) {
  16.             numbers[--k] = MAXNUM-i;
  17.         }
  18.     }
  19. }
  20.  
  21. void print_numbers(uint8_t numbers[TNUM]) {
  22.     for (int i = 0; i < TNUM; i++) {
  23.         printf("%d ", numbers[i]);
  24.     }
  25.     printf("\n");
  26. }
  27.  
  28. uint64_t get_ticket(uint8_t numbers[TNUM]) {
  29.     uint64_t ticket = (uint64_t)0;
  30.    
  31.     for (int i = 0; i < TNUM; i++) {
  32.         ticket |= (uint64_t)1 << (MAXNUM-numbers[i]);
  33.     }
  34.    
  35.     return ticket;
  36. }
  37.  
  38. int main(int argc, char **argv) {
  39.     uint64_t current_ticket = (uint64_t)((2<<(TNUM-1))-1); // esimene pilet
  40.     uint64_t max_ticket = current_ticket << (MAXNUM-TNUM); // viimane pilet
  41.     uint8_t numbers[TNUM];   
  42.     uint8_t nmatches;
  43.    
  44.     /* suvaline v6idupilet testiks */
  45.     uint8_t win_numbers[TNUM] = {1, 32, 34, 41, 42, 48};
  46.     uint64_t win_ticket = get_ticket(win_numbers);
  47.  
  48.     while (current_ticket <= max_ticket) { /* tsykkel yle k6igi piletite */
  49.         for (int j = 0; j < 1; j++) { /* loosimiste tsykkel, hetkel 1 */
  50.             nmatches = __builtin_popcountl(current_ticket & win_ticket);           
  51.  
  52.             if (nmatches == TNUM-1) {
  53.                 get_numbers(current_ticket, numbers);
  54.                 print_numbers(numbers);
  55.             }
  56.         }
  57.  
  58.         /* j2rgmine pilet */
  59.         uint64_t t = current_ticket | (current_ticket - 1);
  60.         current_ticket = (t + 1) | (((~t & -~t) - 1) >> (__builtin_ctzl(current_ticket) + 1));
  61.     }
  62. }
  63.  
Kommentaarid: 50 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 47
tagasi üles
vaata kasutaja infot saada privaatsõnum
kpihus
Kreisi kasutaja
kpihus

liitunud: 14.04.2003




sõnum 21.03.2014 09:32:04 vasta tsitaadiga

Offtopic:
Lihtsalt infotks, et statistiliselt lähenedes tulevasi tõenäolisi võidukombinatsioone välja ei arvuta. Miks ?
1) Ühe või teise palli tõenäosus sõltub pallide kaalust ja juhuslikusest. Pallid on väga täpselt kaalutud ja tava inimeste mõistes võime öelda et nad on sama kaaluga, ning juhuslikust statistiliselt ette ei ennuste
2) Võimalike kombinatsioone on 12,5 miljonit, tänaseks on loosimisi olnud ca 1000, see on liiga väike algmaterjal mingit sisulist statistikat teha
3) palle vahetatakse 2 korda aastas, seega mõistliku statistika saaksid sa ainult viimase poolaasta tulemuste peale, mis vähendab sinu statistika kasumlikust veelgi.

Aga silmaringi laiendamise mõttes säärast programmi kirjutada pole muiduig paha mõte.
Kommentaarid: 26 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 25
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 12.05.2014 23:00:34 vasta tsitaadiga

Pole just kõige kenam lahendus, aga teeb asja ära.

viimati muutis LiivaneLord 30.05.2014 01:24:51, muudetud 1 kord
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 13.05.2014 12:39:44 vasta tsitaadiga

Ei tea kuidas sul algne programm tehtud oli, kuid arvan, et kiirus ei saanud nii väike kül php tõttu olla, arvata sa püüdsid peale iga tehet käia andmebaasis ja tulemust salvestada, kuna sa JS seda teha ei oska läks asi tunduvalt paremaks, lugesid kõik andmed välja tegid korraga kõik arvutused ära ja salvestasid vajaliku tagasi, saidki kiirema tulemuse. Võimalik, et eksin, kuid nii tundub.
_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
LiivaneLord
Sõpradele "Olavi"

liitunud: 20.06.2006



Autoriseeritud ID-kaardiga

sõnum 13.05.2014 14:30:37 vasta tsitaadiga

andrusny, tegin varem prooviks selle, et jätsin kogu selle andmebaasi kirjutamise sealt viimasest tsüklist ära ehk alles jäi lihtsalt läbi kalkuleerimine, aga see ei muutnud mitte midagi.
Kommentaarid: 20 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 19
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  Soovitage programmeerimiskeelt arvutamiseks. mine lehele 1, 2  järgmine
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.