Recapitulação - Hash de Produto
Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 77 de 88.
Desafio
FácilLeia quatro linhas de entrada:
- Um nome de produto (string)
- Um preço inicial (float)
- Um novo preço para atualizar (float)
- Uma quantidade para adicionar como um novo par chave-valor (inteiro)
Crie um hash chamado product com os seguintes pares chave-valor iniciais:
"name"mapeado para o nome do produto"price"mapeado para o preço inicial (como um float)
Em seguida, realize estas operações em ordem:
- Imprima o nome do produto acessando a chave
"name" - Atualize a chave
"price"com o novo valor de preço - Adicione uma nova chave
"quantity"com o valor da quantidade (como um inteiro) - Verifique se a chave
"quantity"existe e imprima o resultado (trueoufalse) - Imprima o número total de pares chave-valor no hash
- Imprima o hash final
Por exemplo, se as entradas forem Laptop, 999.99, 899.99, e 50, a saída deve ser:
Laptop
true
3
{"name"=>"Laptop", "price"=>899.99, "quantity"=>50}Se as entradas forem Keyboard, 75.0, 59.99, e 100, a saída deve ser:
Keyboard
true
3
{"name"=>"Keyboard", "price"=>59.99, "quantity"=>100}Se as entradas forem Mouse, 29.99, 24.99, e 200, a saída deve ser:
Mouse
true
3
{"name"=>"Mouse", "price"=>24.99, "quantity"=>200}Experimente você mesmo
# Ler a entrada
product_name = gets.chomp
initial_price = gets.chomp.to_f
new_price = gets.chomp.to_f
quantity = gets.chomp.to_i
# TODO: Escreva seu código abaixo
# 1. Crie um hash chamado 'product' com as chaves "name" e "price"
# 2. Imprima o nome do produto acessando a chave "name"
# 3. Atualize a chave "price" com o novo preço
# 4. Adicione uma nova chave "quantity" com o valor da quantidade
# 5. Verifique se a chave "quantity" existe e imprima o resultado
# 6. Imprima o número total de pares chave-valor
# 7. Imprima o hash finalTodas 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âmica11Arrays
Criando ArraysAcessando Elementos de um ArrayModificando ArraysMétodos de ArrayRecapitulação - Array de ProdutosRecapitulação - Array InvertidoAtalhos de Array14Hashes
Criando HashesAcessando Elementos de um HashModificando HashesMétodos de HashRecapitulação - Hash de ProdutoSímbolos como Chaves de Hash3Operadores 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