ТутРешу.Ру

Составить программу: Дана буква русского алфавита

Задание:

Составить программу: Дана буква русского алфавита. Вывести на экран является ли эта буква гласной, согласной или разделительнымзнаком

Решение:

Так как понятие «гласная» , «согласная» и пр. Не являются формализованными понятиями, то есть их нельзя вычислить алгоритмически, их нужно задавать таблично, константами, а так как их много, то лучше всего подойдут массивы. Так как не указан язык программирования, в котором нужно реализовать текст, напишу на некоем псевдоязыке, текст которого легко переводится на известный тебе язык. В общем, программа будет такой // объявления массивовгласная (), согласная (), знак () // заполнение массивовгласная (1)="А"; гласная (2)="а"; гласная (3)="Е"; гласная (4)="е"; … согласная (1)="Б"; согласная (2)="б"; согласная (3)="В"; согласная (4)="в"; … знак (1)="."; знак (2)=".",; знак (3)="! "; знак (4)="? "; … // Функциифункция фГласная (буква) Для ц=1 по кг Цикл Если буква=гласная (ц) тогда Возврат (1); КонецЦикла; КонецЦикла; Возврат (0); КонецФункции функция фСогласная (буква) … . КонецФункции функция фзнак (буква) … . КонецФункции // текст основной программыВвод (буква); Если фГласная (буква)=1 тогда Сообщить (буква +" гласная"); ИначеЕсли фСогласная (буква)=1 тогда Сообщить (буква +" согласная"); ИначеЕсли фЗнак (буква)=1 тогда Сообщить (буква +" разделительный знак"); Иначе Сообщить (буква +" не квалифицирована"); КонецЕсли; Вот собственно и все. Замечание 1Если язык требует при объявлении массива его размерность- ее нужно указать. Многие языки имеют встроенную функцию определения размерности, некоторые языки имеют встроенные функции поиска в массиве, тогда нужно воспользоваться ими, а не писать свои функции. Замечание 2Если ИначеЕсли… как правило реализуется операторами CaseЗамечание 3Основная программа, как правило тоже обрамляется циклом с выходом по условию, которое либо системное либо некий хитрый символ (или клавиша), который ты определяешь концом ввода данных. Замечание 4Вместо массив можно использовать строки, содержащие подряд буквы, например, гласная="АаЕеИи… .". В этом случае для поиска нужно пользоваться соответствующими встроенными строковыми функциями. В общем, смысл должен быть тебе понятен, а дальше — творчество. Успехов! Почему-то при записи убежал возврат каретки, попробовал восстановить.




Знаете другой ответ?

Отправить свой ответ