P151PROI spoj PTIT – Chữ số cuối cùng
Nguồn đề bài: http://www.spoj.com/PTIT/problems/P151PROI/ 1. Đề bài P151PROI spoj PTIT Thấy Tí rất thích thú với những con số, cô giáo đã giao cho Tí một bài tập về rút gọn các con số. Phép rút gọn được thực hiện như sau: từ một số ban đầu, số mới được tạo thành bằng cách cộng ...
Nguồn đề bài: http://www.spoj.com/PTIT/problems/P151PROI/
1. Đề bài P151PROI spoj PTIT
Thấy Tí rất thích thú với những con số, cô giáo đã giao cho Tí một bài tập về rút gọn các con số. Phép rút gọn được thực hiện như sau: từ một số ban đầu, số mới được tạo thành bằng cách cộng các chữ số của số ban đầu với nhau. Sau đó Tí phải thực hiện tiếp tục với con số vừa mới thu được.
Quá trình rút gọn kết thúc khi số thu được chỉ có duy nhất 1 chữ số.
Các bạn hãy cùng Tí đi tìm chữ số cuối cùng của phép rút gọn!
Input
Dòng đầu tiên gồm số lượng test T (T <= 100).
T dòng tiếp theo, mỗi dòng gồm một số nguyên dương (<= 10^9).
Output
Hãy in ra chữ số cuối cùng sau khi thực hiện phép rút gọn.
Example
Input:
3
1009
167
102
Output:
1
5
3
Giải thích: 167 = 1+6+7 = 14 = 1+4 = 5
2. Code tham khảo P151PROI spoj PTIT
Bài này khá đơn giản, đọc code để tham khảo thêm:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | const fi='; type data=longint; var f:text; test,A,tmp:longint; s:string; procedure xuli; var i,j:data; begin while length(s)<>1 do begin tmp:=0; for i:=1 to length(s) do tmp:=tmp+ord(s[i])-48; str(tmp,s); end; writeln(s); end; procedure docfile; var i,j:data; begin assign(f,fi); reset(f); readln(f,test); for i:=1 to test do begin readln(f,s); xuli; end; close(f); end; begin docfile; end. |