В англійській мові є всього чотири простих дієслівних форми (всі інші форми - складні, так як утворюються за допомогою допоміжних дієслів). Їх потрібно обов'язково знати, оскільки вони використовуються і для освіти всіх складних форм [6]. До них відносяться: форма - Інфінітив (Infinitive) форма - Минуле невизначений час (Past Indefinite) форма - Причастя минулого часу (Participle II) форма - Дієприкметник теперішнього часу (Participle I) і III форми називаються -ed формами, IV форма - -ing формою.
Правила побудови -ed форм.
Правило 1 (основне). Для правильних дієслів при побудові -ed форми до інфінітива додається закінчення -ed. Наприклад, read - readed.
Правило 2. Якщо односкладовий дієслово закінчується на приголосну, а їй передує короткий голосний звук, то при додаванні закінчення -ed остання приголосна подвоюється. Наприклад, stop - stopped.
Правило 3. Якщо наприкінці дієслова німа літера -е, то при додаванні закінчення -ed вона відкидається. Наприклад, announce - announced.
Правило 4. Якщо основа дієслова закінчується на -y, а їй передує приголосна, то -y змінюється на -i. Наприклад, reply - replied.
Примітка. Якщо букві -y передує голосна, то -y не змінюється. Наприклад, play - played.
Правила побудови форми -ing форм
Правило 1 (основне).-ing форма складається шляхом додавання закінчення -ing до основі інфінітива дієслова. Наприклад, sing - singing.
Правило 2. Якщо наприкінці слова мається німа літера -е, то вона відкидається. Наприклад, live - living.
Винятки з правила 2: see - seeing, be - being.
Примітка. При утворенні -ing форми від дієслів, що закінчуються на -у, слід пам'ятати, що буква -у зберігається в будь-якому випадку, незалежно від того, яка буква стоїть перед нею. Наприклад, pray - praying, cry - crying.
Правило 3. Якщо на кінці односкладової дієслова один приголосна, якій передує одна голосна, то при додаванні закінчення -ing остання буква подвоюється. Наприклад, put - putting.
Правило 4. Якщо в кінці є буквосполучення -ie, то воно утворює одну букву -у. Наприклад, tie - tying
Наведені вище правила освіти -ed і -ing форм лягли в основу відповідних алгоритмів.
Алгоритм освіти -ed і -ing форм англійських дієслів
Вхідні дані- рядок (інфінітив дієслова)
Вихідні дані- рядок (-ed форма дієслова str) - рядок (-ing форма дієслова str)
Проміжні переменние- ціле, довжина рядка str- ціле, лічильник голосних в str- ціле, номер аналізованого символу={a, o, u, i, e} безліч елементів символьного типу (безліч голосних англійського алфавіту );={b, c, d, f, g, h, j, r, l, m, n, p, q, r, s, t, v, w, x, z} безліч елементів символьного типу (безліч приголосних англійського алфавіту);
початок
Ініціалізація=str=str
k=0=1
поки ((i lt;=l)
н.ц.
2.1 якщо (str [i] належить безлічі Vowel)
то k=k + 1 (вважаємо кількість складів у str)
. 2 i=i + 1
к.ц.
якщо (k == 1) і (str [l] належить безлічі Consonant) і (str [l - 1] належить безлічі Vowel)
то
. 1 res1=res1 + res1 [l] + ed
3.2 res2=res2 + res2 [l] + ing
. 3 вихід з алгоритму
якщо (str [l] == y) і (str [l - 1] належить безлічі Consonant)
то
. 1 res1 [l]=i
. 2 res1=res1 + ed
4.3 вихід з алгоритму
якщо (str [l] == e)
то
. 1 res1=res1 + d
. 2 якщо (str lt; gt; see) або (str lt; gt; be) або (str [l - 1] lt; gt; i)
то
. 3 res2 [l]=i
. 4 res2=res2 + ng
5.5 вихід з алгоритму
якщо (str [l] == e) і (str [l - 1] == i)
то
. 1 res2 [l - 1]=y
. 2 res2 [l]=i
6.3 res2=res2 + ng
. 4 вихід з алгоритму
7 res1=res1 + ed
res2=res2 + ing
9 Результат res1, res2
кінець
Крім перерахованих правил отримання віддієслівних форм ...