Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como utilizo o ReadLine

Durante está formação senti falta de uma demonstração de como posso utilizar o "readline", por exemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TrabalhandoComVetor
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] idades = new int[5];
            idades[0] = 20;
            idades[0] = 20;
            idades[1] = 18;
            idades[2] = 29;
            idades[3] = 30;
            idades[4] = 28;

            /*
//Qual é a forma correta do uso do readline? 
             for (int i = 0; i < idades.Length; i++)
             {
                Console.ReadLine(idades[i]);
             }
             */

            int aux = 0;

            for (int i = 0; i < idades.Length; i++)
            {
                Console.WriteLine(" Idade " + "[" + i + "] = " + idades[i]);

                aux += idades[i];
            }

            double med = (aux / idades.Length);

            Console.WriteLine("Média = " + med);

            Console.ReadLine();
        }
    }
}

Como eu faria para ao invés de atribuir os valores do meu vetor no código em si, eu atribuir os valores por meio do teclado no momento de execução. Não sei como utilizo o "read()".

2 respostas

Opa Amigo ... Então, o método ReadLine() retorna uma string e não recebe parâmetros, não tendo também nenhuma sobrecarga.

Então o que precisa fazer para ler os dados "inputados" é:

idades[i] = Console.ReadLine();

Repara que vai dar um erro, pois como disse ali em cima esse método retorna uma string, então é preciso fazer um Parse para o tipo do seu array, que no caso é int, dessa forma:

 idades[i] = int.Parse(Console.ReadLine());
solução!

Olá Ricardo, como vai?

Sinto muito a demora para retornar.

Sobre não ter exemplos com o ReadLine(); é algo pouco utilizado. Mas para estudos talvez seja algo bacana, realmente.

Neste exemplo que compartilhou, conseguiriamos fazer algo bacana com o idades[i] = int.Parse(Console.ReadLine());. Por padrão, o Console.ReadLine armazena um tipo string, por isso devemos fazer a conversão para int.

Precisamos apesas criar um array, e inserir o código acima dentro do for. veja:

static void Main(string[] args)
        {
            int[] idades = new int[5];

            int aux = 0;

            for (int i = 0; i < idades.Length; i++)
            {
                Console.WriteLine("Informe a idade: ");
                idades[i] = int.Parse(Console.ReadLine());

                Console.WriteLine("Idade " + "[" + i + "] = " + idades[i]);

                aux += idades[i];

                int med = (aux / idades.Length);

                Console.WriteLine();
                Console.WriteLine("Média = " + med);
                Console.WriteLine();
            }
            Console.ReadLine();
        }

Espero ter ajudado!

Abraços e bons estudos!