Python 第三次实验
一如既往地简单,不到半个小时即可完成
【1】 (程序设计)输入一个正整数,输出它的因子分解式。如输入132,则输出132=122311
n=int(input())
print(1,end='')
for i in range(2,n+1):
while(n%i==0):
n=n/i
print('*',i,sep='',end='')
【2】 (程序设计)用户输入一行字符串,统计并输出其中空格、数字、英文字母、其他字符的个数,输入输出格式如下:
例如:
请输入字符串:Version 3.1415
输入的字符串有1个空格,5个数字,7个英文字母,1个其它字符
str=input()
ans_space=0
ans_num=0
ans_other=0
ans_alphabet=0
for s in str:
if('0'<=s<='9'):
ans_num=ans_num+1
elif('a'<=s<='z' or 'A'<=s<='Z'):
ans_alphabet=ans_alphabet+1
elif(s==' '):
ans_space=ans_space+1
else:
ans_other=ans_other+1
print('输入的字符串有{}个空格,{}个数字,{}个英文字母,{}个其它字符'.format(ans_space,ans_num,ans_alphabet,ans_other))
【3】 (程序设计)输入两个正整数,输出这两个数之间有多少个数含有数字8。比如输入170和200,则在170和200之间有12个数含有8,则输出12。
def check(x):
if x%10==8:
return 1
if x==0:
return 0
return check(x//10)
l=int(input('请输入第一个正整数:'))
r=int(input('请输入第二个正整数:'))
ans=0
for i in range(l,r+1):
ans=ans+check(i)
print('{}和{}之间有{}个数含有数字8'.format(l,r,ans))
【4】 (程序设计)编写程序,输入正整数a和b,产生a个范围在[100,999]的随机整数。输出这a个随机数(每行5个,数据之间用一个空格隔开),找出能被b整除的数据个数。注意:不能使用列表、元组、集合、字典等组合数据类型。
import random
a=int(input('请输入整数a:'))
b=int(input('请输入整数b:'))
ans=0
for i in range(a):
x=random.randint(100,999)
print(x,end=' ')
if(i%5==4):
print('')
if(x%b==0):
ans=ans+1
print('总共{}个数能被{}整除'.format(ans,b))
【5】 (程序设计)设计一个函数 func(a),它接受一个正整数a,函数返回这个数字每个位上数字的和(函数内不能有input,print语句,不能使用global语句),例如,func(123),返回6,因为1+2+3=6。
def func(x):
if(x==0):
return 0
return x%10+func(x//10)
n=int(input('请输入一个整数:'))
print('它的各位数字之和为',func(n),sep='')
【6】 (程序设计)设计一个函数func(s),它接受一个字符串变量s,返回其中大写字母的个数。
def func(str):
ans=0
for s in str:
if('A'<=s<='Z'):
ans=ans+1
return ans
str=input()
print(func(str))
【7】 (程序设计)定义一个函数,该函数返回参数字符串中包含多少个数字、多少个英文字母。
def get(str):
ans_num=0
ans_alphabet=0
for s in str:
if '0'<=s<='9':
ans_num=ans_num+1
if 'a'<=s<='z' or 'A'<=s<='Z':
ans_alphabet=ans_alphabet+1
return [ans_num,ans_alphabet]
str=input()
ret=get(str)
print('字符串里有{}个数字,{}个字母'.format(ret[0],ret[1]))
【8】 (程序设计)区间素数和。输入两个正整数m,n ( m < n),编写程序求[m,n]之间的所有素数的和。要求定义函数def IsPrime(m)判断整数m是否是素数,如果是素数返回True否则返回False。
def IsPrime(m):
i=2
while i*i<=m:
if(m%i==0):
return 0
i=i+1
return 1
m=int(input('请输入整数m:'))
n=int(input('请输入整数n:'))
ans=0
for i in range(m,n+1):
if(IsPrime(i)):
ans=ans+i
print('范围在[{},{}]的素数和为{}'.format(m,n,ans))
Python 第三次实验的更多相关文章
- 20145224&20145238 《信息安全系统设计基础》 第三次实验
20145224&20145238 <信息安全系统设计基础>第三次实验 课程:信息安全系统设计基础 班级:1452 姓名:陈颢文 荆玉茗 学号:20145224 20145238 ...
- 学习Python的三种境界
前言 王国维在<人间词话>中将读书分为了三种境界:"古今之成大事业.大学问者,必经过三种之境界:'昨夜西风凋碧树,独上高楼,望尽天涯路'.此第一境也.'衣带渐宽终不悔,为伊消得人 ...
- 20145330Java程序设计第三次实验
20145330<Java程序设计>第三次实验报告 实验三 敏捷开发与XP实践 实验内容 1.使用git上传代码 2.使用git实现代码开发实践 3.实现代码的重载 实验步骤 使用git上 ...
- 20145320《Java程序设计》第三次实验报告
20145320<Java程序设计>第三次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.22 15: ...
- selenium webdriver (python) 第三版
感谢 感谢购买第二版的同学,谢谢你们对本人劳动成果的支持!也正是你们时常问我还出不出第三版了,也是你们的鼓励,让我继续学习整理本文档. 感谢乙醇前辈,第二版的文档是放在他的淘宝网站上卖的,感谢他的帮忙 ...
- Linux第三次实验报告
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:201352 姓名:池彬宁 贺邦 学号:20135212 2013520 ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
- 简学Python第三章__函数式编程、递归、内置函数
#cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...
- 初学Python(三)——字典
初学Python(三)——字典 初学Python,主要整理一些学习到的知识点,这次是字典. #-*- coding:utf-8 -*- d = {1:"name",2:" ...
随机推荐
- 聊聊Netty那些事儿之从内核角度看IO模型
从今天开始我们来聊聊Netty的那些事儿,我们都知道Netty是一个高性能异步事件驱动的网络框架. 它的设计异常优雅简洁,扩展性高,稳定性强.拥有非常详细完整的用户文档. 同时内置了很多非常有用的模块 ...
- Cf #782 (Div. 2)
A. Red Versus Blue 题意 共有 n 个连续字符 ,其中有 a 个 R ,b 个 B (a+b=n),问怎么排列使 R 的最大连续个数最小,输出一种可能排列 思路 b 个B可以把a个 ...
- Redis 渐进集群介绍
redis 凭借着强大的功能和可靠的稳定性,应用场景越来越广.逐渐成为软件开发工程师必备的技能之一. 本篇文章,暂不做基本功能的介绍.直接教大家如何部署redis集群. 集群演进主要分为2部分. 一. ...
- Java多线程交替打印
1. synchronized实现双线程交替打印 class Print implements Runnable{ static int i=0; static final int n=100; @O ...
- Mvcapi解决H5请求接口跨域问题
using Newtonsoft.Json;using System;using System.Collections.Generic;using System.Linq;using System.N ...
- 《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(6)-Fiddler状态面板详解
1.简介 按照从上往下,从左往右的计划,今天就轮到介绍和分享Fiddler的状态面板了. 2.状态面板概览 Fiddler的状态面板概览,如下图所示: 3.状态面板详解 Fiddler底端状态栏面板详 ...
- 弹性布局( display: flex;)
参考: https://www.cnblogs.com/hellocd/p/10443237.html
- 1000-ms-HashMap 线程安全安全问题
问题: HashMap是否是线程安全 详解 http://www.importnew.com/21396.html 有源码分析 和代码性能比较 CHM性能最好 HashMap不是线程安全的:Hasht ...
- B+树索引页大小是如何确定的?
B+树简介 在正式介绍本文的主题前,需要对 B+ 树有一定的了解,B+树是一种磁盘上数据的索引结构,大概长这个样子. B+树的叶子节点是所有的数据,非叶子节点称为索引页,索引页里有若干个索引项,本例中 ...
- php static 和self区别
static(关键字) 类似于 self(关键字) , 但它指向的是被调用的类(Document) 而不是包含类(DomainObject) , static 和 self 的区别: <?php ...