Jump to content
Luiz Luiza

[Resolvido] tentei chamar metodo , nao deu certo porque ?

Recommended Posts

 

c# consegue superar matemática 

WTF

 

questão  : Escreva um programa que simule o lançamento de uma moeda. Para cada lançamento da moeda o programa deve contabilizar se o resultado foi Cara ou Coroa. Seu programa deve simular o lançamento de uma moeda 1000 vezes e imprimir o total de vezes que o resultado foi Cara e Coroa. Seu programa deve implementar um método chamado Joga( ) que retorna 0 para cara e 1 para coroa (use geração de números randômicos para sortear entre cara e coroa). Nota: se o seu programa estiver correto, cada lado da moeda deve aparacer aproximadamente metade das vezes.

 

 


 

class Program
    {
        private enum Moeda { Cara, Coroa };
        private Moeda moeda; 
        Random rnd = new Random();
        public  Moeda Jogo( int cara, int coroa) // <<< nao deu  certo 
        {
            int escolha = rnd.Next(2);
            switch (escolha)
            {
                case 1:
                    moeda = Moeda.Cara;
                    cara += 1;
                    break;
                case 2:
                    moeda = Moeda.Coroa;
                    coroa += 1;
                    break;
            }
            return moeda;
        }
  
        static void Main(string[] args)
        {
           
            Moeda C = moeda.Jogo();  //<<<< nao deu certo 
            Console.ReadKey();
        }
    }
}

 

se nao quer me ajuda , so olha e nem responda 

 

é f oda q ter  porfessor absurdo . 

lamentavel :skull::thumbsdown:

Share this post


Link to post
Share on other sites

Você declarou o método com 2 parâmetros, e está chamando ele sem passar os parâmetros;

E não faz nenhum sentido esse parâmetros que você ta passando;

Você ta chamando a função Jogo(), a partir de um Enum!  (????)
Você não está armazenando o resultado em lugar nenhum.

 

Você ta usando Visual Studio?

Impossível VS deixar fazer isso que você ta fazendo, se não ta usando o Visual Studio, baixe agora.

 

 
class Program
    {
        int cara = 0, coroa = 0;
     
        public void Jogo(int escolha)
        {            
            int resto = escolha % 2;
            switch (resto)
            {
                case 0:
                    cara += 1;
                    break;
                default:
                    coroa += 1;
                    break;
            }
        }
  
        static void Main(string[] args)
        {
            Random rnd = new Random();
            
            for(int i = 0; i < 1000; i++)
                Jogo(rnd.Next());

            Console.WriteLine($"Cara: {cara} \nCoroa: {coroa}");
            Console.ReadKey();
        }
    }
}

 

  • +1 1

Share this post


Link to post
Share on other sites

foi meu amigo q fazer esse , disse que Enum funciona no vs

 

ahh esqueci  " parâmetros"

 

como fui idiota 

ai deus que me ajuda 

 

valeu cara ! 

Share this post


Link to post
Share on other sites
Em 11/11/2017 at 16:08, itlpps disse:

static void Main(string[] args) { Random rnd = new Random(); for(int i = 0; i < 1000; i++) Jogo(rnd.Next()); Console.WriteLine($"Cara: {cara} \nCoroa: {coroa}"); Console.ReadKey(); } } }

 

 

esse metodo continua dando erro.

eu fiz esse : 

   

static void Main(string[] args)
        {
            Random rnd = new Random();
            int Cara = 0,Coroa = 0;
            int Escolha = 0;
            for (int i = 0; i < 1000; i++)
            {

                Jogo(rnd.Next(Escolha));
            }
            Console.WriteLine($"Cara:  " + Cara);
            Console.WriteLine($"Cara:  " + Coroa);

            Console.ReadKey();
        }
    }
}

tbm nao deu certo aff..

Share this post


Link to post
Share on other sites

agora deu certo , nao me pergunte como eu consegui . 

 

coloquei "static "  , deu certo 

