Contenuti del Corso
Introduzione a C++
Introduzione a C++
Operatori Relazionali
Gli operatori relazionali (>
, <
, >=
, <=
, ==
, !=
) sono utilizzati per confrontare due valori. Determinano la relazione tra i valori e restituiscono true
o false
.
Per ottenere true
quando si stampa un valore booleano con std::cout
, puoi semplicemente usare std::cout
con un valore bool.
main
#include <iostream> int main() { std::cout << true; }
Di default, std::cout
stampa uno per true
e zero per false
. Per stampare true
e false
come parole, è necessario utilizzare il manipolatore std::boolalpha
. Esso istruisce std::cout
a visualizzare i valori booleani come parole invece che come numeri.
first_boolaplha_usage
second_boolaplha_usage
#include <iostream> int main() { std::cout << std::boolalpha << true; }
Utilizzo degli operatori
Per confrontare se qualcosa è uguale, usa l'operatore ==
con due segni di uguale. Ricorda, =
è un operatore diverso usato per l'assegnazione, non per il confronto.
main
#include <iostream> int main() { // Imagine you need to verify if the user has entered the correct password std::cout << std::boolalpha; std::cout << ("yw>r'Peq/2d" == "yw>r'Peq/2d") << std::endl; std::cout << ("yw>r'Peq/2d" == "VzF>.6Qy(UI?") << std::endl; }
Quando si utilizzano gli operatori relazionali >
(maggiore di) e <
(minore di), è possibile confrontare due valori per verificare quale sia più grande o più piccolo. Il risultato sarà true
se la condizione è soddisfatta, e false
altrimenti.
main
#include <iostream> int main() { std::cout << std::boolalpha; // Checking if a customer has enough balance // To withdraw 300 from an account balance of 500 std::cout << (500 > 300) << std::endl; }
Se l'utente vuole prelevare 500 e il suo saldo è anch'esso 500, l'operatore >
restituirà false
, poiché verifica se il saldo è strettamente maggiore dell'importo del prelievo. Tuttavia, il prelievo è comunque possibile. In questo caso, si dovrebbe utilizzare l'operatore >=
o <=
per verificare se il saldo è maggiore o uguale all'importo del prelievo, il che restituirebbe correttamente true
.
main
#include <iostream> int main() { std::cout << std::boolalpha; // Checking if a customer has enough balance // To withdraw 500 from an account balance of 500 std::cout << (500 >= 500) << std::endl; }
1. Qual è il comportamento predefinito di std::cout
quando stampa un valore booleano?
2. Come puoi verificare se due stringhe non sono uguali?
Grazie per i tuoi commenti!