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
varnas 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
var nome = "Ana";— o compilador inferestringporque o valor é um literal de string.var idade = 30;— infereinta partir do literal inteiro.var altura = 1.65;— inferedoublea partir do literal com ponto decimal.Console.WriteLine($"...")— usa interpolação para inserir os valores na frase.- 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 comvar x = 0;. - Usar ponto em vez de vírgula na saída: em pt-BR,
1.65pode ser impresso como1,65; se precisar do ponto, useCultureInfo.InvariantCulture. - Achar que
varé dinâmico:varé resolvido em tempo de compilação; não confunda comdynamic.
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.