Sprawdzanie wielokosci liter C++
Ostatnio zmodyfikowano 2020-11-19 19:31
xNiecny Temat założony przez niniejszego użytkownika |
Sprawdzanie wielokosci liter C++ » 2020-11-19 10:16:16 Opis działania programu: 1. Wyświetlenie „Wprowadź cyfrę lub literę:”. 2. Użytkownik wprowadza znak cyfry lub litery. 3. Program wyświetla komunikat „cyfra” , „mała litera” lub „wielka litera” wzależności od wprowadzonego znaku. Jeżeli wprowadzono inny znak, to należy wyświetlić komunikat „Błąd”. Wskazówka: Użyć instrukcji wyboru switch, sprawdzającej kod ASCII znaku (cyfry: 48-57, małe litery: 97-122, wielkie litery: 65-90). Nie używać instrukcji warunkowej if.
Próbowałem robić sam no ale po prostu nie potrafię bez if. |
|
pekfos |
» 2020-11-19 18:48:23 Warunek wielokrotnego wyboru switch ... casePrzy czym nie musisz używać break po każdym case i nawet w tym wypadku nie powinieneś. switch( znak ) { case '0': case '1': break; Musisz wypisać w kodzie wszystkie wartości dla tych trzech typów znaków. Nie wiem jaki jest sens w tym zadaniu, używanie przedziałów to lepsze rozwiązanie. Albo po prostu oszukaj system char c; std::cin >> c;
switch(( c >= '0' && c <= '9' ) +( c >= 'a' && c <= 'z' ) * 2 +( c >= 'A' && c <= 'Z' ) * 3 ) { case 0: std::cout << "cos innego\n"; break; case 1: std::cout << "cyfra\n"; break; case 2: std::cout << "mala litera\n"; break; case 3: std::cout << "duza litera\n"; break; } |
|
xNiecny Temat założony przez niniejszego użytkownika |
Odpowiedz » 2020-11-19 19:31:43 Bardzo dziękuję po paru zmianach
#include <iostream>
using namespace std;
int main() { cout << "Podaj cyfre lub liczbe = "; char c; cin >> c; cout << endl;
switch(( c >= '0' && c <= '9' ) +( c >= 'a' && c <= 'z' ) * 2 +( c >= 'A' && c <= 'Z' ) * 3 ) { case 0: cout << "cos innego\n"; break; case 1: cout << "cyfra\n"; break; case 2: cout << "mala litera\n"; break; case 3: cout << "duza litera\n"; break; }
return 0; }
Działa jak cacuszko
Miłego Wieczoru za to życzę ;3 |
|
« 1 » |