无聊的Python笔记Ⅰ
无聊的大计基Python
之所以说无聊,是因为——不符合我在Project中学技能的习惯
╥﹏╥...
所以记录一些错误,以此警醒自己。
寒假预习题*4
[TOC]
一、平面距离
时间限制:1000ms 内存限制:65536kb
问题描述:
在数学上,平面中两点A(x1,y1)
与点B(x2, y2)
的欧几里得距离为: \[
d_{AB} = \sqrt{(x_1 - x_2)^2 + (y_1 - y_2)^2}
\] 请你设计一个程序,在输入两点坐标后,可以计算出两点间的欧几里得距离并输出。结果保留三位小数。
输入格式:
输入数据共四行,分别表示一点的横、纵坐标与另一点的横、纵坐标,每个数据占一行,可能包含小数。
输出格式:
输出共一行,表示两点间的距离,保留三位小数。
1 | a = input() |
二、单词积分
时间限制:1000ms 内存限制:65536kb
题目描述:
一些鸡汤文定义了如下的规则,来给单词赋分:字母a
计1分,字母b
计2分,字母c
计3分,以此类推,字母z
计26分。每个单词的分数即为各个字母的总分。这样计算,单词hardwork
的分数即为98分,这些文章便可以籍此强行说明努力的意义。在本题中,你将使用这样的规则,为一个单词计算分数。
输入格式:
一个长度不超过100的单词,由大小写字母组成,不包含其他字符。
输出格式:
一个整数,为单词的总分。
1 | c = str.lower(input()) |
三、简单序列求和
时间限制:1000ms 内存限制:65536kb
题目描述:
计算 \[
s=a+aa+aaa+aaaa+\underbrace{ aa⋯a}_{n\_digits}
\] ,其中 a
是一个数字,如2+22+222+2222+22222(此时a=2,n=5)。
输入格式:
输入数据包含一行,共两个整数,依次为a
、n
,以空格隔开,含义见题目描述。其中0≤a≤9,0≤n≤15。
输出格式:
输出数据包含一行,为所求的和s
的值
1 | a,n = input().split() |
四、计算相对分子质量
时间限制:1000ms 内存限制:65536kb
题目描述:
小北在学习化学的过程中,常要计算相对分子质量。但是有些分子式比较复杂,所以计算起来比较麻烦,因此小北苦闷不堪。请你用编程的方法帮助小北计算相对分子质量。
本题中的分子式只包含4种原子, C,H,O,N,相对原子质量 分别为 12.01, 1.008, 16.00, 14.01。
请编写程序,计算包含这四种中一种或多原子( 数量不限)的分子的相对质量,例如 N2, C60, CH4, N2H6, C2H4O2, C2H6O, C6H12O6, C5H12O。
输入格式:
输入数据包含一行,为所求的分子式
输出格式:
输出数据为一个小数,为该分子的相对分子质量,保留两位小数。
1 | C = 12.01 |
1 | #!!! |
自己的不足
print()
控制格式输出:
- print("%.3f" % distance)
(" % [][m].[n][格式化符号]" % [变量]):m
:字段宽度,默认右对齐,补空格;n
:小数精度
符号 | 作用 |
---|---|
%c | 字符及其ASCⅡ码 |
%d | 整数 |
%f | 浮点数 |
%e(E) | 科学记数法 |
%g(G) | 浮点数的科学记数法 |
%o | 八进制 |
%x(X) | 十六进制 |
操作符 | 作用 |
---|---|
[]m.n | []里为占位符,m 是显示的最小总宽度,n 是小数点后的位数 |
- | 左对齐 |
<sp> | 空格占位 |
# | 在八进制数前面显示'0',在十六进制前面显示'0x'或者'0X‘ |
0 | 显示的数字前面填充'0'(默认空格) |
- 【推荐】print("{:.3f}".format(distance))
format函数:
print()会自动在行末加上回车
, 如果不需回车,只需在 print 语句的结尾添加一个,