This is what I've done so far:

Suppose it is rational, then log3 = a/b where a and b are in lowest terms. Hence 10^(a/b) = 3 which implies 10^a = 3^b which implies 2^a * 5^a = 3^b. This says that 2^a|3^b. Since 2|2^a it follows that 2|3^b which implies 2|3 because 2 is prime.

So what do I do from here? Can I just say I have a contradiction and thus log3 is irrational?

EDIT: Here's another one, thanks!

Prove that if r is a rational number such that r>1 and r /=/ 10^n for any positive integer n, then common log(r) is irrational.

Suppose logr is rational, then logr = a/b (a,b in lowest terms). This implies 10^(a/b) = r which implies that 10^a = r^b which implies 5^a * 2^a = r^b. This says that 2|r and 5|r, thus the only prime factors of r are 2 and 5. Hence 2^x * 5^y = r which implies 2^xb * 2^yb = r^b. Thus xb=a and yb=a which says x=y. Thus 2^x * 5^x = r, which says 10^x = r, a contradiction. Thus logr is irrational.

Is this right?