So I just did the Sq. Root of 15 on a calculator and I get ~3.8. Then "(int)" forces it to the integer 3. Isn't this the optimal way to test for primes? Aside from using the isPrime function? I have yet to use this function because I saw this method and wanted to attempt this first.
Good point about the order of my checks. Was caught on this prime check and didn't see that.
As for the limiting for loop (not sure the technical name for this), I just brought it down to 100 to minimize the output while test running it.
As for being divisible by 3 AND 8, I don't the wording of the challenge suggests that, saying
Are either: Prime, or Multiples of 3, or 8, but not both 3 and 8, less than 2500
.