Skip to content

Instantly share code, notes, and snippets.

@barangerbenjamin
Created April 12, 2018 17:35
Show Gist options
  • Save barangerbenjamin/ef4a2975d2bad5c211500a4681853796 to your computer and use it in GitHub Desktop.
Save barangerbenjamin/ef4a2975d2bad5c211500a4681853796 to your computer and use it in GitHub Desktop.
# def acronymize(sentence)
# string = ""
# sentence.split(" ").each do |word|
# string += word[0].upcase
# end
# return string
# end
# redo using map
# [] {} .
def acronymize(sentence)
sentence.split(" ").map { |word| word[0].upcase }.join
end
# modify encrypt so it can encrypt and decrypt using the same method
# and apply the permutation that we want, don't have to be 3
# || [] {} . ; :
def encrypt(text, num = -3)
alphabet = ("A".."Z").to_a
letters = text.upcase.split("")
string = ""
letters.each do |letter|
index = alphabet.index(letter)
if index.nil?
string += letter
else
string += alphabet[(index + num) % 26]
end
end
return string
end
def decrypt(text)
# what code here
encrypt(text, 3)
end
encrypted_text = "FK ZOVMQLDOXMEV, X ZXBPXO ZFMEBO, XIPL HKLTK XP ZXBPXO'P ZFMEBO, QEB PEFCQ ZFMEBO, ZXBPXO'P ZLAB LO ZXBPXO PEFCQ, FP LKB LC QEB PFJMIBPQ XKA JLPQ TFABIV HKLTK BKZOVMQFLK QBZEKFNRBP. FQ FP X QVMB LC PRYPQFQRQFLK ZFMEBO FK TEFZE BXZE IBQQBO FK QEB MIXFKQBUQ FP OBMIXZBA YV X IBQQBO PLJB CFUBA KRJYBO LC MLPFQFLKP ALTK QEB XIMEXYBQ. CLO BUXJMIB, TFQE X IBCQ PEFCQ LC 3, A TLRIA YB OBMIXZBA YV X, B TLRIA YBZLJB Y, XKA PL LK. QEB JBQELA FP KXJBA XCQBO GRIFRP ZXBPXO, TEL RPBA FQ FK EFP MOFSXQB ZLOOBPMLKABKZB."
puts decrypt(encrypted_text)
def encrypt(text)
alphabet = ("A".."Z").to_a
letters = text.upcase.split("")
string = ""
letters.each do |letter|
index = alphabet.index(letter)
if index.nil?
string += letter
else
string += alphabet[index - 3]
end
end
return string
end
# create method name encrypt that takes a parameter(string) called text
# create array containing alphabet
# split text in letters
# iterate on letters
# get index of letter
# check if index exists, if not return normal letter, if exist , apply rotation
# create string from array
puts encrypt("MethOd") == "JBQELA"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment