string noOfAccountsString = Console.ReadLine();
int noOfAccounts = int.Parse(noOfAccountsString);
Would you say this is bad practice? When you could just store one of these variables and perform the relevant operation on it when necessary?
So instead of the above would this be better?
int noOfAccounts = int.Parse(Console.ReadLine());
Not necessarily bad practice, just a matter of preference. The bad practice is assuming that the user will enter a numerical value.