You are printing "isnt magical"
or "is magical"
for every factor.
Your code should look like this:
string k = "isnt magical";
string j = "is magical";
int a, b;
Console.WriteLine("Vnesite svoje stevilo: ");
a = Convert.ToInt32(Console.ReadLine());
var allMagical = true;
for(b = 2; a > 1; b++) if(a % b == 0)
{
while(a % b == 0) a /= b;
if(b != 7 && b != 3) allMagical = false;
}
Console.WriteLine(allMagical ? j : k);