def reverse(s):
    print(s[0:len(s)])
    print(s[len(s)-1:0:-1]+s[0])
    
s=input('请输入一个字符串，以回车结束：')
reverse(s)

"""
Explanation: 练习一：自己定义一个reverse(s)函数，功能返回字符串s的倒序字符串。
End of explanation
"""


def printzj(fuhao,k):
    for i in range(1,k+1):
        print(fuhao*i)

def printdy(fuhao,k):
    for i in range(1,k+1):
        if i==1:
            print(' '*(k-1) + fuhao)
        elif i%2==0:
            print(' '*(k-i) + fuhao*(i-1)*2+fuhao)
        else:
            print(' '*(k-i)+fuhao*(i-1)*2+fuhao)
        

def printdyzj(fuhao,k):
    for i in range(1,k+1):
        print(fuhao*i)
        
k=int(input('请输入所需行数：'))            
fuhao='.'
printzj(fuhao,k)
print('-'*10+'分割线'+'-'*10)
printdy(fuhao,k)
print('-'*10+'分割线'+'-'*10)
printdyzj(fuhao,k)

"""
Explanation: 练习二：写函数，根据给定符号和行数，打印相应直角三角形，等腰三角形及其他形式的三角形。
End of explanation
"""


def n_change(a):
    k=len(a) 
    if a[k-1:k] in ['o','s','x']:
        print (a,'es',sep='')
    elif a[k-2:k] in ['ch','sh']:
        print(a,'es',sep='')
    elif a[k-1:k]=='y' and a[k-2:k-1] in ['a','e','i','o','u']:
        print(a,'s',sep='')
    elif a[k-1:k]=='y':
        print(a[:-1],'ies',sep='')
    else:
        print(a,'s',sep='')

a=input('请输入一个单词：')
n_change(a)   

"""
Explanation: 练习三：将任务4中的英语名词单数变复数的函数，尽可能的考虑多种情况，重新进行实现。
End of explanation
"""


