Entrada com gets
Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 29 de 88.
Até agora, você aprendeu como exibir a saída. Agora vamos aprender como receber entrada do usuário. O método gets lê uma linha de texto que o usuário digita.
name = gets
puts "Hello, #{name}"Quando o Ruby encontra gets, ele espera que o usuário digite algo e pressione Enter. O que quer que eles digitem é armazenado na variável. Se o usuário digitar "Alice", a saída seria:
Hello, Alice
Há algo importante a observar aqui. Quando o usuário pressiona Enter, aquele caractere de nova linha é incluído na entrada.
É por isso que "Alice" aparece com uma linha em branco extra depois dela. A variável na verdade contém "Alice\n" onde \n representa a quebra de linha.
Você pode usar p para ver isso claramente:
name = gets
p nameSe o usuário digitar "Ruby", a saída mostra:
"Ruby\n"Esta quebra de linha final pode causar comportamentos inesperados em seus programas. Na próxima lição, você aprenderá como removê-la.
Desafio
FácilLeia um nome do usuário usando gets e armazene-o em uma variável chamada name.
Em seguida, use p para exibir a variável name, o que mostrará a string bruta incluindo o caractere de nova linha ao final.
Por exemplo, se a entrada for Ruby, sua saída deve exibir a string com suas aspas e o caractere \n visível.
Folha de consulta
O método gets lê a entrada do usuário a partir do console:
name = gets
puts "Hello, #{name}"Quando o gets é executado, o programa espera que o usuário digite algo e pressione Enter. A entrada é armazenada na variável.
O método gets inclui o caractere de nova linha (\n) quando o usuário pressiona Enter:
name = gets
p name
# Se o usuário digitar "Ruby", a saída será: "Ruby\n"Use p para exibir a representação bruta da string, que mostra o caractere de nova linha explicitamente.
Experimente você mesmo
# TODO: Leia um nome do usuário usando gets e armazene-o em uma variável chamada name
# TODO: Use p para imprimir a variável nameEsta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 3Operadores Lógicos Parte 47Calculadora de Divisão de Conta
Mensagem de Boas-vindasObtendo Entrada do Usuário10FizzBuzz com um Toque Especial
Visão Geral do JogoO Método FizzBuzz2Variáveis e Tipos de Dados
Números e VariáveisTipo de Dado StringTipo de Dado BooleanTipo de Dado SymbolVerificando Tipos de DadosConvenções de NomenclaturaRecapitulação - Criação de Variáveis5Tomada de Decisão
Instrução IfIf - ElseRecapitulação - Calculadora SimplesIf - Else AninhadoInstrução Unless8Laços de Repetição
Loop For com IntervalosLoop WhileBreakNextRecapitulação - FatorialLoop TimesLoop UntilLoops AninhadosRecapitulação - Entrada Dinâmica3Operadores Parte 1
Operadores AritméticosOperador de MóduloAtalhos AritméticosRecapitulação - Matemática SimplesOperadores de Comparação6IO Básico
Saída com putsSaída com print e pSaída com VariáveisEntrada com getsMétodo chompConversão de TiposRecapitulação - Calculadora de IdadeRecapitulação - Verdadeiro ou Falso9Métodos
Definindo um MétodoParâmetros de MétodoValores de RetornoRecapitulação - Método SigmaRecapitulação - Método de ValidaçãoValores de Parâmetro Padrão15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do Programa