Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Ruby ::: Fundamentos da Linguagem ::: Variáveis e Constantes

Como testar o tipo de uma variável em Ruby usando a função class

Quantidade de visualizações: 9240 vezes
Em algumas ocasiões precisamos retornar o tipo de uma variável (String, FixNum, Float, etc) em Ruby, Isso pode ser feito por meio do uso do método class Object. Veja:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# vamos definir uma variável do tipo inteiro
valor = 265

# obtemos o tipo da variável valor
tipo = valor.class

# exibimos o resultado
puts "A variável é do tipo " + tipo.to_s

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

A variável é do tipo Integer

Link para compartilhar na Internet ou com seus amigos:

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

Como remover espaços no início e final de uma string usando as funções strip e strip! da linguagem Ruby

Quantidade de visualizações: 10393 vezes
As funções strip e strip! são úteis quando precisamos remover espaços no início e final de uma string. A função strip retorna uma nova string, enquanto strip! opera na string original. Veja o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# declara e inicializa uma variável string
frase = "  Tenho espaços no início e final.   "

# vamos remover os espaços no início e final da
# string. 

# sem alterar a string original
frase2 = frase.strip
puts frase2

# alterando a string original
frase.strip!
puts frase

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

Tenho espaços no início e final.
Tenho espaços no início e final.


Ruby ::: Dicas & Truques ::: Arquivos e Diretórios

Como testar se um diretório existe em Ruby usando a função File.exist()

Quantidade de visualizações: 6603 vezes
Em algumas situações nós precisamos testar a existência de um diretório na linguagem Ruby. Para isso nós podemos usar a função File.exist?(), que nos retorna um valor True se o diretório existir e False em caso contrário.

Veja o código Ruby completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# nome e caminho do diretório a ser testado
diretorio = "C:\\estudos_ruby\\escola"

if File.exist? diretorio
  puts "O diretório existe"
else
  puts "O diretório não existe"
end

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

O diretório existe


Ruby ::: Dicas & Truques ::: Hashes (Arrays Associativas)

Como criar um hash em Ruby - Criação e uso de arrays associativos na linguagem Ruby

Quantidade de visualizações: 9255 vezes
Os hashes (também chamados de arrays associativas, mapas ou dicionários) são parecidos com arrays no sentido em que são coleções indexadas de referências a objetos. Contudo, enquanto podemos indexar arrays usando inteiros, hashes podem ser indexados usando-se qualquer tipo de dados: strings, expressões regulares, inteiros, e assim por diante.

Quando guardamos um valor em um hash, estamos na verdade guardando dois objetos: o índice (geralmente chamado de chave) e o valor. Os valores em um hash Ruby podem ser de qualquer tipo.

Hashes em Ruby podem ser criados de duas formas: usando a notação literal ou criando-se um objeto da classe Hash.

Veja como criamos um hash usando notação literal:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# cria um hash de estados e capitais
capitais = {'Goiás' => 'Goiânia',  'Mato Grosso' => 'Cuiabá', 
  'Paraná' => 'Curitiba'}
  
# exibe a capital correspondente ao estado de Mato Grosso
puts capitais['Mato Grosso']

Veja como usamos os nomes dos estados como chaves e os nomes das capitais como valores para cada um dos elementos do hash. Veja agora como criar este mesmo hash por meio da criação de um objeto da classe Hash:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# cria um hash de estados e capitais
capitais = Hash.new

capitais['Goiás'] = 'Goiânia'
capitais['Mato Grosso'] = 'Cuiabá'
capitais['Paraná'] = 'Curitiba'
  
# exibe a capital correspondente ao estado de Mato Grosso
puts capitais['Mato Grosso']



Ruby ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como adicionar itens ao final de um array em Ruby usando o operador <<

Quantidade de visualizações: 6542 vezes
Nesta dica mostrarei como podemos usar o operador << da linguagem Ruby para adicionar novos elementos no final de um array.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# vamos criar um array de nomes
nomes = []

# Lê entrada até que o valor -1 seja
# fornecido
loop do
  print "Digite um nome (-1 para sair): "
  nome = gets.chomp
  
  # vamos adicionar este nome no final do
  # array
  if nome != "-1"
    nomes << nome # adiciona o nome ao array
  end
  
  # vamos sair do laço se o valor for "-1"
  if nome == "-1"
    break
  end
