In Pokémon SoulSilver, you can find Heart Scales in Route 32 and Vermilion City with the Dowsing Machine and you'll also find them in Violet City, Cianwood City, Dark Cave, Route 19, Vermilion City, Rock Tunnel and the Victory Road.
You can also find it in the Beautiful Beach, Warm Beach, Stormy Beach and Quiet Cave Routes with the Pokéwalker device. For the Beautiful Beach, you need at least 2,000 steps before you're able to find 1 in that route, for the Warm Beach, you need at least 3,000 steps, for the Stormy Beach you need at least 800 steps and for the Quiet Cave, you need at least 2,500 steps.
On heart gold, it can be found by smashing the breakable rock beside the pokemon school. I think you can also find it in this location on soul silver.
you can't get any in soul silver, in heart gold you can
There's a man in Fallabur town who will re-teach a Pokemon a move for a heart scale. But you must find a heart scale, they are in several places on the map but are mostly in or near water.
you have to use hm rock smash on rocks to find them.
Heart Scales can be purchased in the Pokeathlon shop for 1000P
you cant
On heart gold, it can be found by smashing the breakable rock beside the pokemon school. I think you can also find it in this location on soul silver.
this is also for heart gold
You can buy it in the Athlete Shop, or find it in rubble when you use Rock Smash
you have to trade one from heart gold or sapphire
You can't find Teddiursa in Pokemon Heart Gold but in Pokemon Soulsilver, you can catch at Route 45
Sorry you have to trade or get heart gold in the hidden tower
you can't get any in soul silver, in heart gold you can
On wild Pokemon and serval locations.
You can't find Togekiss in Pokemon Black or White. You have to transfer from Pokemon Soulsilver, Heart Gold, Pearl or Diamond.
There's a man in Fallabur town who will re-teach a Pokemon a move for a heart scale. But you must find a heart scale, they are in several places on the map but are mostly in or near water.
you have to use hm rock smash on rocks to find them.