Прикреплённый файл «shorts-11.23.py»
Загрузка 1 #!/usr/bin/python
2 # coding: utf
3
4 # Найти сумму цифр заданного натурального числа
5 N=input("Введите натуральное число: ")
6
7 def sum1(n):
8 if n<10: return n
9 return n%10+sum1(n/10)
10
11 def sum2(n):
12 return n%10 + (n>9 and sum1(n/10) or 0)
13
14 print "Сумма цифр:", sum1(N), sum2(N)
15
16 # Вычисление суммы: 2! + 4! + 6! + ... + п!
17 def bfact1(n,k=2):
18 # (1*2)+(1*2*3*4)+(1*2*3*4*5*6)+...+(1*2*3*...*(n-1)*n) =
19 # = (1*2)*(1+3*4+3*4*5*6+...+3*4*...*n =
20 # = (1*2)*(1+(3*4)*(5*6+...+5*6*...*n)) = ... =
21 # = (1*2)*(1+(3*4)*(1+(5*6)*(1+(7*8)....*(1+(n-1)*n*(1+0))...)))
22 if k>n: return 0
23 else: return k*(k-1)*(1+bfact1(n,k+2))
24
25 def bfact2(n,k=2):
26 return k<=n and (k*(k-1)*(1+bfact1(n,k+2))) or 0
27
28 def bfactD(n): # проверочная тупая функция
29 def fact(n): return n*(n>2 and fact(n-1) or 1)
30 res=0
31 for i in xrange(2,n+1,2):
32 res+=fact(i)
33 return res
34
35 print "2! + 4! + 6! + ... + п!:",bfact1(N), bfact2(N), bfactD(N)
36
37 # Вычисление наибольшего общего делителя двух натуральных чисел
38 M=input("Введитите ещё одно натуральное число: ")
39
40 def nod1(m,n):
41 if m==n: return m
42 m,n=max((m,n),(n,m)) # используем сравнение пар
43 return nod1(m-n,n)
44
45 def nod2(m,n):
46 if m>n: return nod2(m-n,n)
47 elif m<n: return nod2(n-m,m)
48 else: return n
49
50 print "Наибольшего общего делителя", M, N, ":", nod1(M,N), nod2(M,N)
Прикреплённые файлы
Для ссылки на прикреплённый файл в тексте страницы напишите attachment:имяфайла, как показано ниже в списке файлов. Не используйте URL из ссылки «[получить]», так как он чисто внутренний и может измениться.- [получить | показать] (2011-11-29 21:41:10, 0.2 KB) [[attachment:NodNat.py]]
- [получить | показать] (2011-11-26 19:05:02, 0.3 KB) [[attachment:RaysFactSum.py]]
- [получить | показать] (2011-11-26 17:41:25, 0.1 KB) [[attachment:RaysNOD.py]]
- [получить | показать] (2011-11-26 17:15:04, 0.2 KB) [[attachment:RaysSum.py]]
- [получить | показать] (2011-11-29 23:18:12, 0.1 KB) [[attachment:SlonimDen1.py]]
- [получить | показать] (2011-11-29 21:44:03, 0.2 KB) [[attachment:SumNat.py]]
- [получить | показать] (2011-11-29 21:24:48, 0.2 KB) [[attachment:SummaFakt.py]]
- [получить | показать] (2011-11-29 23:26:25, 0.1 KB) [[attachment:VyshlovANoD.py]]
- [получить | показать] (2011-11-30 15:06:19, 0.1 KB) [[attachment:VyshlovANoDrec.py]]
- [получить | показать] (2011-11-29 23:26:42, 0.2 KB) [[attachment:VyshlovASumFactorial.py]]
- [получить | показать] (2011-11-29 23:26:54, 0.1 KB) [[attachment:VyshlovASumchifr.py]]
- [получить | показать] (2011-11-29 21:21:48, 0.2 KB) [[attachment:attachment_summafakt.py]]
- [получить | показать] (2011-11-30 14:54:32, 1.6 KB) [[attachment:shorts-11.23.py]]
Вам нельзя прикреплять файлы к этой странице.