Определить, какая буква введена - гласная или согласная - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Разработать программу, которая позволяет ввести любую букву английском и вывести какая это буква-гласная или согласная.(использовать оператор if и логичекие операции) Не пойму чего не хватает?
#include <conio.h>
#include <stdio.h>
void main(){
int Litera,A,E,I,O,U,Y,B,C,D,F,H,J,K,L,M,N,P,Q,R,S,T,V,W,X,Z,gl,pr;;
gl=A,E,I,O,U,Y;
pr=B,C,D,F,H,J,K,L,M,N,P,Q,R,S,T,V,W,X,Z;
clrscr();
printf ("\nVedit Literu>");
scanf ("%d",Litera);
Litera=getche();
if (Litera==pr){
printf ("\nLitera prugolosna");}
else
if (Litera==gl){
printf ("\nLitera golosna");}
getch();
}

Решение задачи: «Определить, какая буква введена - гласная или согласная»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
 
void main()
{
    int i, flag = 0;
    int Litera;
    char gl[]= "aeiouyAEIOUY";
    while(true)//ÌîæГ*Г® áóäåò äåëГ*ГІГј ââîä ïîñòîÿГ*Г*Г®
    {
        flag = 0;//ГЋГЎГ*óëèëè ГґГ«Г*ГЈ 
        //åñëè flag == 1 - ââåëè ГЈГ«Г*Г±Г*ГіГѕ
        printf ("Vedit Literu>");
        printf("%c",(Litera = getch()));
        for(i = 0; gl[i] != '\0' && flag == 0; i++)
        {
            //gl[i] != '\0' - îçГ*Г*Г·Г*ГҐГІ ïîêГ* Г*ГҐ äîéä¸ì äî ГЄГ®Г*Г¶Г* ГЈГ«Г*Г±Г*ВіГµ
            // &&  Г«Г®ГЈГЁГ·Г·ГҐГ±ГЄГ®ГҐ Г€
            //flag == 0; флаг что не нашли гласную
            if(Litera == gl[i])
                flag = 1;
        }
        if(flag == 1)
            printf(" - glasnay\n");
        else
            printf(" - soglasnaya ili dr znak\n");
    }
}

Объяснение кода листинга программы

  1. Объединение 'aeiouyAEIOUY' содержит все гласные буквы в верхнем и нижнем регистре.
  2. Переменная 'Litera' используется для хранения введенной буквы.
  3. Программа запрашивает ввод буквы и сохраняет ее в переменной 'Litera' с помощью функции 'getch()'.
  4. Переменная 'flag' инициализируется как 0, что означает, что гласная не найдена.
  5. В цикле while истина, программа будет продолжать запрашивать ввод, пока не будет введена гласная буква или не будет нажата клавиша Esc.
  6. В цикле for проверяется каждая буква в объединении 'gl'. Если введенная буква соответствует текущей букве в цикле, то переменная 'flag' устанавливается как 1, что означает, что гласная была найдена.
  7. Если 'flag' все еще равно 0 после цикла for, это означает, что введенная буква не является гласной, и программа выводит соответствующее сообщение.
  8. Если 'flag' равно 1 после цикла for, это означает, что введенная буква является гласной, и программа также выводит соответствующее сообщение.

Оцени полезность:

15   голосов , оценка 4 из 5
Похожие ответы