September 2017 Update
This commit is contained in:
parent
bba7bfd280
commit
ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions
65
Task/Caesar-cipher/Swift/caesar-cipher.swift
Normal file
65
Task/Caesar-cipher/Swift/caesar-cipher.swift
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
var arr:[Character]=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
|
||||
|
||||
func res(st:String,ar:[Character],x:Int,ro:String)->String{
|
||||
|
||||
var str2:[Character]=[]
|
||||
|
||||
for i in st.characters
|
||||
{
|
||||
|
||||
for j in 0...25
|
||||
{
|
||||
|
||||
|
||||
if i==ar[j]
|
||||
{
|
||||
|
||||
switch ro
|
||||
{
|
||||
case "right":
|
||||
|
||||
if(j+x<=25)
|
||||
{
|
||||
|
||||
str2.append(ar[j+x])
|
||||
break
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
str2.append(ar[j+x-26])
|
||||
break
|
||||
}
|
||||
|
||||
case "left":
|
||||
|
||||
if(j-x>=0)
|
||||
{
|
||||
|
||||
str2.append(ar[j-x])
|
||||
break
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
str2.append(ar[j-x+26])
|
||||
break
|
||||
}
|
||||
default:
|
||||
print("incorrect input for rotation direction")
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return String(str2)
|
||||
}
|
||||
|
||||
var mssg:String="hi"
|
||||
var x1:Int=5
|
||||
var rot:String="right"
|
||||
var rotstr:String=res(st:mssg,ar:arr,x:x1,ro:rot)
|
||||
print(rotstr)
|
||||
Loading…
Add table
Add a link
Reference in a new issue