问题描述
小丽在编程课上学会了拆位运算,她已经可以拆出一个两位整数的十位和个位了,她想知道这个整数的十位 / 个位的结果是多少,请编程帮她实现?(请注意,计算结果要保留 1 位小数)
输入
输入一个两位的正整数 n,且 n 的个位一定不为 0。
输出
输出这个两位正整数十位除以个位的计算结果,结果保留 1 位小数。
样例
输入
72
输出
3.5
代码
#include <iostream>
int main() {
int n;
std::cin >> n;
double result = static_cast<double>(n / 10) / (n % 10); // 将十位和个位进行拆分,并计算十位除以个位的结果
std::cout.precision(1);
std::cout << std::fixed << result << std::endl;
return 0;
}
这里我们先将输入的两位整数拆分为十位和个位,然后进行相除操作。为了得到带有一位小数的结果,我们使用了 std::cout.precision(1)
来设置输出精度为1位小数,并使用 std::cout << std::fixed
来固定小数点的位置。最后输出结果。注意需要将十位和个位转换为 double
类型进行计算。
python
n = int(input("请输入一个两位的正整数: "))
tens_digit = n // 10
ones_digit = n % 10
result = round(tens_digit / ones_digit, 1)
print("计算结果为:", result)
这段代码首先会让用户输入一个两位的正整数,然后通过拆位运算,将该整数的十位和个位分别存储在tens_digit
和ones_digit
变量中。接下来,我们计算十位除以个位的结果,并使用round
函数将结果保留一位小数。最后,将结果打印出来。
你可以运行这段代码,并输入示例中的 72
进行测试,看看是否得到了正确的输出 3.5
。如果还有其他问题,请随时向我提问!
JAVA
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int ten = n / 10; // 获取十位
int one = n % 10; // 获取个位
double result = (double) ten / one; // 十位除以个位,需要将其中一个操作数转为 double 类型
System.out.printf("%.1f", result); // 输出结果,保留 1 位小数
}
}