domingo, 26 de junho de 2011

Embrião dos estudos de análise combinatória para a loteria



DISPONIBILIZO PARA VOCÊS, INTERNAUTAS, O CONTEÚDO EMBRIONÁRIO DO "PROJETO LOTERIA", LEMBRANDO QUE NÃO SOU PROGRAMADOR, ESTOU MUITO MAIS PARA DIVULGADOR E OBSERVADOR.


'PROGRAMA DESENVOLVIDO POR VANDOÖS DOS SANTOS BARAéNA
'ESTE PROGRAMA DE CARµTER AMADOR GERA VOLANTES PARA A MEGASENA
'USANDO O METODO MATEMATICO DE ANµLISE COMBINATàRIA, OU SEJA, UM JO
'GO DE COMBINA€åES DE N(ENE) ELEMENTOS TOMADOS P(PÒ) A P(PÒ).
' C n,p = n!/(n-p)! x p!
1 CLS
COLOR 10, 9, 3
CLS
COLOR 15, 9
FOR L = 2 TO 17
LOCATE L, 1: PRINT "|"
LOCATE L, 79: PRINT "|"
NEXT L

CLS
COLOR 10, 9, 3
CLS
COLOR 15, 9
LOCATE 2, 2: PRINT "============================================================================="
LOCATE 3, 2: PRINT "M E G A S E N A - VersÆo 1.0 por Vando¡s S. Bara£na             "
LOCATE 4, 2: PRINT "Programa integrante do Projeto Loteria"
LOCATE 5, 2: PRINT "Por Vando¡s dos Santos Bara£na"
LOCATE 6, 2: PRINT "VersÆo atualizada e revista em 10/07/2004 …s 23h15min"
LOCATE 7, 2: PRINT "============================================================================="
PRINT
28 LOCATE 8, 2: PRINT "                                                     "
LOCATE 8, 2: PRINT "Quantas dezenas para a combina‡Æo na MEGASENA"; : INPUT N
IF N < 7 OR N > 30 OR N <> INT(N) THEN
GOTO 28
END IF
DIM X$(N)
LOCATE 9, 2: PRINT "Qual ‚ o pre‡o de cada jogo - Volante de 6(SEIS) dezenas"; : INPUT PJ
L = 10
C = 2
FOR E = 1 TO N
20 LOCATE L, C: PRINT "                                "
LOCATE L, C: PRINT "Dez"; "["; E; "]"; : INPUT X$(E)
IF VAL(X$(E)) <= 0 OR VAL(X$(E)) > 60 THEN
GOTO 20
END IF
IF X$(E) = X$(E - 1) THEN
GOTO 20
END IF
L = L + 1
IF L >= 20 THEN
L = 10
C = C + 13
ELSE
END IF
NEXT E
FOR J = 1 TO N
FOR K = J + 1 TO N
IF X$(J) <= X$(K) THEN
PRINT " "
ELSE
SWAP X$(J), X$(K)
END IF
NEXT K
NEXT J
CLS
LOCATE 2, 2: PRINT "============================================================================="
LOCATE 3, 2: PRINT "M E G A S E N A - VersÆo 1.0 por Vando¡s S. Bara£na             "
LOCATE 4, 2: PRINT "Programa integrante do Projeto Loteria"
LOCATE 5, 2: PRINT "Por Vando¡s dos Santos Bara£na"
LOCATE 6, 2: PRINT "VersÆo atualizada e revista em 10/07/2004 …s 23h15min"
LOCATE 7, 2: PRINT "============================================================================="
COLOR 10, 9, 3
COLOR 15, 9
LOCATE 12, 2: PRINT "Qual ‚ o nome do ARQUIVO "; : INPUT N$
CLS
COLOR 10, 9, 3
COLOR 15, 9
CLS
COLOR 15, 9
LOCATE 2, 2: PRINT "============================================================================="
LOCATE 3, 2: PRINT "M E G A S E N A - VersÆo 1.0 por Vando¡s S. Bara£na             "
LOCATE 4, 2: PRINT "Programa integrante do Projeto Loteria"
LOCATE 5, 2: PRINT "Por Vando¡s dos Santos Bara£na"
LOCATE 6, 2: PRINT "VersÆo atualizada e revista em 10/07/2004 …s 23h15min"
LOCATE 7, 2: PRINT "============================================================================="
PRINT
C = 2
L = 10
FOR E = 1 TO N
LOCATE 9, 2: PRINT "Dezenas escolhidas:"
LOCATE L, C: PRINT "["; X$(E); "]"
C = C + 5
IF C >= 78 THEN
C = 2
L = L + 2
ELSE
END IF
NEXT E
OPEN N$ FOR OUTPUT AS #1
PRINT
FOR A = 1 TO N
FOR B = A + 1 TO N
FOR C = B + 1 TO N
FOR D = C + 1 TO N
FOR E = D + 1 TO N
FOR F = E + 1 TO N



