Fácil C#

Declarando variáveis com var e tipos explícitos

Enunciado

Crie um programa que declare três variáveis: uma string com seu nome, um int com sua idade e um double com sua altura. Use var para todas. Depois, imprima uma frase no formato Meu nome é [nome], tenho [idade] anos e [altura] m de altura.

Requisitos

  • Usar var nas três declarações
  • Imprimir exatamente a frase com os valores
  • O programa deve compilar e rodar sem erros

Código inicial

using System;

class Program
{
    static void Main()
    {
        // Declare as variáveis com var e imprima a frase
    }
}

Saída esperada

Meu nome é Ana, tenho 30 anos e 1,65 m de altura.
Ver dica

Use interpolação de strings com $"texto {variavel}" e lembre-se de que double usa vírgula como separador decimal na cultura pt-BR.

Mostrar solução
using System;

class Program
{
    static void Main()
    {
        // var infere string, int e double
        var nome = "Ana";
        var idade = 30;
        var altura = 1.65;

        // Interpolação de strings
        Console.WriteLine($"Meu nome é {nome}, tenho {idade} anos e {altura} m de altura.");
    }
}

Passo a passo

  1. var nome = "Ana"; — o compilador infere string porque o valor é um literal de string.
  2. var idade = 30; — infere int a partir do literal inteiro.
  3. var altura = 1.65; — infere double a partir do literal com ponto decimal.
  4. Console.WriteLine($"...") — usa interpolação para inserir os valores na frase.
  5. O programa exibe a frase formatada com os valores atribuídos.

Por que funciona

var não é um tipo, é uma instrução para o compilador inferir o tipo da variável a partir da expressão à direita. Como os literais têm tipos bem definidos, a inferência é segura e o código continua fortemente tipado. A interpolação de strings converte automaticamente cada valor para texto usando a cultura atual do sistema.

Erros comuns

  • Esquecer de inicializar: var x; gera erro CS0818 (variável implicitamente tipada deve ser inicializada). Corrija com var x = 0;.
  • Usar ponto em vez de vírgula na saída: em pt-BR, 1.65 pode ser impresso como 1,65; se precisar do ponto, use CultureInfo.InvariantCulture.
  • Achar que var é dinâmico: var é resolvido em tempo de compilação; não confunda com dynamic.

Outra forma de resolver

Declarar explicitamente os tipos: string nome = "Ana"; int idade = 30; double altura = 1.65;. É preferível quando a clareza do tipo for importante para quem lê o código.

Saída esperada

Meu nome é Ana, tenho 30 anos e 1,65 m de altura.