Wonder about the arduino output pin power

hello mate i wonder if im using usb cable to power my arduino (5v) then my output pin is lesser than 5v isnt that correct expecially when im using PWM so its no 5v sharp aye..so to get 5v sharp output i must use external power jack battery is that true??

USB will supply 5volts to the Arduino. External voltage to the jack is turned into 5volts. So the o/p on a pin will be very near 0 to 5 volt transitions. If you are thinking of the current on the other hand, the Arduino o/ps are safe to support 20ma. USB from a PC usually is a maximum of 500ma. If you use external voltage try to keep it low, 7volts is best as the on board regulator may get hot.

For the pin current limitations see the ArduinoInfo.Info WIKI HERE:

And for how to power an Arduino, see: THIS: