文章目录
- 1、温度转换
- 2、幸运数
- 3、整除幸运数
- 4、floor函数
- 5、乘积之和
- 6、随机小数游戏
- 7、直线切平面
- 8、线段
- 9、圆切平面
- 10、射线
- 11、序列
- 12、AP数列(等差数列)
- 13、GP数列(等比数列)
- 14、三角形斜边
- 15、小码哥的生日
- 16、完全平方数
- 17、圆锥的表面积
- 18、平方根和对数值
- 19、分期付款
- 20、x+y的和
- 21、计算表达式的值
- 22、合并
- 23、圆锥体的体积
- 24、圆锥体表面积
- 25、立方体的体积
- 26、立方体的表面积
- 27、长方体的表面积
- 28、公里换转为米
- 29、温度对照
- 30、x-y的和
- 31、三维空间两点
- 32、整理玩具
- 33、K次方根
- 34、分数运算
- 35、非常大的N
- 36、向下取整
- 37、时刻求和
- 38、平方根X
- 39、卡罗尔序列
1、温度转换
请编写一个简单程序,实现以摄氏度为单位的温度转换为华氏度,考虑不合理的输入或是溢出等特殊情况。
格式:
输入格式:输入实型
输出格式:输出实型,保留2位小数,如样例所示。
tip:华氏度=32+摄氏度×1.8
样例一:
输入: 37
输出: 37 .00 C=98.60 F
答案:
'''
@Author :S1Lu
@Date :2022/10/22 11:09
'''
c = float(input())
print("{:.2f} C={:.2f} F".format(c,c*1.8+32))
import java.util.Scanner;
/**
* @Author S1Lu
* @create 2022/10/22 11:09
*/
public class main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
float c = scanner.nextFloat();
float f = (float) (32+c*1.8);
System.out.printf("%.2f C=%.2f F",c,f);
}
}
2、幸运数
假定幸运数是只包含4或7的正整数,如7、47。判断-个正整数n是不是一个幸运数。 则输出YES,否则输出NO。不考虑负数, 0或者其他特殊情况。不考虑溢出或者超出整型范围的情况。
格式:
输入格式:输入为整型
输出格式:是幸运数则输出YES,否则输出NO
样例一:
输入: 47
输出: YES
答案:
'''
@Author :S1Lu
@Date :2022/10/22 11:11
'''
import re
reg = '[^47]' #定义一个正则,不包含4,7
number = input()
if re.findall(reg,number):
print("NO")
else:
print("YES")
3、整除幸运数
假定幸运数是只包含4或7的正整数,如7、47. 判断一个正整数n是否能被一个幸运数整除。 是则输出YES, 否则输出NO。不考虑负数, 0或者其他特殊情况。考虑溢出或者超出整型范围的情况。
格式:
输入格式:输入为整型
输出格式:能被一个幸运数整除则输出YES,否则输出NO
样例一:
输入: 47
输出: YES
答案:
'''
@Author :S1Lu
@Date :2022/10/22 11:11
'''
import re
number = int(input())
def tf(number):
reg = '[^47]'
if re.findall(reg, str(number)):
return False
else:
return True
for i in range(1,number+1):
if (tf(i) and number%i==0):
print("YES")
break
else:
print("NO")
4、floor函数
给定一个正整数n, 求满足floor (n/x) =y的x和y (x和y是正整数)。比如输入5,则(x, y)的组合可以有:(1, 5), (2,2), (3, 1),(4, 1), (5, 1)。不考虑负数, 0或者其他特殊情况。
格式:
输入格式:输入为整型
输出格式:输出为整型,空格分隔,每组一行。前个数为x,后面个为y. 输出按照从小到大的次序输出。
样例一:
输入: 5
输出:1 5
2 2
3 1
4 1
5 1
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:12
'''
from math import floor
n = int(input())
for x in range(1,n+1):
y = floor(n / x)
print(x,y)
5、乘积之和
给定-一个正整数n,求满足floor (n/x) =y的x和y的乘积之 和(x和y是正整数)。比如输入5,则(x, y)的组合可以有:(1,5),(2, 2),(3, 1),(4, 1),(5,1),那么,1 * 5 + 2 * 2 + 3 * 1 + 4 * 1 + 5 * 1=5+4+3+4+5=21.不考虑负数, 0或者其他特殊情况。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 5
输出: 21
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:14
'''
from math import floor
n = int(input())
sum = 0
for x in range(1,n+1):
y = floor(n / x)
sum += x * y
print(sum)
6、随机小数游戏
小码哥在1到10之间随机选择了一个数字N,然后把所选数字加倍,之后加上一个偶数K,然后把所得的数字除以2,再把得的商与原始数字N相减,输出他们的差。不考虑负数,0或者其他特殊情况。比如输入N和K分别为8和2,那么8 * 2=16,16+2=18, 18/2=9, 9-8=1,那么应该输出1。
格式:
输入格式:输入为整型数字N和K,空格分隔
输出格式:输出为整型
样例一:
输入: 3 10
输出: 5
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:12
'''
n,k= map(int,input().split())
tem = (n * 2 + k)/2 - n
print(int(tem))
7、直线切平面
直线切平面,输入直线条数N,问最多把平面分成几块。比如一条直线可以把一个平面切割成2块。可以使用公式S= n* (n+1)/2 +1。不考负数,0或者其他特殊情况。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 5
输出: 16
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:14
'''
n =int(input())
s= n* (n+1)/2 +1
print(int(s))
8、线段
有一直线,线上有n个点(n>=2),请问这条直线会被分隔成多少个线段。n从键盘输入。不考虑负数,0或者其他特殊情况。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 3
输出: 3
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:15
'''
n =int(input())
s= n*(n-1)/2
print(int(s))
9、圆切平面
n个圆最多把平面分成几部分?输入圆的数量N,问最多把平面分成几块。比如一个圆以把一个平面切割成2块。不考虑负数,0或者其他特殊情况。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 2
输出: 4
答案:
'''
@Author :S1Lu
@Date :2022/10/22 23:14
'''
n =int(input())
s = n*n-n+2
print(int(s))
10、射线
在一条直线上点上N(N>=1)个点可以把这条直线分成多少条射线? N从键盘输入。不考负数, 0或者其他特殊情况。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 3
输出: 6
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:15
'''
n =int(input())
s = 2*n
print(int(s))
11、序列
有一个序列1, 3, 6, 10, 15, 21…请找出它的规律,输入整数N,输出第N项。不考虑负数,0或者其他特殊情况。
格式:
输入格式:输入为整数
输出格式:输出为整数
样例一:
输入: 4
输出: 10
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:16
'''
n =int(input())
s = (n+1)*n/2
print(int(s))
12、AP数列(等差数列)
输入AP数列(正整数)的前两项A1、A2和n。输出序列的第n项。不考虑负数,0或者其他特殊情况。
格式:
输入格式:输入为整型,空格分隔
输出格式:输出为整型
样例一:
输入: 2 3 4
输出: 5
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:20
'''
a1 , a2 ,n = map(int,input().split())
an = a1 + (n-1)*(a2-a1)
print(an)
13、GP数列(等比数列)
输入GP数列(正整数)的前两项A1、A2和n。输出序列的第n项。不考负数,0或者其他特殊情况。
格式:
输入格式:输入为整型,空格分隔
输出格式:输出为整型
样例一:
输入:1 3 4
输出: 27
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:23
'''
a1 , a2 ,n = map(int,input().split())
an = a1 * (a2/a1)**(n-1)
print(int(an))
14、三角形斜边
假定直角三角形的斜边是固定长度的,输入三角形的最大可能面积,输出斜边的长度。比如最大面积为25的直角三角形,斜边的长度是10。不考负数,0或者其他特殊情况。考虑溢出或者超出数据范围的情况。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 21
输出: 9
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:25
'''
s = int(input())
l = (4*s)**0.5
print(int(l))
15、小码哥的生日
小码哥过生日,妈妈给她买了一个很大的蛋糕,小码哥开始给朋友们分蛋糕,如果切n刀,最多可以分给多少小朋友呢?每个朋友一块蛋糕。不考负数,0或者其他特殊情况。n从键盘输入。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 4
输出:11
答案:
'''
@Author :S1Lu
@Date :2022/10/22 16:23
'''
n = int(input())
c = n*(n+1)/2+1
print(int(c))
16、完全平方数
输入一个正整数n,检查它是否为完全平方数。不考虑0,负数或者其他特殊情况。
格式:
输入格式:输入为整型
输出格式:输出为YES或者NO
样例一:
输入: 35
输出: NO
答案:
'''
@Author :S1Lu
@Date :2022/10/23 07:30
'''
n = int(input())
c = int(n**0.5)
if c**2 == n:
print("YES")
else:
print("NO")
17、圆锥的表面积
请编写一个简单程序,输入半径和高度,计算输出圆锥的表面积。(PI是3.1415926)
格式:
输入格式: double型,空格分隔
输出格式:输出圆锥的表面积,保留2位小数
样例一:
输入: 8 12
输出: Surface area=563.53
答案:
'''
@Author :S1Lu
@Date :2022/10/23 07:31
'''
import math
PI = 3.1415926
r,h=map(float,input().split())
s=PI*r*(r+(r**2+h**2)**0.5)
print("Surface area={:.2f}".format(s))
18、平方根和对数值
请编写一个简单程序,计算求给定数的平方根、2个对数值(In,Ig) 。
格式:
输入格式:输入实型
输出格式:输出平方根、对数值,空格分隔 ,保留两位小数
样例一:
输入: 5
输出: 2.24 1.61 0.70
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:48
'''
import math
n=int(input())
a=float(n**0.5)
b=float(math.log(n,math.e))
c=float(math.log(n,10))
print("{:.2f} {:.2f} {:.2f}".format(a,b,c))
19、分期付款
请编写一个简单程序,使用以下公式计算每月分期
付款:
EMI =p * (1+r)“/ ((1+r)”-1)
其中:
p=本金
r=每月利率
n=分期付款多少个月
如果年利率为R%,则使用以下公式计算月利率:
Rate ® = R/(12*100)
格式:
输入格式: 输入本金、年利率、多少个月,double型,空格分隔
输出格式: 输出double型,保留1位小数
样例一:
输入格式: 1000000 7 120
输出格式: 11610.8
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:53
'''
p , R , n = map(float,input().split())
# EMI = p*r*(1+r)"/((1+r)”- 1)
r = R/(12*100)
emi = p*r*(1+r)**n/((1+r)**n- 1)
print("%.1f"%emi)
20、x+y的和
给定一个正整数n,求满足floor (n/x) =y的x和y的和。不考虑负数,0或者其他特殊情况。比如输入5,则(x, y)的组合可以有:(1, 5), (2, 2), (3, 1)(4,1),(5,1), 那么,1+5+2+2+3+1+4+1+5+1=6+4+4+5+6=25.
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 5
输出: 25
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:55
'''
from math import floor
n = int(input())
sum = 0
for x in range(1,n+1):
y = floor(n / x)
sum += x + y
print(sum)
21、计算表达式的值
请编写一个简单程序,计算45除以2再加上43.41592,然后减去36除以7的商,输出运算结果。
格式:
输入格式:无
输出格式:输出实型
样例一:
输入:无
输出: 60.773063
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:49
'''
print("%.6f"%(45/2+43.41592-36/7))
22、合并
输入两个两位数的正整数a、b,编写程序将a、b合并形成一个整数放在c中, 合并的方式是:将a数的十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的十位和千位上,输出c的结果。
格式:
输入格式:输入整型,空格分隔。
输出格式:输出整型
样例一:
输入: 12 34
输出: 4132
备注:
如果用字符串处理,需要特判一下千位可能为0的情况
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:52
'''
a,b=map(int,input().split())
t1=a//10
t2=a%10
t3=b//10
t4=b%10
print(t4*1000+t1*100+t3*10+t2)
23、圆锥体的体积
请编写一个简单程序,输入圆锥体的半径和高,输出圆锥体的体积。不考虑非法输入。PI为3.1415926
格式:
输入格式:输入实型,空格分隔。
输出格式:输出实型
样例一:
输入:3 5
输出:47.123889
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:55
'''
n,m=map(float,input().split())
PI=3.1415926
s1 = PI * n ** 2
v = s1 * m * 1 / 3
print("%.6f"%v)
24、圆锥体表面积
请编写一个简单程序,输入圆锥体的半径和高,输出圆锥体表面积。不考虑非法输入。(PI =3.1415926)
格式:
输入格式:输入实型,空格分隔。
输出格式:输出实型
样例一:
输入:3 5
输出: 83.229759
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:57
'''
import math
n,m=map(float,input().split())
PI=3.1415926
s1 = PI * n ** 2
s2 = math.sqrt(n ** 2 + m ** 2) * n * PI
s = s1 + s2
print("%.6f"%s)
25、立方体的体积
输入立站体边长,输出立方体的体积。不考虑非法输入。
格式:
输入格式:输入实型
输出格式:输出实型
样例一:
输入: 3
输出: 27.000000
答案:
'''
@Author :S1Lu
@Date :2022/10/23 08:59
'''
import math
n=float(input())
v = n**3
print("%.6f"%v)
26、立方体的表面积
输入立方体边长,输出立方体的表面积。不考虑非法输入。
格式:
输入格式:输入实型
输出格式:输出实型
样例一:
输入: 3
输出: 54.000000
答案:
'''
@Author :S1Lu
@Date :2022/10/23 09:03
'''
n=float(input())
s = 6*n**2
print("%.6f"%s)
27、长方体的表面积
输入长方体边长宽高,输出长方体的表面积。不考虑非法输入。
格式:
输入格式:输入实型,空格分隔。
输出格式:输出实型,保留6位小数
样例一:
输入:3 2 4
输出:52.000000
答案:
'''
@Author :S1Lu
@Date :2022/10/23 09:05
'''
a,b,h=map(float,input().split())
s=(a*b+a*h+b*h)*2
print("%.6f"%s)
28、公里换转为米
请编写一个简单程序,实现将公里(km)转换为米(m)的转换。
格式:
输入格式:输入实型
输出格式:输出实型,保留2位小数
样例一:
输入: 6.427
输出: 6.43公里=6427.00米
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:24
'''
n = eval(input())
print('{:.2f}公里={:.2f}米'.format(n,n*100))
29、温度对照
输出华氏温度F (- 50<=F<200)和摄氏温度C对照表,计算公式为C=9(F-32)/5.不考虑非法输入等特殊情况。
格式:
输入格式:输入华氏温度F为整型
输出格式:输出摄氏温度C为实型
样例一:
输入: -50
输出: - 147.600000
答案:
'''
@Author :S1Lu
@Date :2022/10/23 09:08
'''
f = float(input())
c = 9*(f-32)/5
print("%.6f"%c)
30、x-y的和
给定一个正整数n,求满足floor (n/x) =y的x和y的差之和。 x, y不考虑负数,0或者其他特殊情况。比如输入5,则(x, y)的组合可以有: (1, 5),(2,2),(3, 1),(4, 1),(5,1),那么,1-5+2-2 +3-1 +4-1 +5-1 =-4+0+2+3+4=5。
格式:
输入格式:输入为整型
输出格式:输出为整型
样例一:
输入: 5
输出: 5
答案:
'''
@Author :S1Lu
@Date :2022/10/23 09:33
'''
from math import floor
n = int(input())
sum = 0
for x in range(1,n+1):
y = floor(n / x)
sum += x - y
print(sum)
31、三维空间两点
输入三维空间两点坐标(x,y,z),计算两点之间的距离并输出。
格式:
输入格式:输入实型坐标(x,y,z) ,空格分隔。每行以一个点。
输出格式:输出实型,保留2位小数。
样例一:
输入:-20 20 0
20 -10 0
输出: 50. 00
答案:
'''
@Author :S1Lu
@Date :2022/10/23 09:35
'''
x,y,z = map(int,input().split())
a,b,c = map(int,input().split())
s = ((x-a)**2+(y-b)**2+(z-c)**2)**0.5
print("%.2f"%s)
32、整理玩具
宝宝在整理自己的N个玩具(N<=10) ,有的抽屉放2个玩具,有的放1个。统计玩具可以多少种方式整理好。注:宝宝分不清抽屉的顺序,所以{1 2 1},{2 1 1},{1 1 2},这样的放置方式被宝宝认为是相同的。
格式:
输入格式:输入正整数N
输出格式:输出整型
样例一:
输入: 4
输出: 3
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:24
'''
n = int(input())
print(int(n/2)+1)
33、K次方根
输入正整数N和K。找出整数M,使得M的K次方根的整数部分是N。输出这样的M有多少个。比如N= 3,K= 2,则9,10, 11,12, 13, 14, 15的平方根都是3。不考虑不合理的输入等特殊情况。
格式:
输入格式:输入整型,空格分隔
输出格式:输出整型
样例一:
输入:2 3
输出: 19
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:26
'''
n,k = map(int,input().split())
sum = 0
m = n**k
while(int(m**(1/k))==n):
m+=1
sum+=1
print(sum)
34、分数运算
输入两个分数,对他们进行加减乘除运算,输出结果。不考虑分母为0等特殊情况。
格式:
输入格式:输入整型,如样例所示。
输出格式:输出计算结果实型,如样例所示。
样例一:
输入: 1/2 1/4
输出: 1/2 + 1/4=0.750000
1/2 - 1/4=0.250000
1/2 * 1/4=0.125000
1/2 / 1/4=2.000000
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:24
'''
n,k = input().split()
a,b = n.split('/')
c,d = k.split('/')
e = float(int(a)/int(b))
f = float(int(c)/int(d))
print("{} + {}={:.6f}".format(n,k,e+f))
print("{} - {}={:.6f}".format(n,k,e-f))
print("{} * {}={:.6f}".format(n,k,e*f))
print("{} / {}={:.6f}".format(n,k,e/f))
35、非常大的N
编写程1序求10.5-20.5+30.5-40.5+…+N^0.5
格式:
输入格式:输入为正整数
输出格式:输出为浮点型(保留六位小数)
样例一:
输入: 10001
输出: 50.383855
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:24
'''
n = int(input())
s = 0
for i in range(1,n+1):
if i%2==0:
s -= i**0.5
else:
s += i**0.5
print("%.6f"%s)
36、向下取整
输入正整数N,求N的立方根。向下取整后输出,输出最小列宽为3列。
格式:
输入格式:无
输出格式:输出字符、十进制整数,空格分隔
样例一:
输入: 3
输出: 1
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:24
'''
n,m = map(int,input().split())
print("%3d"%int((n+m)%12))
37、时刻求和
输入正整数N和M,空格分隔。把他们看作在12小时制的时刻(小时) 求和并输出,输出最小列宽为3列。
格式:
输入格式:输入正整数N和M,空格分隔。
输出格式:输出整型
样例一:
输入:5 7
输出: 0
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:24
'''
n,m = map(int,input().split())
print("%3d"%int((n+m)%12))
38、平方根X
输入正整数N,求N的平方根X。如果N不是一个完美的平方,输出floor(X)。考虑不合理的输入等特殊情况。
格式:
输入格式:输入正整数N
输出格式:输出整型
样例一:
输入: 5
输出: 2
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:55
'''
n = int(input())
print(int(n**0.5))
39、卡罗尔序列
卡锣尔数是其值满足4n-2 (n+1) -1的整数(n为正整数)。咔罗尔数组成的序列叫卡罗尔序列: -1,1,3, 5, 7…输入正整数N,编写函数,输出第N个卡罗尔数。
格式:
输入格式:输入正整数N(<99999)
输出格式:输出整型
样例一:
输入: 4
输出: 5
答案:
'''
@Author :S1Lu
@Date :2022/10/26 10:57
'''
n = int(input())
print(4*n-2*(n+1)-1)