Проверка на символи

Да се направят функции, които проверяват дали даден символ е:

  • главна латинска буква
  • латинска буква
  • арабска цифра
  • препинателен знак

Да се направи главна програма, която тества тези функции, като позволява въвеждане на символи до въвеждане на интервал и отпечатва какви са.

Публикувано в СИП с етикети . Постоянна връзка.

7 коментара по Проверка на символи

  1. bobby666666 каза:
     #include <iostream>
    #include <cstdlib>
    
    /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    using namespace std;
    char glawnaBukwa(char n){
    	if((n>='A')&&(n<='Z')){
    		cout<<"Glawna latinska bukwa e";
    	}
    }
    
    char latinska(char n){
    	if((n>='a')&&(n<='z')||((n>='A')&&(n<='Z'))){
    		cout<<"latinska bukwa e";
    	}
    }
    
    char cifra(char n){
    	if((n>='0')&&(n<='9')){
    		cout<<"Cifra e";
    	}
    }
    
    char znak(char n){
    	if((n=='!')||(n=='.')||(n=='?')||(n==';')||(n==':')||(n==',')||(n=='`')){
    		cout<<"prepinatelen znak e  e";
    	}
    }
    
    
    int main(int argc, char** argv) {
    	char n;
    	do{
    	cout<<"wuwedete n "<<endl;
    	cin>>n;
    		glawnaBukwa(n);
    		latinska(n);
    		cifra(n);
    		znak(n);
    		cout<<endl;
    	} while (n!='space');
    	// нещо не мога да го нагодя със space,а и няма време
    	return 0;
    }
    • Данаил каза:

      Богдане, общо взето много добре си се ориентирал, обаче защо функциите са от тип char като не връщат нищо? Иначе всичко друго е перфе. И помисли може ли да се направи така, че ако едната функция разпознае символа, да не се налага да се минава през другите…

  2. MartinPlamenov каза:
    #include <iostream>
    
    using namespace std;
    
    //Функция за всички стойности на а
    int proverka(char a){
    	
    	if (((a>='A')&&(a<='Z'))||((a>='a')&&(a<='z'))){
    	
    		a=1;
    	
    	}
    	
    	if ((a>='0')&&(a<='9')){
    		a=2;
    	}
    	if((a=='!')||(a=='.')||(a=='?')||(a==';')||(a==':')||(a==',')||(a=='`')){
    		a=3;
    	}
    	//Тук ще вземем стойността на а след проверката с възможните варианти 
    	switch(a){
    	
    		case 1: 
    			cout<<"Tova e bukva";
    			break;
    			case 2: 
    			cout<<"Tova e chislo/cifra";
    			break;
    			case 3: 
    			cout<<"Tova e prepinatelen znak";
    			break;
    			default: cout<<"Ne e nito bukva,nito chislo,nito prepinatelen znak!";
    		}
    }
    
    int main() {
    	char a;
    	cin>>a;
    	proverka(a);
    	return 0;
    }
  3. MartinPlamenov каза:

    Готово

    #include <iostream>
    #include <windows.h>
    #include <conio.h>
    
    using namespace std;
    
    //Funkciq za vuzmojni stoinosti na a
    int proverka(char a){
    	
    	if (((a>='A')&&(a<='Z'))||((a>='a')&&(a<='z'))){
    	
    		a=1;
    	
    	}
    	
    	if ((a>='0')&&(a<='9')){
    		a=2;
    	}
    	if((a=='!')||(a=='.')||(a=='?')||(a==';')||(a==':')||(a==',')||(a=='`')){
    		a=3;
    	}
    	//Tuk shte vezemem vuzmojnite stoinosti na a i shte gi proverim
    	switch(a){
    	
    		case 1: 
    			cout<<"Tova e bukva"<<endl;
    			break;
    			case 2: 
    			cout<<"Tova e chislo"<<endl;
    			break;
    			case 3: 
    			cout<<"Tova e prepinatelen znak"<<endl;
    			break;
    			default: cout<<"Ne e nito bukva,nito chislo,nito prepinatelen znak!"<<endl;
    		}
    }
    
    int main() {
    	char a;
    	bool loop=false;
    //Sled 1 zavurtane na cikula ako isakme da sprem cukame Space
    while (loop==false){
    	cout<<"Stoinost:";
    	cin>>a;
    	proverka(a);
    	a=getch();
    	if (a==32){
    		loop=true;
    	}
    }
    
    	return 0;
    }

Вашият коментар