>웹 프론트엔드 >JS 튜토리얼 >JavaScript 문자열은 단일 문자로 분할되고 합계가 10을 초과하지 않는 경우 최종 값을 찾습니다.

JavaScript 문자열은 단일 문자로 분할되고 합계가 10을 초과하지 않는 경우 최종 값을 찾습니다.

PHP中文网
PHP中文网원래의
2016-05-16 19:01:021812검색

먼저 1987 12 25와 같이 생일을 나열하세요.
그런 다음 숫자 1 9 8 7 1 2 2 5=35를 추가하세요.
결과 숫자를 나누고 3+5=8을 더하세요.
결과 숫자 8이 10을 초과하면 분할하여
신장 1개
눈 2개
재능 3개
양성 유전자 4개
우정 5개
자선의 마음 6개
를 추가합니다. 7 가족애
8 건강과 수명
9 사랑
10 축하합니다. 전당포에 가장 어울리는 순수한 영혼을 가지셨습니다
클로프트의 예

<script type="text/javascript"> 
var str = "19871229"; 
var count = 0; 
for(var i = 0 ; i < str.length ; i++) 
count += parseInt(str.charAt(i)); 
alert (getResult(count)); 
function getResult(x) { 
var a = Math.floor(x/10); 
var b = x%10; 
if(a+b > 10) 
return getResult(a+b); 
else 
return (a+b); 
} 
</script>

잘생긴 개구리의 예

<script> 
var birthday = "1982512"; 
BirthSum(birthday); 
function BirthSum(str){ 
var bsum = 0; 
var arr = str.toString().split(&#39;&#39;); 
for(var i = 0; i<arr.length; i++){ 
bsum += parseInt(arr[i]); 
} 
if(bsum > 10){ 
BirthSum(bsum); 
}else{ 
alert(bsum); 
} 
} 
</script>

아리엑스의 예시

<script type="text/javascript"> 
var num="11111232"; 
var sum=0; 
while(true){ 
for(var i=0;i<num.length;i++){ 
sum+=parseInt(num.charAt(i)); 
} 
if(sum<11) 
break; 
else{ 
num=sum+""; 
sum=0; 
} 
} 
alert(sum); 
</script>
나의 예시
<script language=vbs> 
function s(btd) 
for i=1 to len(btd) 
n=cint(mid(btd,i,1)) 
s=s+n 
if s>10 then s=s(s) 
next 
end function 
alert(s("1982718")) 
</script>
팬빈의 예시
<script type="text/javascript"> 
function bird($number) { 
var $number = &#39;&#39; + $number; 
var $length = $number.length; 
var $result = 0; 
for(var $i = 0; $i < $length; $i++) { 
$result += parseInt($number.charAt($i)); 
} 
if($result >=10) { 
bird($result); 
} else { 
alert($result); 
} 
} 
bird("18400221"); 
</script>
닭털 예시
<script> 
alert((function c(n){var a = new String(n).split(""), l = a.length, s = 0;
for(var i=0;i<l;i++) s+=parseInt(a[i]);return (s>9?c(s):s);})("1980712")); 
</script>
yaba 해석 버전
<script> 
alert((function 函数(参数){var 对象= new String(参数).split(""), l = 对象.length, 结果 = 0;
for(var 数字=0;数字<l;数字++) 结果+=parseInt(对象[数字]);return (结果>1?函数(结果):结果);})("1980712")); 
</script>
남은 예시(1982422317 시도 실패)
<script language="javascript"> alert(eval(String(eval("1982422".split(&#39;&#39;).join(&#39;+&#39;))).split(&#39;&#39;).join(&#39;+&#39;))); 
</script>
77me 예시
<script type="text/javascript" language="javascript"> 
function s(str){ 
var Num=0; 
for(var i=0;i<str.length;i++){ 
Num+=parseInt(str.charAt(i)); 
} 
return Num<=10?Num.toString():s(Num.toString()); 
} 
alert(s("19900508")) 
</script>
Flash AS 버전
function s(str:String) { 
var j:Number = str.length; 
for (var i:Number = 0; j>1; i++) { 
var Num:Number = Number(str.charAt(0))+Number(str.charAt(1)); 
str = Num+str.slice(2, str.length); 
j = str.length; 
} 
return str; 
} 
trace(s("19850401"));

wjeasy의 bat 버전(.bat 파일로 저장)

@echo off 
color 0A 
echo 请输入数字: 
set /p age= 
echo --------------- 
title %age% 
set sum=0 
set get=0 
set call_num=0 
::计算字符串长度 
:begin 
set /a call_num+=1 
echo 第%call_num%次循环 
set str=%age% 
set num=0 
:next1 
if not "%str%"=="" ( 
set /a num+=1 
set "str=%str:~1%" 
goto next1 
) 
echo 当前数字%age% 
@echo. 
set i=%num% 
:loop 
set /a i-=1 
set "get=%age:~-1%" 
set "age=%age:~0,-1%" 
set /a sum+=get 
if not "%age%"=="" ( 
goto loop 
) 
if %sum% gtr 10 ( 
set age=%sum% 
set sum=0 
goto begin 
) 
echo 最终结果:%sum% 
pause

위는 단일 문자로 분할된 자바스크립트 문자열의 합계가 10을 넘지 않으며 최종 값을 찾습니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.