gpt4 book ai didi

c# - 仅使用整数运算查找数字的第一位

转载 作者:太空狗 更新时间:2023-10-29 19:56:47 26 4
gpt4 key购买 nike

老师给我的问题怎么解决我都看不懂。

Given a number N (0 <= N <= 100), find its first digit.

例如:

input: 100
result: 1

input: 46
result: 4

input: 3
result: 3

起初看起来很容易,但是(正如老师所说)它应该使用ONLY 整数数据类型来完成(换句话说,使用+ -*/% 运算符)。甚至可以这样做吗?

我无法理解如何在不使用 log10、条件、“while”循环或字符串转换的情况下从可变长度 数字中提取第一个数字。

最佳答案

没有任何条件:

int H= N / 100;       // Hundreds digit
int T= (N / 10) % 10; // Tens digit
int U= N % 10; // Units digit

int h= H; // Hundreds flag
int t= (T + 9) / 10 * (1 - h); // Tens flag
int u= (1 - t) * (1 - h); // Units flag

int Answer= u * U + t * T + h * H; // Combination

关于c# - 仅使用整数运算查找数字的第一位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52499405/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com