Você está aqui: Ruby ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Acessando todos os elementos de um array usando o laço for...in

Quantidade de visualizações: 7030 vezes
=begin
  Este trecho de código mostra como usar o laço
  for...in para acessar os valores de
  todos os elementos de um array.  
=end

# define um array de cidades
cidades = ["Goiânia", "Salvador", "Rio de Janeiro", 
   "São Paulo", "Fortaleza"]

# usa o laço for...in para acessar exibir os valores dos 
# elementos do array
for nome in cidades
  puts nome
end


Link para compartilhar na Internet ou com seus amigos:

Ruby ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Ruby - Escreva um programa Ruby para mover todos os zeros para o final do vetor, sem alterar a ordem dos elementos já presentes no array

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

Dado o seguinte vetor de inteiros:

# vamos declarar e construir um vetor de 8 inteiros
valores = [0, 3, 0, 5, 7, 4, 0, 9]
Escreva um programa Ruby para mover todos os zeros para o final do vetor, ou seja, para a direita, sem alterar a ordem dos elementos diferentes de zero já presentes no array e sem criar um vetor adicional ou temporário.

Sua saída deverá ser parecida com:

Vetor na ordem original:

0   3   0   5   7   4   0   9   

Vetor com os zeros deslocados para o final:

3   5   7   4   9   0   0   0
Resposta/Solução:

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

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

# vamos declarar e construir um vetor de 8 inteiros
valores = [0, 3, 0, 5, 7, 4, 0, 9]   
	
# vamos mostrar o vetor na ordem original
print("Vetor na ordem original:\n")
for i in (0..valores.length - 1)
  printf("%d   ", valores[i])
end    
	
# vamos inicializar j como 0 para que ele aponte para
# o primeiro elemento do vetor
j = 0
    
# agora o laço for percorre todos os elementos do vetor,
# incrementanto a variável i e deixando o j em 0
for i in (0..valores.length - 1)
  # encontramos um valor que não é 0
  if(valores[i] != 0)
    # fazemos a troca entre os elementos nos índices
    # i e j
    temp = valores[i]
    valores[i] = valores[j]
    valores[j] = temp
    # e avançamos o j para o elemento seguinte
    j = j + 1
  end
end

# agora mostramos o resultado
print("\n\nVetor com os zeros deslocados para o final:\n")
for i in (0..valores.length - 1)
  printf("%d   ", valores[i])
end

Não se esqueça: A resolução do exercício deve ser feita sem a criação de um vetor, array ou lista adicional, e os elementos diferentes de zero devem permanecer na mesma ordem que eles estavam antes.


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

Como usar métodos e variáveis de classes em Ruby - Programação Orientada a Objetos em Ruby

Quantidade de visualizações: 7963 vezes
Variáveis e métodos de classe, ao contrário de variáveis e métodos de instâncias, pertencem às classes e não às suas instâncias. Desta forma, uma variável ou método de classe é compartilhado por todos os objetos criados a partir de tal classe.

Para que você entenda melhor, o exemplo abaixo mostra uma classe que contém uma variável e um método de classe. Execute o código e veja como o valor de @@quant_clientes é incrementado todas as vezes que um novo objeto da classe Cliente é criado:

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

# vamos criar a classe Cliente
class Cliente
  # variável de classe
  @@quant_clientes = 0;  
 
  def initialize
    @@quant_clientes = @@quant_clientes + 1
  end

  # método de classe
  def Cliente.obter_quant_clientes
    @@quant_clientes
  end
end

# vamos criar três objetos da classe Cliente
cliente1 = Cliente.new
cliente2 = Cliente.new
cliente3 = Cliente.new

# vamos obter a quantidade de clientes criados
quant = Cliente.obter_quant_clientes

# exibe o resultado
puts "Há " + quant.to_s + " clientes criados"

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

Há 3 clientes criados


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

Como converter uma string em um valor real em Ruby usando a função to_f

Quantidade de visualizações: 6289 vezes
Nesta dica mostrarei como podemos usar a função to_f do objeto String da linguagem Ruby para converter uma string em um valor de ponto-flutuante, ou seja, um valor real, com casas decimais.

Veja o código completo para o exemplo:

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

# Este exemplo mostra como usar o método to_f
# para converter uma string em um valor numérico
# de ponto-flutuante

# vamos pedir para o usuário informar
# dois números
print "Informe o primeiro número: "
num1 = (gets.chomp).to_f
print "Informe o segundo número: "
num2 = (gets.chomp).to_f

# vamos exibir a soma dos valores informados
puts "A soma dos valores é: #{num1 + num2}"

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

Informe o primeiro número: 5
Informe o segundo número: 3
A soma dos valores é: 8.0

Note que usei gets para ler o texto informado pelo usuário. Em seguida usei chomp para remover quaisquer quebras de linhas no final do texto e, finamente, usei to_f para converter a string lida em um valor do tipo float.


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: C
6º lugar: Delphi
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á 18 usuários muito felizes estudando em nosso site.