Ejercicios de programación en Python (5)

1. Escribe un número decimal y conviértelo en un número binario (usando el método de función)

def Dec2Bin(dec):
    result = ''

    if dec:
        result = Dec2Bin(dec // 2)
        return result + str(dec % 2)
    else:
        return result


print(Dec2Bin(15))

 2. Escriba un número decimal, conviértalo a un número hexadecimal y use la función hex()

decimal = 123456
hexadecimal = hex(decimal)[2:]
print(hexadecimal)

3. Escriba un programa para mostrar todos los años bisiestos desde 2001 hasta 2100. Cada línea muestra 10 años bisiestos, estos años están separados por un espacio.

cont = 0
print('21世纪中的闰年有:')
for i in range(2001, 2101):
    if i % 4 == 0 and i % 100 != 0 or i % 400 == 0:
        print(i, end=' ')
        cont = cont + 1
        if cont % 10 == 0:
            print('\n')

 4. Escribe una función para calcular la suma de cada dígito de un número entero.

def sumDigits(n):
    num = 0
    for i in range(len(str(n))):
        num += n % 10
        n = n // 10
    return num


print(sumDigits(234))

 5. Convertir entre Celsius y Fahrenheit

c = float(input("请输入摄氏温度:"))
f = c*1.8+32
print(f"对应的华氏温度为:{f:.1f}")

f = float(input("请输入华氏温度:"))
c = 5.0/9.0*(f-32)
print(f"对应的摄氏温度为:{c:.1f}")

 6. Escribe una función para mostrar un número entero al revés.

def reverse_int(num):
    return int(str(num)[::-1])


print(reverse_int(3456))

 7. Escribe una función para calcular la siguiente secuencia m(i)=1/2+2/3+....+i/(i+1)

def caculate(n):
    sum = 0
    for x in range(n, 0, -1):
        sum = sum + x / (x + 1)

    print("sum=", sum)


caculate(20)

 8. Utilice la función def área para escribir un programa, ingrese los valores de los tres lados del triángulo y calcule el área si la entrada es válida; de lo contrario, la entrada no es válida.

a = float(input("输入第一条边长:"))
b = float(input("输入第二条边长:"))
c = float(input("输入第三条边长:"))


def area(a, b, c):
    p = (a + b + c) / 2
    area = (p * (p - a) * (p - b) * (p - c)) ** 0.5
    return area


if a + b < c or a + c < b or b + c < a:
    print("输入无效,请重新输入")
else:
    print("三角形的面积为: %0.2f" % area(a, b, c))

 

9. Determinar si un número entero es un palíndromo.

number = int(input("输入一个整数:"))


def isPalindrome(number):
    revNum = reverse(number)
    return number == revNum


def reverse(number):
    revNum = 0
    while number != 0:
        revNum = revNum * 10 + number % 10
        number //= 10
    return revNum


print(isPalindrome(number))

 

 

Supongo que te gusta

Origin blog.csdn.net/weixin_62304542/article/details/130250712
Recomendado
Clasificación