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; }
Utilizando operadores
Para comparar se algo é igual, utilize o operador == com dois sinais de igual. Lembre-se, = é um operador diferente usado para atribuição, não para comparação. O operador diferente (!=) é útil quando se deseja realizar uma ação apenas se dois valores forem diferentes.
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; }
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 look like in a real program?
Can you explain the difference between == and = again?
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; }
Utilizando operadores
Para comparar se algo é igual, utilize o operador == com dois sinais de igual. Lembre-se, = é um operador diferente usado para atribuição, não para comparação. O operador diferente (!=) é útil quando se deseja realizar uma ação apenas se dois valores forem diferentes.
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; }
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!