Você está aqui: Ruby ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos

Crie uma classe Circulo que possui um construtor que receberá o valor do raio. Inclua um método getArea() para calcular - Exercícios Resolvidos de Ruby

Quantidade de visualizações: 720 vezes
Pergunta/Tarefa:

Programação Orientada a Objetos em Ruby. Crie uma classe Circulo que possui um construtor que receberá o valor do raio. Inclua um método getArea() para calcular e retornar a área do círculo. Inclua também um método getCircunferencia() que calcula e retorna a circunferência do círculo. Finalmente escreva um código para demonstrar o uso da classe.

Sua saída deverá ser parecida com (considerando um raio com valor 5):

A área do círculo é: 78.53981633974483
A circunferência do círculo é: 31.41592653589793
Resposta/Solução:

Veja a resolução comentada deste exercício em Ruby:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# definição da classe Circulo
class Circulo
  # construtor da classe
  def initialize(raio)
    @raio = raio
  end
  
  # método que permite calcular a área do círculo
  def getArea()
    return Math::PI * (@raio * @raio)
  end
  
  # método que retorna a circunferência do círculo
  def getCircunferencia()
    return @raio * 2 * Math::PI
  end
end

# vamos criar um objeto da classe Circulo
c = Circulo.new(5)

# vamos mostrar a área do círculo
puts "A área do círculo é: " + c.getArea().to_s

# vamos mostrar a circunferência do círculo
puts "A circunferência do círculo é: " + 
  c.getCircunferencia().to_s


Link para compartilhar na Internet ou com seus amigos:

Ruby ::: Dicas & Truques ::: Strings e Caracteres

Como testar se uma string começa com uma determinada substring em Ruby usando uma função personalizada

Quantidade de visualizações: 7492 vezes
O Ruby, até a versão 1.8.6, não dispõe de um método para verificar se uma string começa com uma determinada substring. Assim, veja abaixo como escrever uma função starts_with(). Esta função recebe a string e a substring e retorna true se a string começar com a substring.

Eis a listagem completa:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# método auxiliar que permite verificar se
# uma string começa com uma substring
def starts_with(string, substring)
  if string.index(substring) == 0   
    return true
  else
    return false
  end
end

# declara e inicializa uma variável string
frase = "Gosto muito de Ruby"

# vamos verificar a string começa com "Gosto"
if starts_with(frase, "Gosto")
  puts "A string começa com \"Gosto\""
else
  puts "A string NÃO começa com \"Gosto\""
end

Ao executar este código Ruby nós teremos o seguinte resultado:

A string começa com "Gosto"


Ruby ::: Dicas & Truques ::: Programação Orientada a Objetos

Como acessar variáveis de instâncias para leitura em Ruby sem a necessidade de métodos acessores usando a função attr_reader

Quantidade de visualizações: 6861 vezes
Por padrão, variáveis de instância em Ruby só podem ser acessadas usando métodos acessores, ou seja, uma variável de instância @nome deve ser lida usando um método obter_nome.

É possível dispensar o uso de métodos acessores empregando o método attr_reader nos nomes das variáveis que poderão ser acessadas, para leitura, é claro. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# Definição da classe Cliente
class Cliente
   attr_reader :nome, :idade
   
   def initialize(nome, idade)
      @nome = nome
      @idade = idade
   end
    
   def obter_nome
      @nome
   end
    
   def obter_idade
      @idade
   end
end

# Cria uma instância da classe Cliente e inicializa as
# variáveis de instância @nome e @idade
cliente = Cliente.new("Osmar J. Silva", 35)

# Acessa as variáveis de instância sem a necessidade de
# métodos acessórios
puts cliente.nome
puts cliente.idade

Sem o uso do método attr_reader, a linha:

puts cliente.nome


causaria o seguinte erro:

teste.rb:25: undefined method `nome' for 
#<Cliente:0x27f540c @nome="Osmar J. S
ilva", @idade=35> (NoMethodError)



Ruby ::: Dicas & Truques ::: Data e Hora

Como retornar o dia do ano em Ruby usando um objeto da classe Time e a função yday

Quantidade de visualizações: 6655 vezes
Em algumas situações precisamos obter uma representação numérica do dia do ano na linguagem Ruby. Para isso podemos usar o método yday da classe Time. Este método retorna um número inteiro na faixa 1..366. Veja como usá-lo no trecho de código abaixo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# constrói um objeto Time com a data e hora atual
agora = Time.now

# obtém o dia do ano
dia_ano = agora.yday

# exibe o resultado
puts "O dia do ano é: " + dia_ano.to_s

Ao executar este código Ruby nós teremos o seguinte resultado:

O dia do ano é: 80


Desafios, Exercícios e Algoritmos Resolvidos de Ruby

Veja mais Dicas e truques de Ruby

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 80 usuários muito felizes estudando em nosso site.