CP1 = VAL(X$(A))
CP2 = VAL(X$(B))
CP3 = VAL(X$(C))
CP4 = VAL(X$(D))
CP5 = VAL(X$(E))
CP6 = VAL(X$(F))


CP7 = (CP1 / 10)
CP8 = (CP2 / 10)
CP9 = (CP3 / 10)
CP10 = (CP4 / 10)
CP11 = (CP5 / 10)
CP12 = (CP6 / 10)

CP13 = (CP7 - INT(CP7)) * 10
CP14 = (CP8 - INT(CP8)) * 10
CP15 = (CP9 - INT(CP9)) * 10
CP16 = (CP10 - INT(CP10)) * 10
CP17 = (CP11 - INT(CP11)) * 10
CP18 = (CP12 - INT(CP12)) * 10

CP19 = (CP1 / 2 - INT(CP1 / 2))
CP20 = (CP2 / 2 - INT(CP2 / 2))
CP21 = (CP3 / 2 - INT(CP3 / 2))
CP22 = (CP4 / 2 - INT(CP4 / 2))
CP23 = (CP5 / 2 - INT(CP5 / 2))
CP24 = (CP6 / 2 - INT(CP6 / 2))

CP25 = (INT(CP7) + CP13)
CP26 = (INT(CP8) + CP14)
CP27 = (INT(CP9) + CP15)
CP28 = (INT(CP10) + CP16)
CP29 = (INT(CP11) + CP17)
CP30 = (INT(CP12) + CP18)

CP31 = (CP25 / 2 - INT(CP25 / 2))
CP32 = (CP26 / 2 - INT(CP26 / 2))
CP33 = (CP27 / 2 - INT(CP27 / 2))
CP34 = (CP28 / 2 - INT(CP28 / 2))
CP35 = (CP29 / 2 - INT(CP29 / 2))
CP36 = (CP30 / 2 - INT(CP30 / 2))


IF NOT (CP19 = 0 AND CP20 = 0 AND CP21 = 0 AND CP22 = 0 AND CP23 = 0 AND CP24 = 0 OR CP19 > 0 AND CP20 > 0 AND CP21 > 0 AND CP22 > 0 AND CP23 > 0 AND CP24 > 0) THEN
IF NOT (CP19 = 0 AND CP20 = 0 AND CP21 = 0 AND CP22 = 0 AND CP23 = 0 OR CP19 > 0 AND CP20 > 0 AND CP21 > 0 AND CP22 > 0 AND CP23 > 0) THEN
IF NOT (CP20 = 0 AND CP21 = 0 AND CP22 = 0 AND CP23 = 0 AND CP24 = 0 OR CP20 > 0 AND CP21 > 0 AND CP22 > 0 AND CP23 > 0 AND CP24 > 0) THEN
IF NOT (CP31 = 0 AND CP32 = 0 AND CP33 = 0 AND CP34 = 0 AND CP35 = 0 AND CP36 = 0 OR CP31 > 0 AND CP32 > 0 AND CP33 > 0 AND CP34 > 0 AND CP35 > 0 AND CP36 > 0) THEN

IF NOT CP2 = CP1 + 1 AND NOT CP3 = CP2 + 1 AND NOT CP4 = CP3 + 1 AND NOT CP5 = CP4 + 1 AND NOT CP6 = CP5 + 1 THEN

IF INT(CP7) <= 2 THEN
IF INT(CP8) <= 3 THEN
IF INT(CP9) <= 4 THEN
IF INT(CP9) <> 0 THEN
IF INT(CP10) <= 5 THEN
IF INT(CP10) <> 1 THEN
IF INT(CP11) <> 2 THEN
IF INT(CP12) >= 4 THEN

PRINT #1, X$(A); " "; X$(B); " "; X$(C); " "; X$(D); " "; X$(E); " "; X$(F)
LOCATE 20, 2: PRINT "AGUARDE!! Gerando volantes =>"; "["; CF; "]"
CF = CF + 1


END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF

NEXT F
NEXT E
NEXT D
NEXT C
NEXT B
NEXT A
LOCATE 20, 2: PRINT "                                                                             "
LOCATE 20, 2: PRINT "Combina‡Æo conclu¡da =>  ARQUIVO"; " "; N$
LOCATE 21, 2: PRINT "                                                                             "
LOCATE 21, 2: PRINT "Quantidade de jogos  =>"; " "; CF - 1
LOCATE 22, 2: PRINT "                                                                             "
LOCATE 22, 2: PRINT "Pre‡o total do jogo  =>  R$ "; USING "#######.##"; PJ * (CF - 1)
CLOSE
PRINT
LOCATE 23, 45: PRINT "Pressione ESC para voltar..."
DO
LOOP UNTIL INKEY$ = CHR$(27)
RUN
END


Nenhum comentário:

Postar um comentário

Recomendo esta empresa. Já obtive progressão salarial com seus cursos

Cursos Online na Área de Finanças

Excelentes dicas de MATEMÁTICA em DVD - seja aprovado em concursos