python练习程序(c100经典例18)

题目:

求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

def foo(a,n):
    sum=0;
    sra=a;
    for i in range(0,n):
        sum=sum+a;
        b=a*10+sra;
        a=b;
    print sum

foo(2,5)
        
时间: 2024-11-04 19:54:57

python练习程序(c100经典例18)的相关文章

python练习程序(c100经典例15)

题目: 利用条件运算符的嵌套来完成此题:学习成绩〉=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. def foo(n): if n>=90: print 'A' , elif n>=60: print 'B' , else: print 'C' , for i in range(1,101): foo(i)

python练习程序(c100经典例16)

题目: 输入两个正整数m和n,求其最大公约数和最小公倍数. def foo(a,b): if a<b: (a,b)=(b,a) aa=a; bb=b; while b!=0: tmp=a%b; a=b; b=tmp; print '最大公约数:'+str(a) print '最小公倍数:'+str(aa*bb/a) foo(4,3)

python练习程序(c100经典例14)

题目: 将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. def foo(n): while 1: for i in range(2,n+1): if n%i==0: print i, n=n/i; break; if n==1: break; for i in range(1,100): foo(i) print

python练习程序(c100经典例12)

题目: 判断101-200之间有多少个素数,并输出所有素数. for i in range(101,201): flag=0; for j in range(2,int(i**(1.0/2))): if i%j==0: flag=1 if flag==0: print i

python练习程序(c100经典例13)

题目: 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数. for i in range(100,1000): a=i/100; b=(i/10)%10; c=i%10; if a**3+b**3+c**3==i: print i

python练习程序(c100经典例1)

题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? num=0; for i in range(1,5): for j in range(1,5): for k in range(1,5): if i!=j and j!=k and i!=k: print i,j,k; num=num+1; print "一共有"+str(num)+"个排列"

python练习程序(c100经典例17)

题目: 输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. def foo(a): l=len(a); letters=0; space=0; digit=0; others=0; for i in range(0,l): num=ord(a[i]) if num>=ord('a') and num<=ord('z') or num>=ord('A') and num<=ord('Z'): letters=letters+1; elif num>=ord('0

python练习程序(c100经典例21)

题目: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时,见只剩下一个桃子了.求第一天共摘了多少. def foo(day): sum=1; for i in range(0,day-1): sum=(sum+1)*2; print sum foo(10)

python练习程序(c100经典例19)

题目: 一个数如果恰好等于它的因子之和,这个数就称为“完数”.例如6=1+2+3.编程找出1000以内的所有完数. def foo(a): sra=a; lis=[1]; while 1: for i in range(2,a+1): if a%i==0: lis.append(i) a=a/i; break; if a==1: break; l=len(lis); sum=0; for i in range(0,l): sum=sum+lis[i]; if sum==sra: print sr