-
-
Save maggit/370beaf3694bbf1de2ff to your computer and use it in GitHub Desktop.
#Escribe un programa que detecte palindromos | |
#Un palindromo es una palabra, número o frase que se lee igual hacia adelante que hacia atrás | |
# Ejemplos | |
# 1) reconocer | |
# 2) adan no calla con nada | |
# 3) 14941 | |
#Bonus: entre mas pequeño el programa mejor! |
Programa para detectar palindromos
def palindromo()
puts "introduce texto a revisar"
texto1 = gets
max = texto1.split.size
temp = ""
for x in(0..max-1)
temp = temp + texto1.split[x]
#puts temp
end
texto2 = temp.reverse
#puts texto2
if temp == texto2
puts "Es palindromo"
else
puts "No es palindromo"
end
end
palindromo
creo que me quedo largo el codigo. Saludos
puts "Escribe una frase"
frase = gets.chomp.delete(' ')
if frase === frase.reverse
puts "La frase es palindrome"
else
puts "La frase no es palindrome"
end
puts "Ingrese una palabra:"
original = gets.chomp
reverse = original.reverse
if original.eql?(reverse)
puts "La palabra #{original} es palindromo"
else
puts "La palabra #{original} no es palindromo"
end
Usando los conceptos de la clase este seria con el menor código.
palabra = gets.chomp palindromo = palabra.reverse puts "="*20 if palabra == palindromo puts "Tu palabra: #{palabra} suena igual al reves: #{palindromo}, a esto se le llama palindromo." else puts "Tu palabra: #{palabra} al reves no es igual a: #{palindromo}, no es un palindromo." end
def palindromo?(text)
texto = text.downcase.delete(' ')
return texto.eql?(texto.reverse)
end
puts palindromo?("123321")
puts "Digite la palabra a evaluar"
palabra = gets.downcase.strip
puts palabra.reverse == palabra
Atte:@dehuelsln
puts "Insert to Palindromo"
string=gets.chomp.downcase.delete(" ")
if((string)==string.reverse)
puts "#{string} es un palindromo"
else
puts "#{string} no un es palindromo"
end
def verifica(cadena)
if cadena == cadena.reverse
puts "Es palindromo!!"
else
puts "No es palindromo D:"
end
end
puts "Veamos si el texto es palindromo, escribelo!"
verifica(gets.strip.downcase.delete(' '))
puts "Proporciona una palabra"
word = gets.chomp
def is_palindromo(input)
input = input.downcase
return input.eql?(input.reverse)
end
if is_palindromo(word)
puts "Es palindromo"
else
puts "No es palindromo"
end
puts "Ingrese un numero o una palabra"
palindromo = gets.chomp.downcase.strip
if palindromo.reverse == palindromo
puts "Es un palindromo"
else
puts "No es un palindromo"
end
Detecta reconocer, 14941, adannocallaconnada. Alguien por favor me puede ayudar , ya que solamente pude hacer que detectara adannocallaconnada sin espacios, de lo contrario si pongo la frase con espacios no me lo detecta como un "palindromo", pensando yo que ya agregue strip para que elimine los espacios otorgados en una palabra escrita.
una función que evalúa palabras para saber si son o no palíndromos
def palindromo (palabra)
if palabra.reverse == palabra
puts "la palabra #{palabra} es un palindromo"
else
puts "la palabra #{palabra} no es un palindromo"
end
end
puts "ingresa tu pabra"
palabra = gets.chomp
palindromo(palabra)
tal vez a varios no les funciona por que no usan el método .chomp
chomp es un método para strings y gets almacena strings que provienen del teclado.
El problema es que gets almacena lo escrito y el caráter '\n' (retorno de carro); chomp lo que hace es borrar el carácter: '\n'.
def palindromo(s)
return s.downcase.delete(" ") == s.downcase.reverse.delete(" ")
end
Testeando
puts palindromo("Adan no calla con nada")
True 👯
def palindromo(input)
if input == input.reverse
puts "La palabra es un palindromo"
else
puts "No es palindromo"
end
end
palindromo("reconocer")
lo hice de la siguiente manera
con el .tr(' ','') le digo a ruby, sustituye los espacios en blanco por 0 espacios, con esto nos aseguramos de que verifique bien
palabras como adan no calla con nada, lo mismo lo hacemos para input2
def evaluar (input)
input = input.tr(' ','')
input2 = input.reverse.tr(' ','')
if input2 == input
puts "es un palindromo"
else
puts "no es un palindromo"
end
end
puts evaluar ("reconocer")
def detecta(palabra)
palabra2 = palabra.reverse
if palabra == palabra2
puts" #{palabra} Es un palindromo "
else
puts "#{palabra} No es un palindromo "
end
end
detecta("como comes")
Tarde, Pero seguro, Aquí esta mi solución
puts "Introduce tu palabra: "
input = gets.chomp
def palindromo?(input)
word = input.gsub(" ", "")
return word == word.reverse ? true : false
end
puts "la palabra #{input} es palindromo: #{palindromo?(input)}"
def verify(polindromo)
string_reverse=polindromo.reverse.gsub(' ','')
if polindromo.gsub(' ','')==string_reverse
puts "#{polindromo.gsub(' ','')} es = a #{string_reverse}"
else
puts "#{polindromo.gsub(' ','')} NO es = a #{string_reverse}"
end
end
verify("12343231")
puts "Ingresa tu palabra"
palabra = gets.chomp
palabra = palabra.gsub(" ","")if palabra.gsub(" ","") == palabra.reverse
puts "Felicidades #{palabra} es un palindromo"
else
puts "Lo siento #{palabra} no es un palindromo"
end
dectectar palindromos
def palindromo(palabra)
palabra2 = palabra.reverse
if palabra == palabra2
puts "\n" #{palabra} " es un palindromo :)"
else
puts "\n" #{palabra} " no es un palindromo :("
end
end
puts "Introduce texto palabra o numero "
print "$ "
palabra = gets.chomp
palindromo(palabra)
puts "coloca una palabra, frase o número(s)"
palabra = gets
word = palabra.strip.downcase.gsub(" ", "")
if word == word.reverse
puts "#{palabra} es un palíndromo!!!"
else
puts "Lo siento. #{palabra} no es un palíndromo :( "
end
Reto Palindromos
def comprobar_palindromo(frase)
frase=frase.strip.gsub(' ','')
if frase == frase.reverse
return "Es un palindromo"
else
return "No es palindromo"
end
end
puts "Escribe un palindromo"
frase = gets
puts comprobar_palindromo(frase)
#esta pequeño XD
puts "escribe tu palabra: "
palindromo = gets.to_s.delete(' ')
def valida_palindromo (palindromo)
if palindromo == palindromo.reverse! --> ese pedacito era lo que faltaba, no se que hace el !
puts "tu palabra es un palindromo"
else
puts "tu palabra no es un palindromo"
end
end
puts valida_palindromo(palindromo)
Por Daniel Ortega
puts "Ingresa una palabra"
palin = gets
if palin.strip.gsub(' ','') == palin.strip.gsub(' ','').reverse
puts "La palabra es un palindromo"
else
puts "La palabra NO es un palindromo"
end
Saludos.
puts "Ingresa una palabra"
palabra = gets
palabra = palabra.gsub(/[\s,]/ ,"")
if palabra == palabra.reverse
puts "#{palabra} es un palindromo"
else
puts "#{palabra} no es un palindromo"
end
El código que desarrollé:
Saludos :)