Это очень просто, вы отображаете число несколько раз, потому что вы помещаете cout << "Invalid value input " ;
в цикл.Если вы поместите это перед циклом, оно будет отображаться только один раз.
cout << " Enter a non negative number greater than 0: ";
cin >> c0;
if (c0 <= 0)
{
cout << "Invalid value input " ;
}
while (c0 != 1)
{
...
}
Следующее, о чем нужно подумать, это то, что вы хотите сделать, когда пользователь вводит недопустимое число.Вы хотите прервать программу?Хотите снова спросить пользователя?В настоящий момент программа будет продолжаться, как будто ничего не произошло.