pta 7-2 jmu-python-组合数 (20 分) python函数练习
本题要求编写程序,根据公式 算出从n个不同元素中取出m个元素(m≤n)的组合数。
输入格式:
输入在一行中给出两个正整数m和n,以空格分隔。
- 如果输入数据负数,能输出提示
不能负数
- 如果输入数据出发非法数据,能输出提示
请输入数值
(数值异常处理)
输出格式:
按照格式result = 组合数
计算结果输出。
输入样例:
2 7
输出样例:
result=21.00
话不多说,先贴代码。
def judge(m):sum = 1for i in range(1, m+1):sum *= ireturn sumdef cal(n, m):now_n = judge(n)now_m = judge(m)now_n_m = judge(n-m)return now_n/(now_m*now_n_m)m, n = list(input().split())
flag = True
flag2 = True
try:m, n = int(m), int(n)
except:print("请输入数值")flag = False
if flag:if m > 0 and n > 0:print("result={:.2f}".format(cal(n,m)))else:print("不能负数")
题确实有点基础,但是也不妨碍我练习python函数的使用,我先说一下我的解题思路,先是解决输入的问题,用刚刚学习的异常抛出来解决,其实里面的flag2是没用的。。后面加一个判断就行了,先看看能不能将输入的两个数转换为int,如果不能提示输入数值,在后面判断是不是输入了负数,然后计算排列组合很简单,两个函数,一个阶乘函数judge,然后一个计算的函数cal,然后用format格式化输出即可。
pta 7-2 jmu-python-组合数 (20 分) python函数练习相关推荐
- 【字符串】PTA试题——敲笨钟(20分)
PTA试题--敲笨钟(20分) 微博上有个自称"大笨钟V"的家伙,每天敲钟催促码农们爱惜身体早点睡觉.为了增加敲钟的趣味性,还会糟改几句古诗词.其糟改的方法为:去网上搜寻压&quo ...
- 1014 福尔摩斯的约会 (20 分) Python和C++版本
1014 福尔摩斯的约会 (20 分) 大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hy ...
- C++学习之路 | PTA乙级—— 1093 字符串A+B (20 分)(精简)
1093 字符串A+B (20 分) 给定两个字符串 A 和 B,本题要求你输出 A+B,即两个字符串的并集.要求先输出 A,再输出 B,但重复的字符必须被剔除. 输入格式: 输入在两行中分别给出 A ...
- C++学习之路 | PTA乙级——1092 最好吃的月饼 (20 分)(精简)
1092 最好吃的月饼 (20 分). 月饼是久负盛名的中国传统糕点之一,自唐朝以来,已经发展出几百品种. 若想评比出一种"最好吃"的月饼,那势必在吃货界引发一场腥风血雨-- 在这 ...
- C++学习之路 | PTA乙级—— 1074 宇宙无敌加法器 (20 分)(精简)
1074 宇宙无敌加法器 (20 分) 地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的.而在 PAT 星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为"PA ...
- C++学习之路 | PTA乙级—— 1059 C语言竞赛 (20 分)(精简)
1059 C语言竞赛 (20 分) C 语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛.既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽: 0.冠军将赢得一份"神秘大奖"(比如很 ...
- C++学习之路 | PTA乙级—— 1052 卖个萌 (20 分)(精简)
1052 卖个萌 (20 分) 萌萌哒表情符号通常由"手"."眼"."口"三个主要部分组成.简单起见,我们假设一个表情符号是按下列格式输出的 ...
- C++学习之路 | PTA乙级—— 1024 科学计数法 (20 分)(精简)
1024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数 ...
- C++学习之路 | PTA乙级—— 1033 旧键盘打字 (20 分)(精简)
1033 旧键盘打字 (20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行 ...
- C++学习之路 | PTA乙级—— 1032 挖掘机技术哪家强 (20 分)(精简)
1032 挖掘机技术哪家强 (20 分) 为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛.现请你根据比赛结果统计出技术最强的那个学校. 输入格式: 输入在第 1 行给出不超过 1 ...
最新文章
- 在Ubuntu上编译opencv 2.4.13源码支持android平台操作步骤
- https协议必须使用443端口吗_http、https、http2、websocket之间的关系
- 数据库优化实例以及优化的小技巧
- css实现圆形钟表,js+css3圆形指针时钟代码
- OpenKruise:解放 DaemonSet 运维之路
- ITK:跳过特定区域时在图像上迭代
- 出路在哪里?出路在于思路!智者无敌
- android中如何通过代码检测是否有root权限?
- android日历长按拖拽,CalendarView
- python如何设计工具类_Python面向对象 --- 类的设计和常见的内置方法
- Windows驱动开发TraceView之日志打印
- ActiveX控件原理及手动修改
- 向量叉乘在永磁同步电机电磁转矩计算中的应用
- lighttpd 配置php,Lighttpd常用配置方法
- androrid按键事件
- 记录对接京东宙斯API -- 同步订单信息到自身系统
- Java 知识点总结笔记(篇1)
- 初中学考英语听说计算机考试,2018中考英语听说计算机考试工作重要通知
- windows10/11_远程桌面连接mstsc(局域网)/CLI获取当前主机名/用户名/修改windows主机名
- r软件 linux,分享|Linux 上好用的 R 语言 IDE