4.13趣味百题第七题
Posted galileo9527
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4.13趣味百题第七题相关的知识,希望对你有一定的参考价值。
一 问题描述
一银行一年整存零取得月息为0.63%。现在一人手中有一笔钱,他打算么诶年年底取出1000元。第五年时刚好取完。问他一开始存钱多少?
二 设计思路
由题意可知最后一次取钱为1000元,因此可逆推初始钱。
三 流程图
四 伪代码
double x=1000
for(int i=4;i>=1;i--)
for(int j=1;j<=12;j++)
x=x/(1+0.0063)
输出x
五 c++代码
#include<iostream>
#include<math.h>
using namespace std;
int main()
double x=1000;//第五年末金额
for(int k=11;k>=1;k--)
x=x/(1+0.0063);
cout<<"年数: 5"<<" 月份: "<<k<<" 储蓄: "<<x<<endl;
for(int i=4;i>=1;i--)
for(int j=12;j>=1;j--)
x=x/(1+0.0063);
cout<<"年数: "<<i<<" 月份: "<<j<<" 储蓄: "<<x<<endl;
return 0;
全国计算机等级考试二级Python(2021年9月)备考笔记 第十二天
文章目录
Python 二级等考(第三季)精品题3
单项选择题
第一题
第二题
第三题
第四题
第五题
第六题
第七题
第八题
第九题
第十题
第十一题
第十二题
第十三题
第十四题
第十五题
第十六题
第十七题
第十八题
第十九题
第二十题
第二十一题
第二十二题
第二十三题
第二十四题
第二十五题
第二十六题
第二十七题
第二十八题
第二十九题
第三十题
第三十一题
第三十二题
第三十三题
第三十四题
第三十五题
第三十六题
第三十七题
第三十八题
第三十九题
第四十题
程序设计题
第一题
代码如下:
x = eval(input()) #输入为"65",由eval函数转变为数值65
print("{:c}".format(x)) #输出Unicode编码为65,对应的字符为"A"
# 如果输入的是"a",会出现如下错误提示:
# File "<string>", line 1, in <module>
# NameError: name 'a' is not defined
# 原因:eval函数只能识别数字字符串,对于输入"a",只能被识别为一个变量名称为a,
# a 这个变量是不存在的,从而出现错误。
# 如果要避免这样的意外出现,请尝试使用try-catch语句完善代码。
# 本题目的考察点在于format函数的格式输出规则。
第二题
代码如下:
s = input() #从键盘获取输入,返回字符串
print(s[::-1],end="") #字符串逆序输出,详见代码后说明
print(len(s)) #输出字符串长度
'''
本题考查的是字符串的一些基本知识。
反序字符串的写法是s[::-1]。
[x:y:z]切片索引,x是左端,y是右端,z是步长,在p[x,y)区间从左到右每隔z取值,默认z是1,可以省略参数z,步长为负号就是反向,从右到左取值。
'''
第三题
代码如下:
import random #导入random模块
random.seed(123) #设置随机数种子123,保证每次执行时生成的相同的随机序列
for i in range(10): #遍历循环
print(random.randint(1,999), end=",")
#输出[1,999]上的随机整数,以结尾英文逗号隔开
#如:54,275,90,788,418,273,111,859,923,896,
#因为随机种子固定,每次执行会得到同样的输出。
'''
seed()方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数。
seed()方法的语法:
import random
random.seed([x])
注意:seed()是不能直接访问的,需要导入random模块,然后通过random静态对象调用该方法。
参数x -- 改变随机数生成器的种子seed。
random.randint(a,b)返回一个a至b区间(包含a和b)的整数。
'''
第四题
代码如下:
import turtle
turtle.pensize(2)
d = 0
for i in range(1,9):
turtle.fd(100)
d += 45
turtle.seth(d)
第五题
代码如下:
#从键盘上获取字符串,按回车键结束输入。形如:计算机 金融 计算机 建筑 土木 土木 计算机
names = input("请输入各个同学行业名称,行业名称之间用英文空格间隔(回车结束输入):")
#str.split()函数可分割从键盘上获取的字符串,返回一个列表,默认缺省分隔符为英文空格。
'''
| split(self, /, sep=None, maxsplit=-1)
| Return a list of the words in the string, using sep as the delimiter string.
|
| sep
| The delimiter according which to split the string.
| None (the default value) means split according to any whitespace,
| and discard empty strings from the result.
| maxsplit
| Maximum number of splits to do.
| -1 (the default value) means no limit.
'''
t = names.split()
d = {} #定义一个字典
for c in range(len(t)): #对列表t中每一个元素统计出现次数
d[t[c]] = d.get(t[c],0)+1 #要掌握字典get方法的具体使用,详见代码后面。
ls = list(d.items()) #将字典的items()转换为列表,形如[("计算机",3),...]
ls.sort(key=lambda x:x[1], reverse=True) # 按照数量排序
for k in range(len(ls)): #输出排序后的统计结果
zy,num = ls[k]
#例如:ls[0]=("计算机",3),执行完该语句后,zy="计算机",num = 3
print("{}:{}".format(zy,num))#按照格式输出结果
第六题
代码如下:
fi = open("论语.txt", "r")
fo = open("论语-原文.txt", "w")
a=0
for line in fi:
if a==1 and line.count("【注释】")==0 and line.count("【原文】")==0:
line = line.strip(" \\n")
if line.strip():#判断line是否为空串
fo.write('{}\\n'.format(line))
if line.count("【原文】")>0:
a=1
if line.count("【注释】")>0:
a=0
fi.close()
fo.close()
第七题
代码如下:
fi = open("论语.txt", "r")
fo = open("论语-原文.txt", "w")
a=0
for line in fi:
if a==1 and line.count("【注释】")==0 and line.count("【原文】")==0:
line = line.strip(" \\n")
if line.strip():#判断line是否为空串
fo.write('{}\\n'.format(line))
if line.count("【原文】")>0:
a=1
if line.count("【注释】")>0:
a=0
fi.close()
fo.close()
以上是关于4.13趣味百题第七题的主要内容,如果未能解决你的问题,请参考以下文章