Your logic is overly complicated. You can do all in one loop. Also you need to learn to encapsulate logic into methods/functions/classes in order to reuse code and make it more readable.
for (int i = 0; i < Number.Length; i++)
{
while (true)
{
var number = ReadNumber();
if (IsValid(number))
{
Number[i] = number;
break;
}
}
}
int ReadNumber()
{
Console.WriteLine("Enter number 1. The number must be between 1-100");
return Int32.Parse(Console.ReadLine());
}
bool IsValid(int number)
{
if (number < 1)
{
Console.WriteLine("Please reenter number. The number must be between 1-100");
return false;
}
if (number > 100)
{
Console.WriteLine("Please reenter number. The number must be between 1-100");
return false;
}
return true;
}
I didn't run this through compiler so there may be typos. I also didn't include uniqueness check on purpose. Try to figure that on your own as this is another exercise in encapsulation.