python_函数练习

这篇博客通过几个函数实例介绍了Python编程的基础应用。首先,利用循环嵌套实现9*9乘法表,接着使用函数查找100-200之间的所有素数。然后,设计一个函数判断输入的年份是否为闰年。此外,还包含了一个计算指定范围内满足特定数学关系的正整数数量的函数。最后,提出了一个问题,即找出所有和等于给定正整数的质数对,例如输入10时,输出质数对的个数为2。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 编程实现 9*9乘法表(循环嵌套的复习)

     def cf(a = 1):
         for i in range(1,10):
             if i<= a:
                 print('%s*%s=%s'%(a,i,a*i),end = ' ')
             if i ==9:
                 print('\n')
         if a < 9:
             cf(a+1)
     cf()
    

在这里插入图片描述

  1. 用函数实现求100-200里面所有的素数。
    提示:素数的特征是除了1和其本身能被整除,其它数都不能被整除的数

     def prime(a,b):
     for i in range(a,b):
    		flag = 0
     	for j in range(2,i-1):
        	 if i%j==0 :
             	flag = 1
            	 	break
    		 if flag == 0:
         	print(i)
    
     prime(100,200)
    

在这里插入图片描述

  1. 请用函数实现一个判断用户输入的年份是否是闰年的程序。

     year = int(input('input year:'))
     
     def leapYear(year):
     	if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
     		print("%s是闰年" % (year))
     	else:
     		print("%s不是闰年" % (year))
     
     leapYear(year)
    

在这里插入图片描述

用函数实现输入某年某月某日,判断这一天是这一年的第几天?闰年情况也
考虑进去。

def runnian(date = ''):
	datenum = 0
	a = date.split('.')
	year = int(a[0])
	month = int(a[1])
	day = int(a[2])
	day_dict = {}.fromkeys(('1','3','5','7','8','10','12'),31)
	day_dict1 = {}.fromkeys(('4','6','9','11'),30)
	day_dict.update(day_dict1)
	if year%4 == 0:
		day_dict['2'] = 29
	else:
		day_dict['2'] = 28
	for i in range(1,month):
		i = str(i)
		datenum += day_dict[i]
	print('%s是%s年的第%s天'%(date,a[0],datenum+day))

date = input('请输入要测试的年月日:')
runnian(date)

在这里插入图片描述

题目需求:8下面给出三个正整数k,a, b,你需要计算有多少个正整数n满足a<=n<=b,且k*f(n)=n
输入: 第一行包含3个正整数k,a, b, k>=1, a,b<=10**18, a<=b;
输出:输出对应的答案;
范例:
输入: 51 5000 10000
输出: 3

def f(n):
    result = 0
    n = str(n)
    for i in n:
        result += int(i)**2
    return  result
count = 0
k,a,b = map(int,input('请输入:').split(' '))
for n in range(a,b):
    if k*f(n) == n :
        count += 1
print(count)

在这里插入图片描述
题目描述:给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。输
入值小于1000。
如,输入为10, 程序应该输出结果为2。(共有两对质数的和为10,分别为(5,5),(3,7))
输入描述: 输入包括一个整数n,(3 ≤ n < 1000)
输出描述: 输出对数
示例1 :
输入: 10
输出: 2

def judge(n):
    for i in range(2,n):
        if n%i == 0:
            return False
        else:
            return True
num = int(input('请输入'))
count = 0
for i in range(3,(num+2)//2):
    if judge(i):
        if judge(num-i):
            print(i,num-i)
            count += 1
judge(num)
print(count)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值