Buna ziua! Am urmatoarea problema și nu stiu sa o rezolv:
Scrieți în C++ o aplicație în care se cere introducerea unui caracter de la tastatură și apoi afișarea câte unui răspuns diferit dacă s-a introdus o vocală, o consoană, un semn special sau o cifră.
Aplicația va repeta procesul la apăsarea unei taste oarecare, cu excepția tastei 's'. Apăsarea tastei 's' va opri programul.
Reluați aplicația folosind limbajul Java și clasele utilizate în ultimele laboratoare pentru a realiza diverse reprezentări grafice. În noua variantă, aplicația va afișa într-o fereastră o reprezentare grafică a fiecărei afișaria. Pentru reprezentare se vor utiliza clasele Canvas, Square și Circle, dar se poate recurge și la crearea unor clase derivate. Culorile și dimensiunile rămân la alegere.
Creați un document care să cuprindă programele scrise și capturi de ecran care să dovedească funcționarea corectă.
Răspunsuri la întrebare
Răspuns:
Raspuns in C++
Explicație:
#include <iostream>
#include <cctype>
using namespace std;
int vocal(char n) {
switch(n)
{
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
case 'A':
case 'E':
case 'I':
case 'O':
case 'U':
return 1;
default:
return 0;
}
}
int main()
{
int voc=0,nr=0;
string n;
cin>>n;
if(n[0]=='s'||n[0]=='S'){
cout<<"Programul a fost incheiat";
return 0;}
if(isdigit(n[0])){
cout<<"Este un numar"<<endl;
nr=1;}
for(int i=0;i<n.size();i++)
if(vocal(n[i])==1){
cout<<"Este o vocala"<<endl;
voc=1;
}
if (n.find_first_not_of("bcdfghjklmnpqrtvwxyzBCDFGHJKLMNPQRTVWXYZ") != string::npos)
{
if(voc!=1&&nr!=1)
cout<< "Este numar special"<<endl;
} else cout<<"Este o consoana"<<endl;
main();
}