"de meilleures maisons ont des fenêtres" - de vs. des
Attempting to improve my French by doing the German tree (which is huuuge) from French I stumbled over aforementioned sentence.
Why is it "de meilleures" and not "des meilleures"? (And I thought I had figured out the de/des/le/les conundrum .... )
In this case, "des" gets shortened to "de" because an adjective proceeds the corresponding noun. https://forum.wordreference.com/threads/fr-de-des-adjectif-nom-au-pluriel.136043/
- Des disques ont été perdus. (no adjective)
- Des disques sales ont été perdus. (adjective after the noun)
- De nombreux disques ont été perdus. (adjective before the noun)
- De meilleures maisons ont des fenêtres. (adjective before the noun)
Indeed. I want to add that this is rather formal. We will not always apply that rule in spoken French, or we will simply rephrase to avoid using 'de + adjective + plural noun'.
For example, we may say: 'J'y suis allé de nombreuses fois', but we will more likely say: 'J'y suis allé très souvent', to avoid using 'de nombreuses fois', which sounds a tiny bit too literary.
Another example: instead of the slightly formal 'J'ai acheté de nouvelles chaussures', we will say: 'J'ai acheté des nouvelles chaussures.'
Thanks so much to both of you. It is amazing how much knowledge is in this community - and how many little rules there are!
"Des meilleures maisons ont des fenêtres" is also correct, but it changes the meaning of the sentence.
Like many others have stated, normally you would use "de" right before an adjective+noun, but when you use "des" instead of "de," the sentences means "Some of the better houses have window."
Therefore in this case:
De = Some
Des = Some of the
This rule also works with the other rules that shorten the des to de. If you didn't know, using negation around a verb also requires using de (but not when speaking about a general preference such as "je n'aime pas le pain").
Je ne veux pas de pain or je ne veux pas du pain (although here "je ne veux pas de pain" is much more common).
Hope this helps :)