exercício 1
Criar uma função para fazer o poder exponenciação n ** i é qualquer número
#递归
poder def (n, i):
se i == 1:
retorno n
retorno n * de energia (n, i-1)
de impressão (de alimentação (2,4))
exercício 2
Cria uma função que verifica se uma cadeia arbitrária é uma string palíndromo, um retorno verdadeiro, caso contrário False
# Corda Palindrome, a seqüência de ler da frente para trás e para a frente a ler a partir do mesmo #abcba
# Verifique se o primeiro carácter e o último caractere, e se não, então a string não é um palíndromo
# Verifique abcdefgfedcba não é um palíndromo
# Verifique bcdefgfedcb não é um palíndromo
# Verifique cdefgfedc não é um palíndromo
# Verifique defgfed não é um palíndromo
# cheque efgfe não é um palíndromo
inspeção # fgf não é um palíndromo
verificação # g não é um palíndromo
#递归
def fn (s):
if len (s) <2:
return true
# print (s)
elif s [0] = s [-1]:
retorno False
(s [1: -1]) return fn
impressão (Fn ( 'abcba'))
Exercício 3, macaco comendo pêssegos
O primeiro dia fora de um número de pêssego, metade consumidos imediatamente, mas também comer uma; no dia seguinte o meio pêssego restante comido, eles comem um, o terceiro dia do quarto dia era assim # # quando o quinto dia para comer, apenas um. # Escreva um programa para calcular o primeiro dia do macaco escolheu um total de quantos pêssegos.
# Não recursivo
n- = 1.
Para S no Intervalo (4,0, -1):
#print (S)
N- = (. N- 1 +) * 2
impressão (n-)
Número de dias 5 = 1;
N # = 4 dias (dia 5 número 1) * 2
Número # 3 = dia (Dia 4 N + 1) * 2
# 2 = número de dias ( dia 3, o número de + 1) * 2
# número 1 = dia (dia 2 um número) * 2
#递归
def fn2 (n):
se n == 5:
retorno um
retorno (fn2 (n + 1) 1) * 2
impressão (fn2 (1))
Exercício 4, número de Fibonacci, o número de colunas, desde o início do parágrafo 3, cada um dos quais é igual à soma dos dois primeiros. Número de teste para determinar o número de colunas XV Which?
Sequência de 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ... 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368
#递归
def Fn3 (n):
se n <3:
retorno um
retorno Fn3 (n-1) + Fn3 (n-2)
de impressão (Fn3 (15))
de impressão ( '*' * 30)
Exercício 5, retornos 1 + 2 + 3 + 4 + 5 + n, e
# Não recursivo
n- = 100
para I em Gama (1100):
n-n- + = eu
para impressão (n-)
#递归
def FN4 (n):
if n == 1:
retorno 1
retorno n + FN4 (n-1)
print (FN4 (100))
print ( '*' * 30)
Exercício 6, retornos 10!
# Não-recursiva
# 10 9 necessário! 9 8 agora! ...... 2 1!
10 = N-
para I em Gama (1,10):
n-n- = I
Imprimir (n-)
#递归
def FN5 (n):
if n == 1:
retorno 1
retorno n FN5 (n-1)
print (FN5 (10))
print (' '* 30)
Exercício 7, imprimir *
# ***
# **
# *
# Não recursivo
n- = 6.
Para X no intervalo (5.):
. N- = 1-n-
impressão ( '*' * n-)
#递归
def FN6 (n):
if n == 1:
print ( ' ')
else:
print (' ' * n)
FN6 (n-1)
FN6 (5)