7-103 统计指定数字和
输入一个数字的字符串和一个数字字符(1到9),统计这个数字在字符串中出现的次数,并累加。例如有个字符串是1234321,查找2这个数字,在字符串中出现了2次,所以累计和就是2+2=4
输入格式:
输入2行。第1行是字符串,第2行是要查找的数字。
输出格式:
指定数字出现的累加和
输入样例:
1234321
2
输出样例:
4
代码
n=str(input())
a=str(input())
s=n.count(a)
c=s*int(a)
print(c)
需要用到的陌生语法:
n.count(a)表示在字符串n中字符出现的个数
心路历程:
这道题一开始我是做错了的。
n=input()
a=int(input())
num=0
for i in n:
if i==a:
num+=1
c=num*a
print(c)
这是我第一次写的代码。最后返回值一直是0 ,我一直没找出问题所在。后来我在比照别人的代码的时候发现问题出在第五行,i 和 a 本来就不是一个类型的所以num恒定一定是为零的。应该是 if int(i)==a,后来我发现我在做题的时候经常会出现这么一个问题,大家一定要注意啊!
然后找了一种更简单的方法就是只用调用列表的count()函数。
7-105 数组逆序排列输出
输入一组整,将这组数组从大到小逆序排列,并按照指定格式输出。
输入格式:
一行一组数据
输出格式:
指定的格式输出逆序
输入样例
1 2 3 4 5 6 7 8
输出样例:
8->7->6->5->4->3->2->1
代码
n=input().split()
n.sort(reverse==True)
print("->".join(n))
需要用到的陌生代码 :
x.sort(reverse==True)表示对x这个字符串进行升序排列。
“x”.join(n)表示将n每个字符之间以x相连
这道题较为简单只需要搞明白我们需要用到的语法,其他都没有什么问题。
7-108 判断字符串头尾结构
输入一个字符串,判断是否头尾对应的。比如字符串'abcba'就是头尾对应的。比如字符串'+-**-+',也是头尾对应的。比如字符串'abcbb'就不是头尾对应的。
输入格式:
输入一个字符串
输出格式:
如果头尾对应,输出'yes'
否则输出'no'
输入样例:
abcba
输出样例:
yes
代码
n=input()
if n[0]==n[-1]:
print('yes')
else:
print('no')
这个代码学会字符串通过下标位置引用就可以求解出来,相对来说是最基础类的题目了。
7-109 找最长单词
输入一句英文,整句英文有4个单词,只有最后一个句号。输出最长的单词。如果有多个单词长度一样,输出第一个。
输入格式:
一句英文,整句英文有4个单词。整句英文只有最后一个标点符号。
输出格式:
句子中最长的单词
输入样例:
i am a boy!
输出样例:
boy
代码
a=0
n=input()[::-1].split()
for i in n:
if len(i)>a:
a=len(i)
b=i
print(b)
心路历程
这道题的思路也比较简单,就是初始一个a的值for循环,通过长度的比较依次更改a的值一直到得到最大的长度,其所对应的i就是我们要找的最长的单词。
7-98 判断完数
判断一个正整数是否为完数。完数定义:一个数的所有因子(包括1)之和等于它自身,这个数就是完数。比如6=1+2+3,6是完数。
输入格式:
例如:输入一个正整数 6
输出格式:
输出:
6=1+2+3
输入样例:
在这里给出一组输入。例如:
6
输出样例:
在这里给出相应的输出。例如:
6=1+2+3
输入样例:
在这里给出一组输入。例如:
28
输出样例:
在这里给出相应的输出。例如:
28=1+2+4+7+14
代码
n=int(input())
list1=[]
for i in range(1,n):
if n%i==0:
list1.append(i)
print("{}=".format(n),end="")
print(*list1,sep='+')