# Smallest Greatest number- Solution for level2 coding challenge of June 2013 by Techgig Posted by in C# category on for Beginner level | Points: 250 | Views : 3450 In this article we will look into the solution of Smallest Greatest number- a Level 2 coding challenge by Techgig

## Introduction

Techgig is a global programming community and every month they conduct coding contest.This month they propose a challenge by the name Smallest Greatest number.It is a Level-2 challenge. In this article we will see the my solution for the same.

## The Problem Statement  ## Solution

```class Program
{
static void Main(string[] args)
{
int result = smallest_number(2345);
}

public static int smallest_number(int input1)
{
int n1, n2;
int d1 = MultiplyToOneDigit(input1, out n1),
d2 = SumToOneDigit(input1, out n2);

for (int i = input1 + 1; i < 1000000000; i++)
{
int value, steps;

value = MultiplyToOneDigit(i, out steps);
if (value != d1 || steps > n1) continue; // no good

value = SumToOneDigit(i, out steps);
if (value != d2 || steps > n2) continue; // no good

return i;
}
}

static int MultiplyToOneDigit(int value, out int steps)
{
steps = 0;
while (value > 10)
{
value = MultiplyDigits(value);
steps++;
}
return value;
}
static int SumToOneDigit(int value, out int steps)
{
steps = 0;
while (value > 10)
{
value = SumDigits(value);
steps++;
}
return value;
}
static int MultiplyDigits(int value)
{
int acc = 1;
while (value > 0)
{
acc *= value % 10;
value /= 10;
}
return acc;
}
static int SumDigits(int value)
{
int total = 0;
while (value > 0)
{
total += value % 10;
value /= 10;
}
}
}
```

First we are finding the Single digit after Multilication of the supplied number.Next we are finding the Single digit after Summation of the supplied number.

Then we are comparing that with other numbers and if there is a positive result, we are displaying that.

## Conclusion

I hope that this will be a good learning exercise for those whose are beginners in C#.Also participating in challenges helps us to hone our skills.Thanks for reading.

Disclaimer: This solution has been personally prepared by me and submitted for the knowledge sharing purpose. Comment using (Author doesn't get notification)