Forum strony www.multipasko.pl [Regulamin]


Dodaj wpis w tym temacie
Spis tematów
Login:

Hasło:
Strona: 1 2 ... 15 16 17 18 19
Wyślij wiadomość do admina

Przewiń wpisy ↓

C++ od niechcenia

2020-05-10 (02:54)

status 777ch
Data rejestracji: 2005-11-07 00:00:00
Ilość postów: 21731

1386
wpis nr 1 291 687
[ CZCIONKA MONOSPACE ]

Sindbad
a może przy okazji
jeśli masz oczywiście możliwość
to i dla 6-ek Multi to samo
czyli czas sprawdzenia bez wypisu
ile zerowych

Brak {60892014}
Sprawdzono zbiór = 300500200 kombinacji
Gwar..[6]= 79,736448095542 %
Time calculated : 26,1s
2020-05-10 (11:53)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 726
[ CZCIONKA MONOSPACE ]

Hej!

Może nie najszybsza, bo na CSN, ale działająca.
Poza tym ja mam mini komputer to gdzie mi tam do Waszych „kombajnów”.

Zerowe 5
Wykonanie obliczeń zajęło: 3,83 s

Zerowe 6
Wykonanie obliczeń zajęło: 12,51 s

Pozdrawiam
2020-05-10 (13:01)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 742
[ CZCIONKA MONOSPACE ]

Tak dla ciekawości sprawdziłem zerowe 7

Wykonanie obliczeń zajęło: 25,69 s


2020-05-10 (13:09)

status fair_play
Data rejestracji: 2016-05-12 00:00:00
Ilość postów: 7951

14865
wpis nr 1 291 751
[ CZCIONKA MONOSPACE ]

sindbad>

Witaj.
Czy możesz podać jaki konkretnie rozpis sprawdzasz ?
2020-05-10 (13:18)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 755
[ CZCIONKA MONOSPACE ]

Hej

Liczb = 80
Zakład = 20 liczb
Zakładów = 12387

Losowania MM.
2020-05-10 (14:46)

status 777ch
Data rejestracji: 2005-11-07 00:00:00
Ilość postów: 21731

1386
wpis nr 1 291 789
[ CZCIONKA MONOSPACE ]

sindbad

no to jest szybkie .....
więc tytułu mistrza używam
.....co do Twojej osoby --> zasadnie
możesz to udostępnić
w postaci projektu exe
+ source code
na maila

głównie do 6 tek
bo to jest miażdżąco szybkie

jak nie możesz lub nie chcesz to się nie obrażę
ja też nie udostępniam
wszystkiego co mam

pozdrawiam
2020-05-10 (17:06)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 857
[ CZCIONKA MONOSPACE ]

Leo, to nic innego jak ustawianie tablicy przed liczeniem ONT.
2020-05-10 (17:29)

status fair_play
Data rejestracji: 2016-05-12 00:00:00
Ilość postów: 7951

14865
wpis nr 1 291 861
[ CZCIONKA MONOSPACE ]

sindbad>

A możesz także podać wyniki oprócz czasów, tzn ile brak 5,6,7 ?
2020-05-10 (17:31)

status 777ch
Data rejestracji: 2005-11-07 00:00:00
Ilość postów: 21731

1386
wpis nr 1 291 862
[ CZCIONKA MONOSPACE ]

No to kiszka
bo to w trakcie sprawdzania non-stop
przy podmianie liczb lub segmentów sekwencji
dochodzi czyszczenie tablic + inne zapamiętania
....dla best cover ,frekwencji liczb dla ew kandydatów
co dają przyrost czasu od zmiany do zmiany
a ponad to
jeśli jest kilka tablic do zapamiętania ,
dla 3,4,5,6,
to brakuje pamięci
zwłaszcza jak rozpis ma kilkanaście tysięcy linii

dlatego kombinuję jak się da ,bez tablic wielowymiarowych
2020-05-10 (18:02)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 872
[ CZCIONKA MONOSPACE ]

Leo, ja użyłem tablicy jednowymiarowej i CSN.
Można również na tablicy bitowej dla zaoszczędzenia pamięci.
Zależy, co się chce i kosztem, czego.

2020-05-10 (18:15)

status 777ch
Data rejestracji: 2005-11-07 00:00:00
Ilość postów: 21731

1386
wpis nr 1 291 878
[ CZCIONKA MONOSPACE ]

