The difference between a flower and a weed is truly in the eye of the gardener. A weed is defined as a wild plant that is growing where it is not wanted and stealing nutrients from the desired flowers in the garden. A flower takes time, requires specific growing and watering conditions, where a weed can grow anywhere, under most conditions.
Weeds and flowers are both composed of the same parts. They both have a stem, scent, defense mechanisms such as spiky leaves, and they both can have petals.
If the desired flowers planted in a garden are being overpowered by unwanted plants or flowers, these can be defined as a weed. Flowers are usually planted specifically for their beauty in a garden.
Weeds tend to reduce the amount of nutrients that need to go to the desired flowers or plants of the garden. This includes water, sunlight, space and nutrients found in the soil.
Weeds can present a similar look to a flower, such as the dandelion. The dandelion presents as a bright yellow flower. Dandelions are considered weeds by most because the seeds are spread easily which makes them hard to eliminate. If the gardener does in fact enjoy the dandelion, it is not a weed to them, but in fact a yellow flower.