From 8872b4b6bcf59526072c458cbc6f535dd7e23867 Mon Sep 17 00:00:00 2001 From: OGordoo Date: Thu, 12 Mar 2020 22:59:32 +0000 Subject: [PATCH] reachable_number subject --- subjects/reachable_number.en.md | 42 +++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 subjects/reachable_number.en.md diff --git a/subjects/reachable_number.en.md b/subjects/reachable_number.en.md new file mode 100644 index 000000000..e9d2dd196 --- /dev/null +++ b/subjects/reachable_number.en.md @@ -0,0 +1,42 @@ +## reachable_number + +### Instructions + +Let us define a function f(x) by the following: first we add 1 to x, and then while the last digit of the number equals 0, we shall be deleting 0. Let us call 'y' reachable if we can apply **f** to **x** (zero or more times), and get **y**. 102 is reachable from 10098: f(f(f(10098))) = f(f(10099)) = f(101) = f(102). Any number is reachable from itself. You are given a positive number **n**, count how many integers are reachable from **n**. + +### Expected function + +```go +func Reachable_number(n int) int { + +} +``` + +### Usage + +Here is a possible program to test your function : + +```go +package main + +import ( + "fmt" +) + +func main() { + fmt.Println(Reachable_number(1)) + fmt.Println(Reachable_number(10)) + fmt.Println(Reachable_number(1001)) +} +``` + +And its output : + +```console +student@ubuntu:~/[[ROOT]]/test$ go build +student@ubuntu:~/[[ROOT]]/test$ ./test +9 +19 +36 +student@ubuntu:~/[[ROOT]]/test$ +``` \ No newline at end of file