Você está aqui: Ruby ::: Desafios e Lista de Exercícios Resolvidos ::: Ruby Básico |
Ler uma temperatura em graus Celsius e apresentá-la convertida em graus Fahrenheit - Desafio de Programação Resolvido em RubyQuantidade de visualizações: 464 vezes |
Pergunta/Tarefa: Escrever um programa em Ruby para ler uma temperatura em graus Celsius e apresentá-la convertida em graus Fahrenheit. A fórmula de conversão é: F = ((C * 9) / 5) + 32, sendo F a temperatura em Fahrenheit e C a temperatura em Celsius. Sua saída deverá ser parecida com: Informe a temperatura em Celsius: 40 40.0 graus Celcius é igual à 104.0 graus Fahrenheit. 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 ---------------------------------------------------------------------- # Algoritmo Ruby para converter graus Celcius # em graus Fahrenheit # vamos pedir para o usuário informar a temperatura em # Celsius print "Informe a temperatura em Celsius: " celsius = gets.chomp.to_f # vamos converter os graus Celsius para graus # Fahrenheit fahrenheit = ((celsius * 9) / 5.0) + 32 # e agora mostramos o resultado printf "%f graus Celcius é igual à %f graus Fahrenheit", celsius, fahrenheit |
![]() |
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 ::: Strings e Caracteres |
Como inverter uma string em Ruby usando as funções reverse e reverse!Quantidade de visualizações: 9971 vezes |
Esta dica mostra como podemos inverter uma string em Ruby, ou seja, reverter a ordem de seus caracteres. Para isso nós temos dois métodos: reverse e reverse!. O método reverse retorna uma nova string enquanto reverse! reverte o conteúdo da string original. Veja o trecho de código:---------------------------------------------------------------------- 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 = "Osmar J. Silva" # inverte a string sem afetar o original invertida = frase.reverse # exibe o resultado puts "Original: " + frase puts "Invertida: " + invertida # inverte afetando o original frase.reverse! # exibe o resultado puts "Original: " + frase Ao executar este código Ruby nós teremos o seguinte resultado: Original: Osmar J. Silva Invertida: avliS .J ramsO Original: avliS .J ramsO |
Ruby ::: Fundamentos da Linguagem ::: Variáveis e Constantes |
Como testar o tipo de uma variável em Ruby usando a função classQuantidade 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 |
Ruby ::: Fundamentos da Linguagem ::: Passos Iniciais |
Como ler a entrada do usuário em Ruby usando a função getsQuantidade de visualizações: 11981 vezes |
Em várias ocasições nossos programas Ruby precisam interagir com o usuário, ou seja, precisamos ler informações do usuário com o propósito de efetuar algum cálculo ou tomar decisões sobre as tarefas a serem realizadas. A entrada do usuário em um programa Ruby pode ser obtida por meio do método gets. Esta função recebe a entrada do usuário a partir do teclado em formato texto (string) e a armazena em uma variável do tipo string. Veja um exemplo no qual usamos a função gets para solicitar que o usuário informe o seu nome. Em seguida imprimimos o nome informado na tela: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- # Este exemplo mostra como ler entrada do usuário # a partir do teclado print "Informe seu nome: " # Lê a entrada nome = gets # Remove o caractere de fim de linha nome = nome.chomp # Exibe o resultado puts "Seu nome é: #{nome}" Ao executar este código Ruby nós teremos o seguinte resultado: Informe seu nome: Osmar J. Silva Seu nome é: Osmar J. Silva Note o uso da função chomp para remover o caractere de fim de linha adicionando automaticamente pelo interpretador Ruby quando pressionamos a tecla Enter. |
Ruby ::: Dicas & Truques ::: Hashes (Arrays Associativas) |
Como criar um hash em Ruby - Criação e uso de arrays associativos na linguagem RubyQuantidade 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 ::: Fundamentos da Linguagem ::: Passos Iniciais |
Qual é a diferença entre print e puts em Ruby?Quantidade de visualizações: 12282 vezes |
Tanto a função print quanto a função puts do Ruby nos permite escrever na tela, ou seja, exibir ao usuário o resultado do processamento das operações requisitas. Então, qual a diferença entre elas? A instrução puts é uma abreviação de "put string" e automaticamente move o cursor para a próxima linha. A instrução print é usada quando queremos escrever e manter o cursor na mesma linha. Veja um exemplo completo 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 ---------------------------------------------------------------------- # Este exemplo mostra a diferença entre as funções # print e puts da linguagem Ruby # vamos construir uma frase aqui frase = "Gosto muito de Ruby" # vamos exibir a frase usando duas chamadas print e # depois duas chamadas puts print frase print frase puts frase puts frase Ao executar este código Ruby nós teremos o seguinte resultado: Gosto muito de RubyGosto muito de RubyGosto muito de Ruby Gosto muito de Ruby Note que as duas primeiras chamadas a print escreveram na mesma linha. Porém, a primeira chamada a puts escreveu na mesma linha anterior, mas já colocou uma quebra de linha após a escrita. As duas funções, contudo, permitem o uso do caractere de quebra de linha. 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 ---------------------------------------------------------------------- # Este exemplo mostra a diferença entre as funções # print e puts da linguagem Ruby # vamos construir uma frase aqui frase = "Gosto muito de Ruby" # vamos exibir a frase usando duas chamadas print e # depois duas chamadas puts print frase + "\n" print frase + "\n" puts frase + "\n\n" puts frase Ao executar este novo código nós teremos o seguinte resultado: Gosto muito de Ruby Gosto muito de Ruby Gosto muito de Ruby Gosto muito de Ruby |
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 ::: Dicas & Truques ::: Data e Hora |
Como retornar a data e hora atual em Ruby usando os métodos new e now da classe TimeQuantidade de visualizações: 9438 vezes |
Quando precisamos obter a data e hora atual, o Ruby nos fornece dois métodos muito úteis e presentes na classe Time: new e now. Ambos retornam um objeto da classe Time representando a data e hora atual no sistema no qual o programa Ruby está sendo executado. Veja uma demonstração destes métodos no trecho de código 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 ---------------------------------------------------------------------- # obtém a data e hora atual usando o método new agora = Time.new # exibe o resultado puts "Usando new: " + agora.strftime("%d/%m/%Y - %H:%M:%S") # obtém a data e hora atual usando o método now agora = Time.now # exibe o resultado puts "Usando now: " + agora.strftime("%d/%m/%Y - %H:%M:%S") Ao executar este código Ruby nós teremos o seguinte resultado: Usando new: 21/03/2021 - 17:00:09 Usando now: 21/03/2021 - 17:00:09 |
Vamos testar seus conhecimentos em |
Cisalhamento e detalhamento de vigas O arranjo das armaduras de uma viga de concreto armado deve atender tanto à função estrutural quanto às condições adequadas de execução, principalmente em relação ao lançamento e ao adensamento do concreto. Uma viga de concreto C20 está sujeita a um carregamento Vd de 500kN. Essa viga tem seção igual a 25 x 60cm e altura útil de 57cm. Determine o espaçamento máximo da armadura transversal dessa viga: A) 17cm. B) 21cm. C) 25cm. D) 27cm. E) 30cm. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em AutoCAD Civil 3D |
Sistema de Coordenadas no Civil 3D Na janela Drawing Settings do AutoCAD Civil 3D, qual aba usamos para definir ou alterar o sistema de coordenadas do desenho? A) Units and Zone B) Transformation C) Ambient Settings D) Object Layers 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?# função usada para trocar dois itens de posição em uma lista def trocar_posicao(lista, pos1, pos2): lista[pos1], lista[pos2] = lista[pos2], lista[pos1] return lista # cria uma lista valores = [1, 2, 3, 4] # define as posições de troca pos1, pos2 = 0, 3 # chama a função de troca e retorna a nova lista print(trocar_posicao(valores, pos1, pos2)) A) [1, 4, 3, 2] B) [3, 2, 4, 1] C) [4, 2, 3, 1] D) [4, 4, 3, 2] E) [4, 3, 2, 1] Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
O exercício do direito à propriedade Os direitos de vizinhança, quando violados, abrem para o lesado a possibilidade de ingressar com a medidas judiciais assecuratórias do seu direito, como solicitar a suspensão da obra que está sendo realizada pelo vizinho, sua reformulação ou demolição. Sobre esse tema, assinale a alternativa correta e as possíveis alterações legislativas nesse procedimento: A) A ação de nunciação de obra nova é procedimento especial do Código de Processo Civil de 2015. B) A ação de nunciação de obra nova não deve sofrer, atualmente, mudança de terminologia e tramita pelo procedimento especial. C) O objetivo principal é reformular ou demolir a obra; a suspensão é mero pedido liminar no início da ação. D) A ação de nunciação de obra nova também pode ser ajuizada para a obra que já tiver sido finalizada. E) O prazo para ingressar com a nunciação é de até um ano e um dia a contar da conclusão da obra. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
A responsabilidade moral A ética leva o homem a questionar constantemente suas ações e as atitudes alheias, tentando definir se elas são boas ou más, corretas ou incorretas. Na condição de disciplina, essa ciência se preocupa com a análise das ideias que envolvem a produção do bem e do mal, ou seja, dedica-se aos seus aspectos teóricos. Em tal perspectiva, pode-se afirmar que o conceito de ética se refere a: A) quando o ser humano não pode falhar. B) um conjunto de conhecimentos extraídos dos meios de comunicação. C) um conjunto de conhecimentos extraídos da investigação do comportamento humano. D) um conjunto de conhecimentos extraídos da investigação da moral. E) quando o ser humano falha. 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 |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |