You on Diamond, Pearl, Platinum, HeartGold, and SoulSilver you have to find most of them. The others you can get from scratch cards in the Battle Frontier. Also for Diamond, Pearl, and Platinum there is a berry shop in Floaroma Town. Also on the route left of HeartHome City in Diamond, Pearl, and Platinum there is a Berry Master inside a House who will give you a random berry once a day. On Black and White I am sorry but I don't know to really get berries.