Теорія:

Подвоєння букв на позначення приголосних звуків відбувається, якщо збігаються однакові приголосні:
  • на межі  префікса й кореня: ввіч, ввічливий, віддячити, відділ, заввишки, ззаду, беззубий, оббити, роззутися, роззява;

  • на межі першої та другої частини  складноскорочених слів: військкомат  (військовий комісаріат), міськком  (міський комітет), юннат  (юний натураліст);
     

  • на межі кореня або основи і суфіксів прикметників чи іменників: закон — законний, балкон — балконний; баштанник, годинник, письменник, священник; віконниця, Вінниця.
-НН- зберігаються і в похідних словах (в іменниках перед суфіксом -ість і в прислівниках): туман — туманний — туманність — туманно; день — буденність — буденно.
Інколи в складних словах можуть подвоюватися й букви на позначення голосних звуків: тихоокеанський, чорноокий, телеефір, кінооператор, гідроочисний тощо.
Зверни увагу!
Немає подвоєння букв у таких словах, як: отой, отут, отак, отам, отепер, отоді, оцей  тощо.
Подвоєння букв  відбувається, якщо збігається буква с основи дієслова минулого часу і постфікса -ся: вознісся, напасся, розрісся, трясся.
  
Подвоєння букв на позначення приголосних також відбувається:
  • у наголошених суфіксах -анн(ий), -янн(ий), -енн(ий) прикметників, що вказують на більшу, ніж звичайна, міру якості або на можливість чи неможливість дії: невблага́нний, недоторка́нний, нездола́нний, незрівня́нний,  несказа́нний; височе́нний, здорове́нний, нездійсне́нний, незліче́нний, непримире́нний, нескінче́нний, силе́нний, страше́нний, числе́нний;

  • у суфіксах -енн(ий), -янн(ий) прикметників старослов'янського походження: благослове́нний, блаже́нний, мерзе́нний, огне́нний, окая́нний, свяще́нний, спасе́нний, боже́ственний.
Немає подвоєння н у дієприкметниках: сказаний, відрахований, зроблений, розписаний, отриманий;

у прикметниках, утворених додаванням до основи іменника суфіксів -н-, -ин-, -ян-: орел — орлиний, дерево — дерев'яний, вода — водний;
 

а також у прикметниках віддієприкметникового походження: довгожда́ний, жада́ний, навіже́ний, скаже́ний, шале́ний.
Зверни увагу!
Треба розрізняти такі слова, як здійсне́нний  (який може здійснюватисяприкметник) і здійснений  (який здійснивсядієприкметник), нездола́нний  (непереможний)  і нездо́ланий  (якого не подолали), незліче́нний  (представлений у дуже великій кількості) і незлі́чений  (непорахований) тощо. 
Подвоєння приголосних відбувається у словах бовван, Ганна, лляний, овва, ссати, а також у похідних від них словах бовваніти, Ганнин, виссати, ссавці тощо.