Created
December 30, 2014 12:48
-
-
Save AndreasHassing/7437d636e71e56f77bb8 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Spørgsmål: | |
/* | |
Beskriv nogle regneudtryk (af type int eller double, med | |
operatorer såsom * + - / % osv) og nogle logiske udtryk (af type | |
boolean, med operatorer såsom == != < > <= >= ! && ||), hvordan de | |
udregnes og hvor de bruges. | |
*/ | |
// int og double (+ / -) | |
7 + 5 // = 12, to ints. Resultat er en int. | |
7 + 5.0 // = 12.0, en int og en double. Resultat er en double. | |
// integer division | |
7 / 3 // = 2, integer division smider decimalet, derfor giver 7 / 3 = 2, i stedet for 2.33333... | |
14 / 5 // = 2, "burde" være 2.8, men ints ved ikke hvad decimaler er, så de smider dem væk. | |
4 / 2 // = 2, her er det OK! Ingen data er tabt. | |
// mixed division | |
7 / 3.0 // eller .. | |
7.0 / 3 // = 2.333333333333335 | |
// ^ WTF?! 5-tal? Burde det ikke være 2.3333333333 i en uendelighed? | |
// både ja og nej. En computer kan ikke holde på uendelig data, så før eller siden | |
// bliver divisionen upræcis og ender på 'forkerte' tal. Så regn kun med at de første | |
// par decimaler taler sandt. | |
14.0 / 5 // = 2.8 !! woop woop! | |
// double division, division med tal der begge har decimaler, eller er af typen (float/double/long) | |
7.0 / 3.0 // = 2.3333333333335 - samme resultat som mixed division | |
/* Truthy shit! Working with booleans and logical operators <3 */ | |
true == true // That truth is so truthy! | |
false == false // wait what? Oh yeah! 'tis also Truthy! False IS false, so the STATEMENT is true. | |
true || true && false // oh snap.. Den er svær. Mjah, ikke rigtig! Den er sand, da vi ser true først | |
// og så en 'or' og er tilfredse! | |
true && false // hvad så med her? Falsk! Vi ser true, men er ikke tilfredse endnu, da der er en && (and) | |
// så både True OG false skal være sande.. Men det er de jo ikke. Altså er udtrykket (the statement) falsk. | |
!!!true // ehm? ikke-ikke-ikke-true. Så hvad er den? False! Ligesom at gange med minus 1 -> hvert '!' | |
// betyder 'ikke', så vi ender med et falsk udtryk. | |
!false // sandt nok! ;) | |
15 > 16 = false // NOPE! Falsk! | |
16 >= 16 = true // 16 er større end ELLER LIG MED 16! | |
15.0 == 15 = true // ja den er tricky, og alligevel ikke. 15.0 ER jo lig med 15! Så den er god nok, true! | |
15.00000000000001 == 15 = false // ikke det samme længere! | |
1 != 2 = true // thaaats right! 1 er IKKE lig med 2.. Mærkelig verden.. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment