Snorlax is found blocking diglett's cave in vermilion city.
fly or walk to Vermillion city then go east through vermillion city keep walking and there should be a sleeping snorlax blocking your path and a cave entrance.
Snorlax is located in Kanto, blocking the entrance to Diglett's Cave outside of Vermilion City.
you have to wake up the snorlax blocking the entrance to diglett's cave by putting on the lullaby on your pokegear,then get past diglett's cave to be found in pewter city.
It will disappear, giving you access to that cave. However, I'm not so sure if Snorlax returns after beating the Elite four.
its the huge sleeping thing blocking diglett cave in kanto -- IMPROVED ANSWER BY MOLOKAICREEPER: Snorlax can only be found after you beat the Elite 4 and you make it to Kanto. This time he is blocking the Diglett cave. Make sure to bring lots of Pokeballs to catch it! This is the only chance you get to have a Snorlax in this game, if you faint it, you're out of luck unless you find a Pokemon Yellow, Red or Blue to trade with.
Go to diglett cave.
Diglett's cave is subsequently blocked by a sleepy snorlax. Wake up the Snorlax by tuning to the PokeFlute on your PokeGear radio. You can get the PokeFlute channel by getting the Expn. Card from Lavender Town.
in front of diglett cave
You can get to the Viridian Forest in HeartGold by going through Diglett's Cave, an entrance to Diglett's Cave is in Vermilion City.
Viridian City is in the Kanto region. You'll be able to get there by going through Diglett's cave after waking the sleeping Snorlax.
diglett cave