-->na tablicy bitowej dla zaoszczędzenia pamięci.
dla sprawdzenia 6 tylko stan czyli ile brak

dałbyś radę to zrobić jako przykład dla bazy multi ?
no i słowo magiczne --> PLEASE
2020-05-10 (18:20)

status fair_play
Data rejestracji: 2016-05-12 00:00:00
Ilość postów: 7951

14865
wpis nr 1 291 883
[ CZCIONKA MONOSPACE ]

sindbad>

Sprawdzając brak 7-mek potrzebujesz 80 po 7 (3 176 716 400‬) adresóww jednowymiarowej tablicy. Masz aż tyle pamięci w swoim mini komputerku ?
2020-05-10 (18:23)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 885
[ CZCIONKA MONOSPACE ]

Mam 16GB
2020-05-10 (18:53)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 894
[ CZCIONKA MONOSPACE ]

Na 7/80
29% używanej pamięci
16644596 kB całkowitej pamięci
11738464 kB dostępnej pamięci
2020-05-10 (18:58)

status fair_play
Data rejestracji: 2016-05-12 00:00:00
Ilość postów: 7951

14865
wpis nr 1 291 896
[ CZCIONKA MONOSPACE ]

no tak C++ to nie Excel 2007

ale nie podałeś ilości brakujących 5-tek i 6-tek.

--- wpis edytowano 2020-05-10 18:59 ---

2020-05-10 (19:40)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 1 291 909
[ CZCIONKA MONOSPACE ]

To stary poczciwy Pascal
2020-05-11 (14:09)

status Lottonauta
Data rejestracji: 2012-09-03 00:00:00
Ilość postów: 2829

13559
wpis nr 1 292 146
[ CZCIONKA MONOSPACE ]

@777ch

Czy ten program we wpisie 1 291, to jest ta próbka o której pisałem?
Jeżeli tak, to nie ma problemu z przełożeniem na C.

Pozdrawiam

I jeszcze ...
Czy ten kawałek kodu kompiluje się u ciebie poprawnie, bo wg mnie powinieneś mieć ze dwa ekrany warningów.

Jaki to kompilator?
Pokaż opcje kompilacji i linkowania?
2020-05-11 (15:14)

status 777ch
Data rejestracji: 2005-11-07 00:00:00
Ilość postów: 21731

1386
wpis nr 1 292 161
[ CZCIONKA MONOSPACE ]

Lottonauta

Przepraszam Cię
ale na ten moment mam pomysł
który jeśli się uda napisać ,
to czas obliczeń spadnie do minimum

W kwestii kompilacji
to Delphi 2010 kompiluje to bez problemu
2020-05-24 (04:32)

status BochiCintra
Data rejestracji: 2019-07-29 00:00:00
Ilość postów: 99

16005
wpis nr 1 294 953
[ CZCIONKA MONOSPACE ]

codeblocks
combinations test v,k,t,m

source code original
http://www.quixquax.at/ue_current/binaries_and_sources/lotto.c

Compile cmd: gcc -ansi -lm lotto.c -o lotto
*/
#include<stdio.h>

FILE *finfo;
int counter = 0;
//int ncovered = 0;
int dist;
//int total_no;
int v,k,t,m;

struct net
{
struct net *right;
char* tip;
};
/*======================================================
Function prototypes */
struct net *addtip(struct net*, char*);
void printnet(struct net*);
void randtip(char*);
char distance(char*, char*);
//struct net *totalnet(struct net*, char*, int);
//void probnet(struct net*, char*, int);
//char checktip(struct net *, char*);
//char checktip1(struct net *, char*, int*);
//void gotoperm(struct net*, int, char*);
//void freenet(struct net*);
//void printtip(char*);

