代码:
·
·
s = input()print(s[-1])
解说:字符串是一种序列,里面的字符有两种编号方式,第一种:从左(0)到右(字符数量-1);第二种:从右(-1)到左(字符数量的相反数)。
代码:
·
·
·
·
·
·
s = input()c = input()if c in s: print('Y')else: print('N')
解说:字符串是一种序列,里面的每个字符是它的元素,可以用“in”关键字判定。
分析:如果要推导出它的数学计算公式,有点麻烦,不过这里是编程解决数学问题,没必要推导计算公式。只要按它的项的计算方法递推计算就行。
代码:
·
·
·
·
·
·
·
N = int(input())t = 1 #总数c = 1 #第一层for i in range(2,N+1): #从第二层开始循环 c += i #上一层数量加层数 t += c #加入统计数print(t)
解说:i>0的条件,当n是偶数,最后一个数是2;当n是奇数,最后一个数是1。
代码:
·
·
·
·
·
n = int(input())t = 0 #和for i in range(n,0,-2): #倒序计算 t += 1/i #加入和print("%.2f" % t) #只使用round不能保证小数位数
解说:i>0,当n是偶数,最后是2;当n是奇数,最后是1.
补充:如果所有的数的个数都一样,就没有众数,如果有多个数的个数一样最多,那么它们都是众数。本题只输出最大的众数。代码:
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
nums = list(map(int, input().split(',')))n = len(nums)#平均数print("%.2f" % (sum(nums)/n)) #%后的括号只有单个数或变量才能省略#中位数nums.sort()m = n//2if n % 2 == 0: print("%.2f" % ((nums[m-1]+nums[m])/2))else: print(nums[m])#众数z=nums[0] #众数假设是第一个数precount=0 #上一个众数的计数,如果为0表示无众数count=1 #相同数计数,因为以按顺序排序,相同数都靠着for i in range(1,n): #从第二个数开始检查 if nums[i-1] == nums[i]: #如果等于前一个数 count += 1 #计数增1 if count >= precount: #如果计数大于等于(一定要有等于)前一个的计数 precount = count #保存计数 z = nums[i] #保存众数 else: count=1 #计数复位if precount > 0: print(z)else: print("无众数")