Those two scenarios are irrelevant to each-other. I suppose when you are referring to "not bleeding during the whole thing" you are referring to tearing your hymen. Some women's hymens break long before they even have sex with other events, some can break doing even a simple task as bike riding. That seems to be the case with you if you did not bleed during sex. Second, spotting 3 weeks later could be two things. Sexual activity can change your period immensely. Possibly lessening the flow. And then the obvious reason, pregnancy. But i can't answer that question without more information, were you due to get your period? Do you have any other symptoms? Is your period normally irregular? Have there been any changes in stress, your diet, exercise, or anything else out of the ordinary? When you had sex, how far into your cycle were you? Was it one week before you next period, or three? If you could answer a few of those questions perhaps i could be of more help.
You are no longer a virgin and might be spotting as your period should be arriving. Are you lose to you menstruation? Also, to avoid unwanted pregnancies or STD's make sure you both are practicing safe sex. Good luck.
Some women never bleed when they first have sex, since many have their hymen break before sex ever occurs. You could be spotting, getting close to having your period. It could be an irritation. It could be an infection. There are a number of possibilities. I'd have to know more information...
I have no symptoms and I did change my exerise my period is usually irregular I had sex 3 weeks b4 next period
There is also the possibility that you are pregnant and that the spotting you are having is a 'light' period that many women have instead of having a full period while they are pregnant. Even using 'safe' products to prevent pregnancy are not foolproof. My best friend had her 4 children that way! The ONLY way to avoid becoming pregnant is to not have a sexual relationship, that's the only way. If you still are having 'light spotting' you might want to see your doctor for an exam.