public static IProbabilidadeMaoInicial GetItem(IMaoBasica mao, int qtdJogosSimulacao = 500000) { IProbabilidadeMaoInicial probMaoInicial = null; StringBuilder strSelect = ProbabilidadeMaoInicialContext.GetSelectQuery(); strSelect.AppendFormat(" WHERE " + Environment.NewLine + "(" + Environment.NewLine + " (m.numero_carta_1 = {0} AND m.numero_carta_2 = {1}) OR" + Environment.NewLine + " (m.numero_carta_2 = {2} AND m.numero_carta_1 = {3})" + Environment.NewLine + ") AND " + Environment.NewLine + "m.offorsuited like \'{4}\' " + Environment.NewLine, mao.NumCarta1, mao.NumCarta2, mao.NumCarta1, mao.NumCarta2, mao.OffOrSuited ); DBConnect.AbreConexaoSeNaoEstiverAberta(); IDbCommand command = DBConnect.Connection.CreateCommand(); command.CommandText = strSelect.ToString(); using (IDataReader dataReader = command.ExecuteReader()) { if (dataReader.Read()) { probMaoInicial = ProbabilidadeMaoInicialContext.GetItem(dataReader); } } return(probMaoInicial); }
public bool Equals(IMaoBasica other) { if (this.OffOrSuited != other.OffOrSuited) { return(false); } if ((this.NumCarta1 == other.NumCarta1 && this.NumCarta2 == other.NumCarta2) || (this.NumCarta1 == other.NumCarta2 && this.NumCarta2 == other.NumCarta1)) { return(true); } return(false); }
private Carta [] GetCartas(IMaoBasica mao) { Carta[] cartas = new Carta[2]; if (mao.OffOrSuited == 'O') { cartas[1] = new Carta(mao.NumCarta1, Enuns.Naipe.Copas); cartas[0] = new Carta(mao.NumCarta2, Enuns.Naipe.Espadas); } else if (mao.OffOrSuited == 'S') { cartas[1] = new Carta(mao.NumCarta1, Enuns.Naipe.Copas); cartas[0] = new Carta(mao.NumCarta2, Enuns.Naipe.Copas); } else { throw new Exception("Tipo de carta não encontrada"); } return(cartas); }
public static bool JaExisteProbabilidadeCadastrada(IMaoBasica mb, uint?qtdJogosJogados = null) { DBConnect.AbreConexaoSeNaoEstiverAberta(); uint?jogosJogados = (qtdJogosJogados ?? qtdJogosPadrao); StringBuilder strBuilder = new StringBuilder() .AppendFormat("" + "SELECT COUNT(*) " + "FROM " + "probabilidade.simulacao_call_pre_flop sc" + "left join probabilidade.mao_duas_cartas mao ON sc.id_mao_duas_cartas = mao.id" + "WHERE " + "numero_carta_1 = {0} AND" + Environment.NewLine + "numero_carta_2 = {1} AND" + Environment.NewLine + "offorsuited = \'{2}\' AND" + Environment.NewLine + "qtd_jogos_simulados = {3}", mb.NumCarta1, mb.NumCarta2, mb.OffOrSuited, jogosJogados ); try { IDbCommand command = DBConnect.Connection.CreateCommand(); command.CommandText = strBuilder.ToString(); IDataReader d = command.ExecuteReader(); d.Read(); long numeroDeLinhas = (long)d.GetValue(0); d.Close(); return(numeroDeLinhas > 0); } catch (Exception e) { throw e; } }
private bool ExisteSimulacao(IMaoBasica maoBasica, uint qtdJogosSimulacao = 500000) { return(SimulacaoCallPreFlopProbabilidadeContext.JaExisteProbabilidadeCadastrada(maoBasica)); }