예제 #1
0
        static void Main(string[] args)
        {
            int opt = 0;

            Console.WriteLine("Escolha o tipo de sorteio:");
            Console.WriteLine("1 - Megasena");
            Console.WriteLine("2 - Quina");
            Console.WriteLine("3 - Lotomania");
            Console.WriteLine("4 - Lotofacil");

            var k = Console.ReadLine();

            int.TryParse(k, out opt);

            Lottery lottery = null;
            int     bids    = 0;

            switch (opt)
            {
            case 1:
            {
                lottery = new Mega();
                bids    = 6;
                break;
            }

            case 2:
            {
                lottery = new Quina();
                bids    = 5;
                break;
            }

            case 3:
            {
                lottery = new Lotomania();
                bids    = 50;
                break;
            }

            case 4:
            {
                lottery = new Lotofacil();
                bids    = 15;
                break;
            }
            }

            while (true)
            {
                var output = string.Join("\t", lottery.Drawn(bids));
                File.AppendAllText("output.txt", output + "\n");
                Console.WriteLine(output);
                Console.ReadKey();
            }
        }
예제 #2
0
        static void Main(string[] args)
        {
            Task taskLotofacil = Task.Run(() =>
            {
                LoteriaBase lotoFacil = new Lotofacil();
                lotoFacil.executar();
            });

            Task taskMegasena = Task.Run(() =>
            {
                LoteriaBase megasena = new Megasena();
                megasena.executar();
            });

            taskLotofacil.Wait();
            taskMegasena.Wait();
        }
        private void btnGenerateModel_Click(object sender, EventArgs e)
        {
            DialogResult dResult = MessageBox.Show(@"Será criado o arquivo C:\Users\Public\ExemploApostasLotofacil.xml que demonstra o modelo para o arquivo de importação. Deseja criá-lo?", "Deseja criar arquivo modelo?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (dResult == DialogResult.Yes)
            {
                TextWriter txtWriter = new StreamWriter(@"C:\Users\Public\ExemploApostasLotofacil.xml");
                try
                {
                    List <Lotofacil> lst   = new List <Lotofacil>();
                    Lotofacil        lfAux = new Lotofacil
                    {
                        N1  = 0,
                        N2  = 0,
                        N3  = 0,
                        N4  = 0,
                        N5  = 0,
                        N6  = 0,
                        N7  = 0,
                        N8  = 0,
                        N9  = 0,
                        N10 = 0,
                        N11 = 0,
                        N12 = 0,
                        N13 = 0,
                        N14 = 0,
                        N15 = 0
                    };
                    lst.Add(lfAux);
                    lst.Add(lfAux);

                    XmlSerializer serializador = new XmlSerializer(typeof(List <Lotofacil>));
                    serializador.Serialize(txtWriter, lst);
                }
                finally
                {
                    txtWriter.Close();
                }
            }
        }
        public Concurso ConsultaApi()
        {
            Lotofacil loteria = new Lotofacil();

            loteria.ID      = 1700;
            loteria.Cidade  = "REGISTRO-SP";
            loteria.Local   = "Caminhão da Sorte";
            loteria.Premios = new List <PremioPadrao>();
            loteria.Premios.Add(new PremioPadrao(15, 100000, 10));
            loteria.Premios.Add(new PremioPadrao(14, 100000, 5));
            loteria.Premios.Add(new PremioPadrao(13, 100000, 3));
            loteria.Premios.Add(new PremioPadrao(12, 100000, 3));
            loteria.Premios.Add(new PremioPadrao(11, 100000, 3));
            loteria.ProximoConcurso  = new ProximoConcurso(DateTime.Now.AddDays(2), 500000);
            loteria.ValorAcumulado   = 3122222;
            loteria.ArrecadacaoTotal = 500000;
            loteria.Dezenas          =
                new List <byte>()
            {
                1, 2, 4, 6, 7, 8, 9, 10, 11, 13, 14, 17, 19, 20, 21
            };
            return(loteria);
        }
        private void openFileDialog1_FileOk(object sender, CancelEventArgs e)
        {
            string _nomeArquivo = openFileDialog1.FileName;

            lstApostas = new List <Lotofacil>();
            if (File.Exists(_nomeArquivo))
            {
                // Se é um XML
                if (_nomeArquivo.EndsWith(".xml"))
                {
                    XmlSerializer serializador = new XmlSerializer(typeof(List <Lotofacil>));

                    using (TextReader textReader = new StreamReader(_nomeArquivo))
                    {
                        try
                        {
                            object o = serializador.Deserialize(textReader);
                            lstApostas = o as List <Lotofacil>;
                        }
                        catch
                        {
                            MessageBox.Show("Arquivo de importação de apostas corrompido, favor verificar dados inseridos.", "Arquivo corrompido", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            return;
                        }
                    }
                }
                // Se é um txt separado por tabs
                else
                {
                    using (TextReader textReader = new StreamReader(_nomeArquivo))
                    {
                        try
                        {
                            string[] apostasArray = textReader.ReadToEnd().Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);

                            for (int i = 0; i < apostasArray.Length; i++)
                            {
                                string[]  aposta = apostasArray[i].Split('\t');
                                Lotofacil jogo   = new Lotofacil();

                                jogo.N1  = Convert.ToInt32(aposta[0]);
                                jogo.N2  = Convert.ToInt32(aposta[1]);
                                jogo.N3  = Convert.ToInt32(aposta[2]);
                                jogo.N4  = Convert.ToInt32(aposta[3]);
                                jogo.N5  = Convert.ToInt32(aposta[4]);
                                jogo.N6  = Convert.ToInt32(aposta[5]);
                                jogo.N7  = Convert.ToInt32(aposta[6]);
                                jogo.N8  = Convert.ToInt32(aposta[7]);
                                jogo.N9  = Convert.ToInt32(aposta[8]);
                                jogo.N10 = Convert.ToInt32(aposta[9]);
                                jogo.N11 = Convert.ToInt32(aposta[10]);
                                jogo.N12 = Convert.ToInt32(aposta[11]);
                                jogo.N13 = Convert.ToInt32(aposta[12]);
                                jogo.N14 = Convert.ToInt32(aposta[13]);
                                jogo.N15 = Convert.ToInt32(aposta[14]);

                                lstApostas.Add(jogo);
                            }
                        }
                        catch
                        {
                            MessageBox.Show("Arquivo de importação de apostas corrompido, favor verificar dados inseridos.", "Arquivo corrompido", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            return;
                        }
                    }
                }
            }

            dgApostas.Columns.Clear();
            dgApostas.DataSource          = lstApostas;
            dgApostas.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dgApostas.Refresh();
        }
예제 #6
0
        private Concurso buscar(int?id)
        {
            Lotofacil con = new Lotofacil();

            try
            {
                using (cn)
                {
                    cn.Open();

                    using (IDataReader dr = cn.ExecuteReader("sp_buscaConcursoLotofacil", new { @IdConcurso = id }, commandType: CommandType.StoredProcedure))
                    {
                        if (dr.Read())
                        {
                            con.ProximoConcurso = new ProximoConcurso();

                            con.ID                            = Convert.ToInt32(dr["idConcurso"]);
                            con.Data                          = Convert.ToDateTime(dr["data"]);
                            con.Cidade                        = Convert.ToString(dr["cidade"]);
                            con.Local                         = Convert.ToString(dr["local"]);
                            con.ValorAcumulado                = Convert.ToDecimal(dr["valorAcumulado"]);
                            con.ArrecadacaoTotal              = Convert.ToDecimal(dr["arrecadacaoTotal"]);
                            con.ProximoConcurso.Data          = Convert.ToDateTime(dr["proximoConcursoData"]);
                            con.ProximoConcurso.ValorEstimado = Convert.ToDecimal(dr["proximoConcursoValorEstimado"]);
                            con.EspecialValorAcumulado        = Convert.ToDecimal(dr["especialValorAcumulado"]);
                        }
                    }

                    if (con.ID != 0)
                    {
                        using (IDataReader dr = cn.ExecuteReader("sp_buscaDezenasLotofacil", new { @IdConcurso = con.ID }, commandType: CommandType.StoredProcedure))
                        {
                            con.Dezenas = new List <byte>();

                            while (dr.Read())
                            {
                                con.Dezenas.Add(Convert.ToByte(dr["dezena"]));
                            }
                        }

                        using (IDataReader dr = cn.ExecuteReader("sp_buscaPremiosLotofacil", new { @IdConcurso = con.ID }, commandType: CommandType.StoredProcedure))
                        {
                            con.Premios = new List <PremioPadrao>();

                            while (dr.Read())
                            {
                                PremioPadrao premio = new PremioPadrao()
                                {
                                    Acertos    = Convert.ToByte(dr["acertos"]),
                                    Ganhadores = Convert.ToInt32(dr["ganhadores"]),
                                    ValorPago  = Convert.ToDecimal(dr["valorPago"])
                                };

                                con.Premios.Add(premio);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(con);
        }
예제 #7
0
        private Concurso deserializaConcurso(dynamic obj)
        {
            Lotofacil loteria = new Lotofacil()
            {
                ID                     = obj.concurso.numero,
                Data                   = DateTime.ParseExact(obj.concurso.data.ToString(), "dd/MM/yyyy", new CultureInfo("pt-BR")),
                Cidade                 = obj.concurso.cidade,
                Local                  = obj.concurso.local,
                ValorAcumulado         = Convert.ToDecimal(obj.concurso.valor_acumulado.ToString().Replace(".", "")),
                ArrecadacaoTotal       = Convert.ToDecimal(obj.concurso.arrecadacao_total.ToString().Replace(".", "")),
                EspecialValorAcumulado = Convert.ToDecimal(obj.especial_independencia_valor_acumulado.ToString().Replace(".", "")),
            };

            loteria.Dezenas = new List <byte>();
            foreach (byte dezena in obj.concurso.numeros_sorteados)
            {
                loteria.Dezenas.Add(dezena);
            }

            loteria.ProximoConcurso = new ProximoConcurso()
            {
                Data          = DateTime.ParseExact(obj.proximo_concurso.data.ToString(), "dd/MM/yyyy", new CultureInfo("pt-BR")),
                ValorEstimado = Convert.ToDecimal(obj.proximo_concurso.valor_estimado.ToString().Replace(".", ""))
            };

            loteria.Premios = new List <PremioPadrao>()
            {
                new PremioPadrao()
                {
                    Acertos    = 15,
                    ValorPago  = Convert.ToDecimal(obj.concurso.premiacao.acertos_15.valor_pago.ToString().Replace(".", "")),
                    Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_15.ganhadores.ToString().Replace(".", ""))
                },
                new PremioPadrao()
                {
                    Acertos    = 14,
                    ValorPago  = Convert.ToDecimal(obj.concurso.premiacao.acertos_14.valor_pago.ToString().Replace(".", "")),
                    Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_14.ganhadores.ToString().Replace(".", ""))
                },
                new PremioPadrao()
                {
                    Acertos    = 13,
                    ValorPago  = Convert.ToDecimal(obj.concurso.premiacao.acertos_13.valor_pago.ToString().Replace(".", "")),
                    Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_13.ganhadores.ToString().Replace(".", ""))
                },
                new PremioPadrao()
                {
                    Acertos    = 12,
                    ValorPago  = Convert.ToDecimal(obj.concurso.premiacao.acertos_12.valor_pago.ToString().Replace(".", "")),
                    Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_12.ganhadores.ToString().Replace(".", ""))
                },
                new PremioPadrao()
                {
                    Acertos    = 11,
                    ValorPago  = Convert.ToDecimal(obj.concurso.premiacao.acertos_11.valor_pago.ToString().Replace(".", "")),
                    Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_11.ganhadores.ToString().Replace(".", ""))
                },
            };

            loteria.ProximoConcurso = new ProximoConcurso()
            {
                Data          = DateTime.ParseExact(obj.proximo_concurso.data.ToString(), "dd/MM/yyyy", new CultureInfo("pt-BR")),
                ValorEstimado = Convert.ToDecimal(obj.proximo_concurso.valor_estimado.ToString().Replace(".", ""))
            };

            return(loteria);
        }