end

# Exibe todos os valores do array
puts "\nOs nomes fornecidos foram:"
nomes.each do | nome |
  puts nome
end

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

Digite um nome (-1 para sair): FERNANDA
Digite um nome (-1 para sair): LAURA
Digite um nome (-1 para sair): ISADORA
Digite um nome (-1 para sair): CINTIA
Digite um nome (-1 para sair): -1

Os nomes fornecidos foram:
FERNANDA
LAURA
ISADORA
CINTIA


Ruby ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle

Exercícios Resolvidos de Ruby - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equilátero

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

Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra:

A < (B + C), B < (A + C) e C < (A + B).

Escreva um programa Ruby que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais).

Sua saída deverá ser parecida com:

Informe o primeiro lado do triângulo: 30
Informe o segundo lado do triângulo: 40
Informe o terceiro lado do triângulo: 60
O triângulo é escaleno
Resposta/Solução:

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

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# vamos ler o primeiro lado do triângulo
print "Informe o primeiro lado do triângulo: "
lado_a = Integer(gets)

# vamos ler o segundo lado do triângulo
print "Informe o segundo lado do triângulo: "
lado_b = Integer(gets)

# vamos ler o terceiro lado do triângulo
print "Informe o terceiro lado do triângulo: "
lado_c = Integer(gets)

# os lados informados formam um triângulo?
if((lado_a < (lado_b + lado_c)) && (lado_b < (lado_a + lado_c)) \
  && (lado_c < (lado_a + lado_b)))
  # é um triângulo equilátero (todos os lados iguais)?
  if((lado_a == lado_b) && (lado_b == lado_c))
    print "O triângulo é equilátero"  
  else
    # é isósceles (dois lados iguais e um diferente)?
    if((lado_a == lado_b) || (lado_a == lado_c) || \
      (lado_c == lado_b))
      print "O triângulo é isósceles" 
    else
      # é escaleno
      print "O triângulo é escaleno"
    end
  end
else
  print "Os lados informados não formam um triângulo." 
end



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

Como converter uma string em um valor de ponto-flutuante em Ruby usando a função to_f da classe String

Quantidade de visualizações: 7097 vezes
Em algumas situações precisamos transformar um valor contido em uma string em um valor numérico do tipo ponto-flutuante (float ou double). Em Ruby podemos fazer isso usando o método to_f da classe String.

Veja o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# um número fracionário declarado como string
valor = "3.5"

# vamos somar este número a um outro
resultado = 30 + valor.to_f

# exibe o resultado
puts resultado

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

33.5


Ruby ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como ordenar um array em Ruby usando as funções sort e sort!

Quantidade de visualizações: 11815 vezes
Em várias situações nós precisamos ordenar arrays na linguagem Ruby. Para isso nós podemos usar a função sort, que ordenará os elementos do array em ordem crescente.

Veja o código Ruby a seguir:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

=begin
  Este trecho de código mostra como ordenar
  um array de inteiros usando o método sort
  da classe Array.  
=end

# define um array de inteiros
valores = [10, 3, 56, 100, 34, 0, 4]

# exibe os valores na ordem original
puts "Ordem original:"
for valor in valores
  print valor.to_s + " "
end

# array ordenado
puts "\n\nOrdenado do menor para o maior:"
valores = valores.sort # ordena o array
for valor in valores
  print valor.to_s + " "
end

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

Ordem original:
10 3 56 100 34 0 4

Ordenado do menor para o maior:
0 3 4 10 34 56 100

Se quisermos que a ordenação seja feita no array original, sem criar uma cópia, podemos usar a função sort!. Veja:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

=begin
  Este trecho de código mostra como ordenar
  um array de inteiros usando o método sort
  da classe Array.  
=end

# define um array de inteiros
valores = [10, 3, 56, 100, 34, 0, 4]

# exibe os valores na ordem original
puts "Ordem original:"
for valor in valores
  print valor.to_s + " "
end

# array ordenado
puts "\n\nOrdenado do menor para o maior:"
valores.sort! # ordena o array
for valor in valores
  print valor.to_s + " "