/*======================================================
======================================================*/
int main()
{
int Iter; /* -r option: number of random tips */
int copt;
int option_index = 0;
struct net *s;
int i;
char* a;

/* Seed random number generator, start clock and open info-file */
srand((unsigned)time(NULL));
{
printf("Digite o Total de Numeros (1 a 100) V:");
scanf("%d", &v);

if((v < 1) || (v > 100)){
printf("\nTotal de Numeros Invalido!\n\n");
system("Pause");
return 0;
}

printf("Digite o Total de Numeros por Bilhetes (1 a 50) K:");
scanf("%d", &k);

if((k < 2) || (k > 50)){
printf("\nTotal de Numeros por Bilhetes Invalido!\n\n");
system("Pause");
return 0;
}

printf("Digite a Garantia da Matriz (1 a 20) T:");
scanf("%d", &t);

if((t < 2) || (t > 20)){
printf("\nGarantia da Matriz Invalida!\n\n");
system("Pause");
return 0;
}

printf("Digite a Condicao da Matriz (1 a 20) M:");
scanf("%d", &m);

if((m < 2) || (m > 20)){
printf("\nCondicao da Matriz Invalida!\n\n");
system("Pause");
return 0;
}

printf("\n====== PARAMETROS ======\n");
printf("\nV = %0d", v);
printf("\nK = %0d", k);
printf("\nT = %0d", t);
printf("\nM = %0d", m);
printf("\n\n");

}
/* v = 50;
k = 6;
t = 3;
m = 6;*/
Iter = 1000000;

/* Initialization */
s = NULL;
a = (char *)calloc(k+1, sizeof(char));
/* This is the same as
a = (char *)malloc((k+1)*sizeof(char));
memset(a, 0,k+1); */

dist = k+1-t;

// do
for(i=0; i<Iter; i++)
{
randtip(a);
s = addtip(s, a);

}// while(1);

printf("\n");
//printtip(a);
system("Pause");

// freenet(s);
// if(a != NULL)
// free(a);


return 0;

}
/*======================================================
======================================================
Append tip */
struct net *addtip(struct net *p, char* a)
{
int n;

n = strlen(a);
if(p == NULL)
{
p = (struct net *)calloc(1, sizeof(struct net));
(p->tip) = (char *)calloc(n+1, sizeof(char));
strcpy(p->tip, a);
p->right = NULL;
counter++;
printnet(p);

}
else
{
if(distance(a, p->tip) >= dist)
p->right = addtip(p->right, a);

}
return p;
}
/*======================================================
Free net */
/*void freenet(struct net *p)
{
struct net *r;

while(p != NULL)
{
r = p->right;
free(p->tip);
free(p);
p = r;
}
return;
}*/
/*======================================================
Print all tips */
void printnet(struct net *p)
{
char *Filename;
int i;
// finfo = fopen("\combinações.txt", "w");
if(p != NULL)
{
printf("%02d -> ",counter);

for(i=0; i<k; i++)

printf("%02d ", p->tip[i]);
printf("\n");
// fprintf(finfo, "%2d", p->tip[i]);
// fprintf(finfo, "\n");
printnet(p->right);
}

}
/*======================================================
Print tip */
/*void printtip(char* a)
{
int i;
finfo = fopen("combinações.txt", "w");
// fprintf(finfo, "\n");
for(i=0; i<k; i++)
fprintf(finfo, "%02d ", a[i]);
fprintf(finfo, "\n");
counter++;
return;
}
/*======================================================
Random tip */
void randtip(char* a)
{
int i;
int j;
int aux;

a[0] = rand()%v+1;
for(i=1; i<k; i++)
{
aux = 0;
while(aux == 0)
{
aux = 1;
a[i] = rand()%v+1;
for(j=0; j<i; j++)
aux *= (a[i] == a[j])? 0 : 1;
}
}
}
/*======================================================
Hamming distance */
char distance(char* a, char* b)
{
char i;
char j;
char codist;

codist = 0;
for(i=0; i<m; i++)
{
for(j=0; j<k; j++)
codist += (b[j]==a[i])? 1: 0;
}
return k-codist;
}
2020-05-28 (10:29)

status edi8
Data rejestracji: 2007-04-03 00:00:00
Ilość postów: 41774

2623
wpis nr 1 295 785
[ CZCIONKA MONOSPACE ]

2020-01-21 (14:48) we wpisie nr 1 269 236
adresowanym do Lottonauty,
kolega BochiCintra z Brazylii zamieścił w tym
wątku listing programu https://github.com/jrocha/cover/blob/master/CoverC.c
zaś 3 dni temu zamieścił go także i na włoskim forum:
https://wheels.forumcommunity.net/?t=61450941&st=30#entry444940637

W odpowiedzi dostał podziękowanie od znanego autora
wielu rekordów i programów, kolegi o nicku stef72 -
gdyż ten listing to wersja 64 bitowa programu Ininuga


| Dodaj wpis w tym temacie | Spis tematów | Wyniki lottoStrona: 1 2 ... 15 16 17 18 19
Wyślij wiadomość do admina