Relationelle Operatorer
Relationale operatorer (>
, <
, >=
, <=
, ==
, !=
) bruges til at sammenligne to værdier. De bestemmer forholdet mellem værdierne og giver true
eller false
.
For at outputte true
, når du printer en boolsk værdi med std::cout
, kan du simpelthen bruge std::cout
med en boolsk værdi.
main.cpp
123456#include <iostream> int main() { std::cout << true; }
Som standard printer std::cout
et for true
og nul for false
. For at printe true
og false
som ord, skal du bruge std::boolalpha
manipulatoren. Den instruerer std::cout
til at vise boolske værdier som ord i stedet for tal.
first_boolaplha_usage.cpp
second_boolaplha_usage.cpp
123456#include <iostream> int main() { std::cout << std::boolalpha << true; }
Brug af operatorer
For at sammenligne om noget er lig med, brug ==
operatoren med to lighedstegn. Husk, =
er en anden operator, der bruges til tildeling, ikke sammenligning.
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; }
Når du bruger de >
(større end) og <
(mindre end) relationelle operatorer, kan du sammenligne to værdier for at kontrollere, hvilken der er større eller mindre. Resultatet vil være true
, hvis betingelsen holder, og false
ellers.
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; }
Hvis brugeren ønsker at hæve 500, og deres saldo også er 500, vil >
operatoren returnere false
, da den kontrollerer, om saldoen er strengt større end hævebeløbet. Hævningen er dog stadig mulig. I dette tilfælde bør du bruge >=
eller <=
operatoren for at kontrollere, om saldoen er større end eller lig med hævebeløbet, hvilket korrekt ville returnere 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. Hvad er standardadfærden for std::cout
, når der udskrives en boolsk værdi?
2. Hvordan kan du kontrollere, om to strenge ikke er ens?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 4
Relationelle Operatorer
Stryg for at vise menuen
Relationale operatorer (>
, <
, >=
, <=
, ==
, !=
) bruges til at sammenligne to værdier. De bestemmer forholdet mellem værdierne og giver true
eller false
.
For at outputte true
, når du printer en boolsk værdi med std::cout
, kan du simpelthen bruge std::cout
med en boolsk værdi.
main.cpp
123456#include <iostream> int main() { std::cout << true; }
Som standard printer std::cout
et for true
og nul for false
. For at printe true
og false
som ord, skal du bruge std::boolalpha
manipulatoren. Den instruerer std::cout
til at vise boolske værdier som ord i stedet for tal.
first_boolaplha_usage.cpp
second_boolaplha_usage.cpp
123456#include <iostream> int main() { std::cout << std::boolalpha << true; }
Brug af operatorer
For at sammenligne om noget er lig med, brug ==
operatoren med to lighedstegn. Husk, =
er en anden operator, der bruges til tildeling, ikke sammenligning.
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; }
Når du bruger de >
(større end) og <
(mindre end) relationelle operatorer, kan du sammenligne to værdier for at kontrollere, hvilken der er større eller mindre. Resultatet vil være true
, hvis betingelsen holder, og false
ellers.
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; }
Hvis brugeren ønsker at hæve 500, og deres saldo også er 500, vil >
operatoren returnere false
, da den kontrollerer, om saldoen er strengt større end hævebeløbet. Hævningen er dog stadig mulig. I dette tilfælde bør du bruge >=
eller <=
operatoren for at kontrollere, om saldoen er større end eller lig med hævebeløbet, hvilket korrekt ville returnere 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. Hvad er standardadfærden for std::cout
, når der udskrives en boolsk værdi?
2. Hvordan kan du kontrollere, om to strenge ikke er ens?
Tak for dine kommentarer!