Operatori Relazionali
Gli operatori relazionali (>, <, >=, <=, ==, !=) vengono utilizzati per confrontare due valori. Determinano la relazione tra i valori e restituiscono true o false.
Per visualizzare true durante la stampa di un valore booleano con std::cout, è sufficiente utilizzare std::cout con un valore bool.
main.cpp
123456#include <iostream> int main() { std::cout << true; }
Per impostazione predefinita, std::cout stampa uno per true e zero per false. Per stampare true e false come parole, è necessario utilizzare il manipolatore std::boolalpha. Questo istruisce std::cout a visualizzare i valori booleani come parole invece che come numeri.
first_boolaplha_usage.cpp
second_boolaplha_usage.cpp
123456#include <iostream> int main() { std::cout << std::boolalpha << true; }
Utilizzo degli operatori
Per confrontare se due elementi sono uguali, utilizzare l'operatore == con due segni di uguale. Ricorda che = è un operatore diverso utilizzato per l'assegnazione, non per il confronto. L'operatore diverso (!=) è utile quando si desidera eseguire un'azione solo se due valori sono differenti.
main.cpp
123456789101112#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; 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 maggiore o minore. Il risultato sarà true se la condizione è soddisfatta, altrimenti sarà false.
main.cpp
123456789#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 desidera prelevare 500 e il suo saldo è anch'esso 500, l'operatore > restituirà false, poiché verifica se il saldo è strettamente maggiore dell'importo da prelevare. Tuttavia, il prelievo è comunque possibile. In questo caso, è opportuno utilizzare l'operatore >= o <= per verificare se il saldo è maggiore o uguale a all'importo del prelievo, il che restituirebbe correttamente true.
main.cpp
123456789#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 si può verificare se due stringhe non sono uguali?
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Can you give an example of using relational operators in code?
What does `std::boolalpha` do in practice?
When should I use `>=` instead of `>`?
Awesome!
Completion rate improved to 3.85
Operatori Relazionali
Scorri per mostrare il menu
Gli operatori relazionali (>, <, >=, <=, ==, !=) vengono utilizzati per confrontare due valori. Determinano la relazione tra i valori e restituiscono true o false.
Per visualizzare true durante la stampa di un valore booleano con std::cout, è sufficiente utilizzare std::cout con un valore bool.
main.cpp
123456#include <iostream> int main() { std::cout << true; }
Per impostazione predefinita, std::cout stampa uno per true e zero per false. Per stampare true e false come parole, è necessario utilizzare il manipolatore std::boolalpha. Questo istruisce std::cout a visualizzare i valori booleani come parole invece che come numeri.
first_boolaplha_usage.cpp
second_boolaplha_usage.cpp
123456#include <iostream> int main() { std::cout << std::boolalpha << true; }
Utilizzo degli operatori
Per confrontare se due elementi sono uguali, utilizzare l'operatore == con due segni di uguale. Ricorda che = è un operatore diverso utilizzato per l'assegnazione, non per il confronto. L'operatore diverso (!=) è utile quando si desidera eseguire un'azione solo se due valori sono differenti.
main.cpp
123456789101112#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; 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 maggiore o minore. Il risultato sarà true se la condizione è soddisfatta, altrimenti sarà false.
main.cpp
123456789#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 desidera prelevare 500 e il suo saldo è anch'esso 500, l'operatore > restituirà false, poiché verifica se il saldo è strettamente maggiore dell'importo da prelevare. Tuttavia, il prelievo è comunque possibile. In questo caso, è opportuno utilizzare l'operatore >= o <= per verificare se il saldo è maggiore o uguale a all'importo del prelievo, il che restituirebbe correttamente true.
main.cpp
123456789#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 si può verificare se due stringhe non sono uguali?
Grazie per i tuoi commenti!