Jump to content
  • 0
tarciano

C# no visual studio

Question

Ler um vetor Q de 20 posições (aceitar somente números positivos).

Escrever a seguir o valor do maior elemento de Q e a respectiva posição que ele ocupa no vetor.

por favor não estou conseguindo fazer esse exercício, alguém poderia me ajudar, é com c# no visual studio? 

Share this post


Link to post
Share on other sites

15 answers to this question

Recommended Posts

  • 1
14 minutos atrás, tarciano disse:

essa parte do positivo tava feito desde o inicio,

oque eu não consigo é isso: Escrever a seguir o valor do maior elemento de Q e a respectiva posição que ele ocupa no vetor.

Pra você ver qual o maior, pode fazer seguindo essa lógica: Inicia uma variável com 0 fora do laço, toda vez que o usuário entrar com um número, você verifica se esse número é maior que essa variável, se for, atribua o número digitado a ela. No fim do laço você vai ter o maior.

int maior = 0;
for (int x = 0; x < n.Length; x++)
{
  var n = Console.ReadLine();
  if(n > maior)
  {
    maior = n;
  }
}

 

Eu fiz o exercício aqui, mas não acho certo te dar assim. Posso te ajudar, depois que você conseguir, te mostro como eu fiz;

Share this post


Link to post
Share on other sites
  • 1

Fiz umas alterações no que você mandou:

int maior = 0;
            int[] n = new int[4];

            for (int x = 0; x < n.Length; x++)
            {
                Console.WriteLine($"Digite um numero:{x + 1}");

                n[x] = Convert.ToInt32(Console.ReadLine());
                if (n[x] > maior)
                {
                    maior = n[x];
                }
            }
            Console.WriteLine($"o maior numero e: {maior}");
            Console.ReadKey();

Ajustes: 

- O laço estava ' x >= n.Length', quando o correto é 'x < n.Length';

- Você estava dando um 'Console.ReadLine()' dentro do if do maior, mas na verdade você já tem esse número;

 

Agora falta só você validar se o número é positivo e pegar a posição do maior, falta pouco hehe :)

Share this post


Link to post
Share on other sites
  • 0

 int[] n = new int[20];
           
            for (int x = 0; x <n.Length; x++){
                Console.WriteLine("Digite um numero:",x + 1);
                n[x] = Convert.ToInt32(Console.ReadLine());

Share this post


Link to post
Share on other sites
  • 0

Primeiro passo: Verificar se o número é positivo.

Você já tem a entrada do usuário em n[x];

 

Depois, tem que verificar qual é o maior. 

Você pode fazer isso enquanto os dados estão sendo inputados.

Pode iniciar uma variável com 0, e verificar se n[x] é maior que essa variável, se for, atribua o valor de n[x] pra ela.

 

Share this post


Link to post
Share on other sites
  • 0
1 minuto atrás, itlpps disse:

Primeiro passo: Verificar se o número é positivo.

Você já tem a entrada do usuário em n[x];

 

Depois, tem que verificar qual é o maior. 

Você pode fazer isso enquanto os dados estão sendo inputados.

Pode iniciar uma variável com 0, e verificar se n[x] é maior que essa variável, se for, atribua o valor de n[x] pra ela.

 

esse que é o problema, como faço para verificar se o numero é positivo, estou no inicio do curso, não sei quase nada, poderia me mandar uns exemplos.

Share this post


Link to post
Share on other sites
  • 0
1 hora atrás, itlpps disse:

Positivos são os maiores ou igual 0, certo?

Logo:


if(n[x] >= 0)
 //positivo
else
 //negativo

 

nada certo, teria como fazer esse exercício por inteiro? 

Share this post


Link to post
Share on other sites
  • 0

essa parte do positivo tava feito desde o inicio,

oque eu não consigo é isso: Escrever a seguir o valor do maior elemento de Q e a respectiva posição que ele ocupa no vetor.

Share this post


Link to post
Share on other sites
  • 0
51 minutos atrás, itlpps disse:

Pra você ver qual o maior, pode fazer seguindo essa lógica: Inicia uma variável com 0 fora do laço, toda vez que o usuário entrar com um número, você verifica se esse número é maior que essa variável, se for, atribua o número digitado a ela. No fim do laço você vai ter o maior.


int maior = 0;
for (int x = 0; x < n.Length; x++)
{
  var n = Console.ReadLine();
  if(n > maior)
  {
    maior = n;
  }
}

 

Eu fiz o exercício aqui, mas não acho certo te dar assim. Posso te ajudar, depois que você conseguir, te mostro como eu fiz;

ok! vou tentar fazer.

Share this post


Link to post
Share on other sites
  • 0
29 minutos atrás, tarciano disse:

ok! vou tentar fazer.

    //    Ler um vetor Q de 20 posições (aceitar somente números positivos). 
            //Escrever a seguir o valor do maior elemento de Q e a respectiva posição que ele ocupa no vetor.
            int maior = 0;
            int[] n = new int[4];
            
            for (int x = 0; x >= n.Length; x++)
            {
                Console.WriteLine("Digite um numero:", x + 1);
                n[x] = Convert.ToInt32(Console.ReadLine());
                if (n[x] >= maior)
                {
                    maior = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine("o maior numero e: {0}", maior);
                }
            }
            Console.ReadKey();

 

fiz assim mas não ta funcionando 

Share this post


Link to post
Share on other sites
  • 0
3 horas atrás, itlpps disse:

Fiz umas alterações no que você mandou:


int maior = 0;
            int[] n = new int[4];

            for (int x = 0; x < n.Length; x++)
            {
                Console.WriteLine($"Digite um numero:{x + 1}");

                n[x] = Convert.ToInt32(Console.ReadLine());
                if (n[x] > maior)
                {
                    maior = n[x];
                }
            }
            Console.WriteLine($"o maior numero e: {maior}");
            Console.ReadKey();

Ajustes: 

- O laço estava ' x >= n.Length', quando o correto é 'x < n.Length';

- Você estava dando um 'Console.ReadLine()' dentro do if do maior, mas na verdade você já tem esse número;

 

Agora falta só você validar se o número é positivo e pegar a posição do maior, falta pouco hehe :)

só uma pergunta esse( $ )é necessário

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 tarciano
      estou fazendo um bingo no visual studio com 4 números apenas na cartela e 20 a ser sorteado, fiz a criação da cartela e fiz o sorteio que sejam aleatórios ao clicar no botão, não estou conseguindo comparar os números sorteados com o que esta na cartela, para parar o sorteio, alguém ai para ajudar?
×

Important Information

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