sou burro ou visual studio é estranho .:tired:

 

    class Program
    {

        public static void  Jogo(int escolha)
        {
            int cara = 0, coroa = 0;

            int resto = escolha % 2;
            switch (resto)
            {
                case 0:
                    cara += 1;
                    break;
                default:
                    coroa += 1;
                    break;
            }
        }

        static void Main(string[] args)
        {
            Random rnd = new Random();
            int Cara = 0,Coroa = 0;
            int Escolha = 0;
            for (int i = 0; i < 1000; i++) 
            {

                Jogo(rnd.Next(Escolha));
            }
            Console.WriteLine($"Cara:  " + Cara);
            Console.WriteLine($"Cara:  " + Coroa);

            Console.ReadKey();
        }
    }
}

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By adolfo-moro
      Tenho um sistema feito em C# em Windows Form, gostaria de saber se tem algum jeito Do sistema abrir o navegador padrão do sistema Operacional, direcionar para meu site onde terá uma tela de login, a pessoa efetua o login e quando o mesmo for validado, o navegador fechar e voltar para o sistema com o valor do cookie gerado pelo site ou com um código do login, para efetuar posteriores operações por webservice.
      Não seria utilizando o WebBrowser
    • By frlopes
      Pessoal, boa tarde. 
       
      Estou com alguns probleminhas, se alguém puder me ajudar, agradeço imensamente!
      Tenho uma aplicação windows form em c# que tem um DataGridView, neste DataGridView tenho 2 colunas que são DataGridViewComboBoxColumn.
      O que eu espero que aconteça? Quando selecionado o valor de um, jogar o "Value" na coluna anterior. Enfim, Tentei com o código abaixo, porém, estou com alguns problemas:
       
      1 - Só consigo selecionar um item do grid, clicando 2 x no mesmo, a primeira vez que eu clico, não abre a lista de seleção, somente na segunda vez.
       
      2 - As vezes, retorna o valor "System.Data.DataRowView" na coluna anterior.
       
      3 - Os combos, coincidentemente, serão carregados com o mesmo valor, mas caso não fossem, como eu deveria fazer?
       
      4 - Existe uma forma de eu adicionar um item manualmente, por exemplo, como estão trazendo uma lista do banco de dados, supondo que eu traga "Santos", "São vicente", "Guarujá" e queira que o primeiro item seja "<selecione>", que não faz parte do banco de dados, não está no meu DataTable, como faço neste caso? 
       
       
      Obrigada, pessoal... 

       
       
      public FrmAlterarTipoAcomodacao() { InitializeComponent(); } TipoAcomodacao tipoAcomodacao = new TipoAcomodacao(); public void CarregarTipoAcomodacao() { DataTable dtbTipoAcomodacao = tipoAcomodacao.ListarTipoAcomodacao(); col1TipoAcomodacao.ValueMember = "TIS_TAC_CD_TIPO_ACOMODACAO"; col1TipoAcomodacao.DisplayMember = "TIS_TAC_DS_TIPO_ACOMODACAO"; col1TipoAcomodacao.DataSource = dtbTipoAcomodacao; col1TipoAcomodacaoAutorizada.ValueMember = "TIS_TAC_CD_TIPO_ACOMODACAO"; col1TipoAcomodacaoAutorizada.DisplayMember = "TIS_TAC_DS_TIPO_ACOMODACAO"; col1TipoAcomodacaoAutorizada.DataSource = dtbTipoAcomodacao; } private void FrmAlterarTipoAcomodacao_Load(object sender, EventArgs e) { dgvProfissional.Rows.Add(); dgvProfissional.Rows.Add(); dgvProfissional.Rows.Add(); dgvProfissional.Rows.Add(); CarregarTipoAcomodacao(); dgvProfissional.EditingControlShowing += new DataGridViewEditingControlShowingEventHandler(dgvProfissional_EditingControlShowing); } public FrmAlterarTipoAcomodacao() { InitializeComponent(); } TipoAcomodacao tipoAcomodacao = new TipoAcomodacao(); public void CarregarTipoAcomodacao() { DataTable dtbTipoAcomodacao = tipoAcomodacao.ListarTipoAcomodacao(); col1TipoAcomodacao.ValueMember = "TIS_TAC_CD_TIPO_ACOMODACAO"; col1TipoAcomodacao.DisplayMember = "TIS_TAC_DS_TIPO_ACOMODACAO"; col1TipoAcomodacao.DataSource = dtbTipoAcomodacao; col1TipoAcomodacaoAutorizada.ValueMember = "TIS_TAC_CD_TIPO_ACOMODACAO"; col1TipoAcomodacaoAutorizada.DisplayMember = "TIS_TAC_DS_TIPO_ACOMODACAO"; col1TipoAcomodacaoAutorizada.DataSource = dtbTipoAcomodacao; } private void FrmAlterarTipoAcomodacao_Load(object sender, EventArgs e) { dgvProfissional.Rows.Add(); dgvProfissional.Rows.Add(); dgvProfissional.Rows.Add(); dgvProfissional.Rows.Add(); CarregarTipoAcomodacao(); dgvProfissional.EditingControlShowing += new DataGridViewEditingControlShowingEventHandler(dgvProfissional_EditingControlShowing); } ComboBox combo; private void dgvProfissional_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) { ComboBox comboBox = e.Control as ComboBox; if (comboBox != null) { comboBox.SelectedIndexChanged -= new EventHandler(combo_SelectedIndexChanged); comboBox.SelectedIndexChanged += combo_SelectedIndexChanged; } } private void combo_SelectedIndexChanged(object sender, EventArgs e) { if ((sender as ComboBox).SelectedIndex > 0) { string selected = (sender as ComboBox).SelectedValue.ToString(); if (dgvProfissional.CurrentCell.ColumnIndex == 11) { dgvProfissional.Rows[dgvProfissional.CurrentRow.Index].Cells["col1CodigoTipoAcomodacao"].Value = selected; } if (dgvProfissional.CurrentCell.ColumnIndex == 18) { dgvProfissional.Rows[dgvProfissional.CurrentRow.Index].Cells["col1CodigoTipoAcomodacaoAutorizada"].Value = selected; } } }  

    • By Rui PG
      Boa tarde, Amigos!
      Por favor, alguém poderia me ajudar nessa questão, sou novo em desenvolvimento e estou a semanas tentando resolver esse problema.
      Desenvolvi um DataGrid emWPF preciso que quando o usuário clicar no "botão adicionar", gere automaticamente uma espécie de numeração sequencial no campo "followup", porém ao decorrer dos lançamentos dos dados no DataGrid, gere um numero sequencial ordenado do maior para o menor, ou seja, o último registro incluído no datagrid vai receber a última posição, conforme a prototipação da tela abaixo.
       
      Prototipação:

       
      XAML da Construção do DATAGRID:

       
      Código em C# do evento do botão adicionar, só falta colocar esse tipo de contador para o campo “follow-up”, na qual está destacado na figura:

       
      segue o código do botão adicionar onde tenho que programar essa auto numeração.
             public class JogaDadoNoGrid  
              {
                  public string bdgDtRegistro { get; set; }
                  public string bdgFollowup { get; set; }
                  public string bdgDtAgendamento { get; set; }
                  public string bdgHorario { get; set; }
                  public bool bdgVisitaRealizada { get; set; }
                  public bool bdgNaoRealizada { get; set; }
                  public bool bdgDesistiu { get; set; }
                  public string bdgMotivo { get; set; }
                  public string bdgObservacao { get; set; }
              }

              private void btnAddGrid_Click(object sender, RoutedEventArgs e)
              {
                JogaDadoNoGrid DadosTemporario = new JogaDadoNoGrid();

                  DadosTemporario.bdgDtRegistro = txtDataAtual.Text;
                  DadosTemporario.bdgFollowup = "AQUI QUE EU PRECISO GERAR O 1º, 2º, 3º ...."; 
                  DadosTemporario.bdgHorario = txtHorario.Text;
                  DadosTemporario.bdgDtAgendamento = txtDataAgendamento.Text;
                  DadosTemporario.bdgVisitaRealizada = chkVisitaRealizada.IsChecked.Value;
                  DadosTemporario.bdgNaoRealizada = chkNaoRealizada.IsChecked.Value;
                  DadosTemporario.bdgDesistiu = chkDesistiu.IsChecked.Value;
                  DadosTemporario.bdgMotivo = "Teste... Teste... Teste";
                  
                  DtgCadastroVisitantes.Items.Add(DadosTemporario);

                  txtDataAtual.Text = "";
                  txtDataAgendamento.Text = "";
                  txtHorario.Text = "";
                  chkDesistiu.IsChecked = false;
                  chkNaoRealizada.IsChecked = false;
                  chkVisitaRealizada.IsChecked = false;           
              }
       
       
       
      Agradeço aos amigos, pela ajuda.
       
    • By lsramos
      Tenho um DataGridView que exibe uma tabela do banco de dados. Até aí tudo bem :)
      A questão é que o cabeçalho (primeira linha do DataGrid) traz o nome das colunas da tabela do banco (exemplo: matricula, nome, data_nascimento, etc).
      Eu queria saber se é possível, até para melhor visualização, que eu personalizasse esse cabeçalho sem alterar do banco.
      Algo como inserir no DataGrid o nome das colunas e exportar do banco de dados sem o nome da coluna.
    • By eduarda_dasilveira
      O sistema deverá, utilizando a linguagem C, receber 6 apostas (6 números cada
      aposta no intervalo de 1 a 60) e armazenar estas informações em uma matriz quadrada de
      ordem 6. Um vetor chamado vetGabarito  deve armazenar 6 números, que são os gabaritos
      da aposta.
      Com a matriz de apostas preenchidas, o sistema deverá:
      a. Mostrar a soma da diagonal principal da matriz de apostas.
      b. Transferir todas as apostas para vetores de inteiros de 6 posições.
      c. Indicar quantos números pares e ímpares foram apostados.
      d. Indicar quantos acertos o jogador obteve para cada conjunto de aposta.
       
      Estou com dificuldade de fazer letra d.
      Meu código esta ai mas esta dando erro (mostrando a quantidade errada de acertos) na parte da letra d.
      #include <stdio.h> #include <time.h> #include <conio.h> #include <stdlib.h> int main (void){ int mat [6][6], vetGabarito[6], vet1[6], vet2[6], vet3[6], vet4[6], vet5[6], vet6[6], l, c, soma_diagonal=0, impar=0, par=0; srand (time (NULL)); for (l=0; l<6; l++){ for (c=0; c<6; c++){ printf ("Digite a sua aposta de 1 a 60:"); scanf ("%d", &mat [l][c]); } } for (l=0; l<6; l++){ for (c=0; c<6; c++){ printf (" %d", mat [l][c]); } printf ("\n"); } for (l=0; l<6; l++){ for (c=0; c<6; c++){ if (l==c){ soma_diagonal=soma_diagonal+mat[l][c]; } } } for (c=0; c<6; c++){ vet1[c]= mat [0][c]; vet2[c]= mat [1][c]; vet3[c]= mat [2][c]; vet4[c]= mat [3][c]; vet5[c]= mat [4][c]; vet6[c]= mat [5][c]; printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet1[c]); printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet2[c]); printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet3[c]); printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet4[c]); printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet5[c]); printf ("Aposta do jogador na rodada [%d] e %d\n", c, vet6[c]); } for (l=0; l<6; l++){ for (c=0; c<6; c++){ if ((mat[l][c]%2)==0){ par++; } else { impar++; } } } srand (time (NULL)); for (c=0;c<6;c++){ vetGabarito[c]=rand()%10; } for (c=0; c<6; c++){ printf (" %d", vetGabarito[c]); printf ("\n"); } for (c=0; c<6; c++){ vet1[0]==vetGabarito[c]; vet2[1]==vetGabarito[c]; vet3[2]==vetGabarito[c]; vet4[3]==vetGabarito[c]; vet5[4]==vetGabarito[c]; vet6[5]==vetGabarito[c]; } printf ("A soma da diagonal da matriz e: %d\n", soma_diagonal); printf ("A quantidade de numeros pares foi %d, e de numeros impares foi %d\n", par, impar); printf ("O jogador na primeira rodada teve %d de acertos.\n", vet1[0]); printf ("O jogador na segunda rodada teve %d de acertos.\n", vet2[1]); printf ("O jogador na terceira rodada teve %d de acertos.\n", vet3[2]); printf ("O jogador na quarta rodada teve %d de acertos.\n", vet4[3]); printf ("O jogador na quinta rodada teve %d de acertos.\n", vet5[4]); printf ("O jogador na sexta rodada teve %d de acertos.\n", vet6[5]); return 0; }  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.