练习编程题-第三期

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)
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

S1Lu

多谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值