Operadores Relacionais
Operadores relacionais (>
, <
, >=
, <=
, ==
, !=
) são utilizados para comparar dois valores. Eles determinam a relação entre os valores e retornam true
ou false
.
Para exibir true
ao imprimir um valor booleano com std::cout
, basta utilizar std::cout
com um valor bool.
main.cpp
123456#include <iostream> int main() { std::cout << true; }
Por padrão, std::cout
imprime um para true
e zero para false
. Para imprimir true
e false
como palavras, é necessário utilizar o manipulador std::boolalpha
. Ele instrui o std::cout
a exibir valores booleanos como palavras em vez de números.
first_boolaplha_usage.cpp
second_boolaplha_usage.cpp
123456#include <iostream> int main() { std::cout << std::boolalpha << true; }
Uso de operadores
Para comparar se algo é igual, utilize o operador ==
com dois sinais de igual. Lembre-se, =
é um operador diferente utilizado para atribuição, não para comparação.
main.cpp
123456789#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; }
Ao utilizar os operadores relacionais >
(maior que) e <
(menor que), é possível comparar dois valores para verificar qual deles é maior ou menor. O resultado será true
se a condição for satisfeita e false
caso contrário.
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 o usuário deseja sacar 500 e o saldo também é 500, o operador >
retornará false
, pois verifica se o saldo é estritamente maior que o valor do saque. No entanto, o saque ainda é possível. Nesse caso, deve-se utilizar o operador >=
ou <=
para verificar se o saldo é maior ou igual ao valor do saque, o que retornaria corretamente 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 é o comportamento padrão de std::cout
ao imprimir um valor booleano?
2. Como verificar se duas strings não são iguais?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
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
Operadores Relacionais
Deslize para mostrar o menu
Operadores relacionais (>
, <
, >=
, <=
, ==
, !=
) são utilizados para comparar dois valores. Eles determinam a relação entre os valores e retornam true
ou false
.
Para exibir true
ao imprimir um valor booleano com std::cout
, basta utilizar std::cout
com um valor bool.
main.cpp
123456#include <iostream> int main() { std::cout << true; }
Por padrão, std::cout
imprime um para true
e zero para false
. Para imprimir true
e false
como palavras, é necessário utilizar o manipulador std::boolalpha
. Ele instrui o std::cout
a exibir valores booleanos como palavras em vez de números.
first_boolaplha_usage.cpp
second_boolaplha_usage.cpp
123456#include <iostream> int main() { std::cout << std::boolalpha << true; }
Uso de operadores
Para comparar se algo é igual, utilize o operador ==
com dois sinais de igual. Lembre-se, =
é um operador diferente utilizado para atribuição, não para comparação.
main.cpp
123456789#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; }
Ao utilizar os operadores relacionais >
(maior que) e <
(menor que), é possível comparar dois valores para verificar qual deles é maior ou menor. O resultado será true
se a condição for satisfeita e false
caso contrário.
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 o usuário deseja sacar 500 e o saldo também é 500, o operador >
retornará false
, pois verifica se o saldo é estritamente maior que o valor do saque. No entanto, o saque ainda é possível. Nesse caso, deve-se utilizar o operador >=
ou <=
para verificar se o saldo é maior ou igual ao valor do saque, o que retornaria corretamente 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 é o comportamento padrão de std::cout
ao imprimir um valor booleano?
2. Como verificar se duas strings não são iguais?
Obrigado pelo seu feedback!