C språk;
Vad har fäljande uttryck för värd i c?
1.2*2+1.0/2+2%5
Prova och se.
Visa spoiler
printf("1.2*2+1.0/2+2%5 = %f\n", 1.2*2+1.0/2+2%5);
Jag testade och fick 4,90000. Rätt?!
Fundera på varför det blir 4,90000.
Som Lindehaven säger, försök fundera på varför det blir som det blir. En viktig del av det är att olika operatorer (t.ex. +, *, % etc) har olika prioritet, det vill säga exekveras i olika ordning. De operatorer med högst prioritet kommer att köras först. Om flera operatorer har samma prioritet, går man från vänster till höger. På sätt och vis liknar det prioriteringsreglerna i matematiken en hel del.
Du kan kolla upp operatorernas prioritet på exempelvis https://en.cppreference.com/w/c/language/operator_precedence (lägre siffra i tabellen = högre prioritet)
Visa spoiler
Förutom prioritet, kolla hur modulo-operatorn funkar.