end



Ruby ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como somar os elementos da diagonal principal de uma matriz em Ruby

Quantidade de visualizações: 779 vezes
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas.

Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas.

Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária.

A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja:



Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando Ruby. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código Ruby.

Veja um trecho de código Ruby completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# vamos declarar e construir uma matriz de três linhas e três colunas
matriz = Array.new(3){Array.new(3)}
soma_diagonal = 0; # guarda a soma dos elementos na diagonal principal

# vamos ler os valores para os elementos da matriz
for i in (0..2) # linhas
  for j in (0..2) # colunas
    printf("Valor para a linha %d e coluna %d: ", i, j) 
    matriz[i][j] =  gets.chomp.to_i
  end
end

# vamos mostrar a matriz da forma que ela
# foi informada
print("\n")
for i in (0..2) # linhas
  for j in (0..2) # colunas
    printf("%5d ", matriz[i][j])
  end
  print("\n")
end

# vamos calcular a soma dos elementos da diagonal   
# principal
for i in (0..2) # linhas
  for j in (0..2) # colunas
    if(i == j)
      soma_diagonal = soma_diagonal + matriz[i][j]
    end
  end
end

# e mostramos o resultado
printf("\nA soma dos elementos da diagonal principal é: %d",
  soma_diagonal)

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

Informe o valor para a linha 0 e coluna 0: 3
Informe o valor para a linha 0 e coluna 1: 7
Informe o valor para a linha 0 e coluna 2: 9
Informe o valor para a linha 1 e coluna 0: 2
Informe o valor para a linha 1 e coluna 1: 4
Informe o valor para a linha 1 e coluna 2: 1
Informe o valor para a linha 2 e coluna 0: 5
Informe o valor para a linha 2 e coluna 1: 6
Informe o valor para a linha 2 e coluna 2: 8

    3     7     9 
    2     4     1 
    5     6     8 

A soma dos elementos da diagonal principal é: 15



Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil

Alvenaria: Técnicas construtivas

Durante o levantamento, devemos aferir o nivelamento e o prumo de uma parede em blocos cerâmicos:

A) Somente se houver um embarrigamento ou desnivelamento visível.

B) Ao levantar 1,0 m a parede.

C) Somente na última fiada.

D) A cada fiada executada.

E) A cada 3 fiadas executadas.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

Quantas são as unidades hidrográficas presentes no território do Brasil?

A) 10.

B) 11.

C) 12.

D) 15

E) 26.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual é a forma correta de se declarar uma variável do tipo inteiro em Python?

A) valor = int(20)

B) valor = 20

C) As formas A e B estão corretas

D) valor = integer(20)

E) As formas B e D estão corretas
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

estados = {"SP": "SÃO PAULO", "GO": "GOIÁS",
  "RJ": "RIO DE JANEIRO"}
estados.pop("RJ")
print(estados)

A) {'SP': 'SÃO PAULO', 'GO': 'GOIÁS'}

B) {'RJ': 'RIO DE JANEIRO'}

C) Um erro TypeError: pop expected at least 1 argument, got 0 na linha 3

D) {'SP': 'SÃO PAULO', 'GO': 'GOIÁS', 'RJ': 'RIO DE JANEIRO'}

E) {'GO': 'GOIÁS', 'RJ': 'RIO DE JANEIRO'}
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

(CEBRASPE - 2024 - ITAIPU - Técnico em Hidrologia) A tabela a seguir apresenta os dados de precipitação mensal, com as respectivas quantidades de ocorrência, coletados em um posto de meteorologia, ao longo de determinado período.



A partir dos dados da tabela, é correto afirmar que a média ponderada da precipitação, no período de coleta, foi:

A) inferior a 1.000 mm.

B) superior a 1.000 mm e inferior a 1.500 mm.

C) superior a 1.500 mm e inferior a 2.000 mm.

D) superior a 2.000 mm e inferior a 2.500 mm.

E) superior a 2.500 mm.
Verificar Resposta Estudar Cards Todas as Questões

Desafios, Exercícios e Algoritmos Resolvidos de Ruby

Veja mais Dicas e truques de Ruby

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

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á 28 usuários muito felizes estudando em nosso site.