Informatică, întrebare adresată de valeria161001, 8 ani în urmă

De la tastatura se citește un caracter din tabelul ASCII. Sa se determine ce fel de caracter este, adică litera mare, litera mică, cifra sau semn special, folosind un subprogram in care se utilizează instrucțiunea case.

Răspunsuri la întrebare

Răspuns de AdiAfr
2

#include <iostream>

using namespace std;

int main(){

  char c;

  cout<<"Introduceti o cifra, o litera, sau un caracter special."<<endl;

  cin>>c;

  int a = 1;

   switch(a){

       case 1: if(c >= 'a' && c<='z'){

           cout<<"Caracterul introdus este o litera mica.";

           break;}

           else{

               a = a+1;

           }

       case 2: if(c >= 'A' && c<='Z'){

           cout<<"Caracterul introdus este o litera mare.";

           break;

       }

       else{

           a = a + 1;}

      case 3: if(c >= '0' && c<='9'){

           cout<<"Caracterul introdus este o cifra.";

           break;

       }

       else{

           a = a + 1;

           }

       case 4:

           cout<<"Caracterul introdus este un caracter special.";

           break;

   }

}

E testat si merge. In ASCII caracterele sunt puse intr-o ordine, gen literele mici sunt de la a la z una dupa alta, literele mari de la A la Z, etc de aceea am folosit acele conditii in if-urile de mai sus. Daca scrii un ascii table pe google imagini o sa gasesti si o sa vezi. Case-ul merge destul de simplu, ai o variabila a, care initial e 1, Deci va lua prima optiune(va verifica daca caracterul e o litera mare) si in cazul in care e adevarat instructiunea "break" va face ca programul sa se opreasca acolo si sa scrie rezultatul, in caz contrar programul va incrementa a (a = a + 1) si va merge la cazul urmator (case 2). Daca niciuna din primele 3 conditii nu este indeplinita (litera mica, litera mare, cifra) atunci este evident ca ce am introdus de la tastatura este un caracter special, se va scrie rezultatul si se iese din switch.

Alte întrebări interesante