回 帖 发 新 帖 刷新版面

主题:求助!

求PASCAL答案,编了很多次,就是通不过,麻烦请大家帮我解决一下
原题:
Background

The digital root of a positive integer is found by summing the digits of the integer. If the resulting value is a single digit then that digit is the digital root. If the resulting value contains two or more digits, those digits are summed and the process is repeated. This is continued as long as necessary to obtain a single digit.

For example, consider the positive integer 24. Adding the 2 and the 4 yields a value of 6. Since 6 is a single digit, 6 is the digital root of 24. Now consider the positive integer 39. Adding the 3 and the 9 yields 12. Since 12 is not a single digit, the process must be repeated. Adding the 1 and the 2 yeilds 3, a single digit and also the digital root of 39.


Input

The input file will contain a list of positive integers, one per line. The end of the input will be indicated by an integer value of zero.


Output

For each integer in the input, output its digital root on a separate line of the output.


Example

Input



24
39
0
Output

6
3

回复列表 (共5个回复)

沙发

帮帮忙用中文。

板凳

你是不是读文件的时候把文件一口气都读近来造成空间超了?

3 楼

把你的代码发一下吧

4 楼

看来英语好点还是有好处滴!!!

题意明白了,觉得思路不太难(声明:我不会PASCAL),不知LZ的程序为何出错!

请贴出代码!!!

5 楼

是不是就是把一个整数的数码加起来。我觉得先把它转成字符串,然后把每位存进数组,再用递归就行了。

我来回复

您尚未登录,请登录后再回复。点此登录或注册