更多信息:
输入/输出详情:
时间限制4000 js (js)
输入整数n
正的两位数整数。
约束:10≤n≤99。
输出整数
输入号码的第一位和第二位的总和。
以下是我的尝试
function addTwoDigits(n) {
var num = n;
var n = num.toString();
var sum = n[0] + n[1];
return sum;
}
var userInput= prompt('enter a number');
if (userInput>= 10 && userInput<=99) {
return addTwoDigits(userInput);
}
console.log(addTwoDigits(n));发布于 2021-07-01 02:56:15
function addTwoDigits (input){
var numString = input.toString()
var numArray = numString.split('')
var digitOne = []
var digitTwo = []
for (var i = 0; i < numArray.length; i++){
digitOne.push(numArray[0])
digitTwo.push(numArray[1])
}
for (var i = 0; i < digitOne.length; i++){
digitOne.pop()
}
for (var i = 0; i < digitTwo.length; i++){
digitTwo.pop()
}
var numOne = parseInt(digitOne)
var numTwo = parseInt(digitTwo)
var sum = numOne + numTwo
return sum;
}发布于 2017-01-13 05:02:30
n[0]和n[1]是字符串。+只是两个数字的加法,但在任何其他情况下都是串联的,所以"2" + "9"回到了"29",而不是您希望的11。使用parseInt(n[0]) (与n[1]类似)将它们转换为您可以使用的算术工具。
或者,您可以进行纯粹的数字处理,而不需要碰触字符串:
var tens = Math.floor(n / 10);
var ones = n % 10;
var sum = tens + ones;发布于 2021-11-09 10:41:51
这是我在Java中的答案。
int addTwoDigits(int n) {
String number = String.valueOf(n);
int[] nums = new int [number.length()];
for(int i = 0; i < number.length(); i++){
nums[i] = Character.getNumericValue(number.charAt(i));
}
return nums[0] + nums[1];
}https://stackoverflow.com/questions/41627634
复制相似问题