1.(Python)编写函数实现提取指定字符串中的数字并求和.
使用input()获取一个字符串,编写并传参,使用isdigit()方法提取字符串中所有的数字,并对提取的数字进行求和计算,最后将存储数字的列表和累加和返回。
输入:自己输入一串带数字的字符串。
运行效果:
代码:
def get_dight(x):
s=0 # 存储累加和
lst=[] # 存储提取出来的数字
for item in x:
if item.isdigit(): # 如果是数字
lst.append(int(item))
# 求和
s=sum(lst)
return lst,s
#准备调用
s=input('请输入一个字符串:')
lst,x=get_dight(s)
print('提取数字的列表为:',lst)
print('累加和为:',x)
2.(C)质数口袋
小 A 有一个质数口袋,里面可以装各个质数。他从2开始,依次判断各个自然数是不是质数,如果是质数就会把这个数字装入口袋。
口袋的负载量就是口袋里的所有数字之和。
但是口袋的承重量有限,装的质数的和不能超过L。给出L,请问口袋里能装下几个质数?将这些质数从小往大输出,然后输出最多能装下的质数的个数,数字之间用换行隔开。
输入格式:
一行一个正整数 L。
eg.
100
输出格式:
将这些质数从小往大输出,然后输出最多能装下的质数个数,所有数字之间有一空行。
eg.
2
3
5
7
11
13
17
19
23
9
代码:
#include <stdio.h>
int isprime(int n){
for(int i=2;i<=n/2;i++){
if(n%i==0)return 0;
}
return 1;
}//编写函数
int main(){
int L,sum=0,count=0;
scanf("%d",&L);
for(int i=2;;i++){
if(isprime(i)){ //调用函数
sum+=i;
if(sum>L)break;
printf("%d\n",i);
count++;
}
}
printf("%d",count); //输出
}