"Coffee can have a bad effect on the stomach."
Translation:Il caffè può avere un brutto effetto sullo stomaco.
Yes, there is a reason.
The difference is that an adjective in front of a noun is descriptive and an adjective after the noun is distinguishing.
Some time ago I made two lists about adjectives' positions, if you want, you can have a look
1) positions of adjectives:
2) list of adjectives that change their meaning depending on there position (before or after the noun):
yes, exactly! There are some words that are used often this way: bello, buono, breve, brutto, cattivo, corto, giovane, lungo, piccolo ecc.
In Italian these adjectives are normally placed before the noun but sometimes after it to emphasize. Curious is that's nearly the same in French: the adjectives "BANGS" (beauty, age, number, good/bad, and size) are always placed in front of the noun; The others, instead, mostly after the noun.