Avatar billede thecokeguy Nybegynder
13. februar 2005 - 00:11 Der er 11 kommentarer og
1 løsning

Afrunding opad

Jeg ville høre om, der er en funktion, som kan afrunde en integer opad. Jeg ved at trunc() afrunder nedad, men mangler det modsatte.

På forhånd tak
Avatar billede arne_v Ekspert
13. februar 2005 - 00:15 #1
Trunc(x) runder ned
Round(x) runder af (til nærmeste)
Round(x+0.5) må vel gøre det du vil
Avatar billede nop Nybegynder
14. februar 2005 - 09:22 #2
trunc(x+0.999); //lige så mange 9 taller som nødvendigt

Er vist det rigtige.
Avatar billede arne_v Ekspert
14. februar 2005 - 15:44 #3
Og hvorfor skulle trunc(x+1) være mere rigtig end round(x+0.5) ?
Avatar billede thecokeguy Nybegynder
14. februar 2005 - 19:16 #4
Jeg takker for begge svar, men er der ikke en der vil være sød at poste en af delene som et svar... Ellers får jeg aldrig lukket tråden.

...Endnu engang tak
Avatar billede arne_v Ekspert
14. februar 2005 - 19:17 #5
gerne
Avatar billede nop Nybegynder
14. februar 2005 - 21:10 #6
tjah men round vil igen lave en add og "klippe" så jeg valgte den hurtige (gammel assembler skade).
Jeg skrev ikke at den var mere rigtig men undskyld og du har jo også taget pointene.
Avatar billede arne_v Ekspert
14. februar 2005 - 22:36 #7
Ah - så du bruger sikkert også konsekvent
  Inc(x);
fremfor
  x := x + 1;
?

:-)

Jeg har vist misforstået din "Er vist det rigtige".
Avatar billede nop Nybegynder
15. februar 2005 - 17:43 #8
Ja, og når jeg skal gange med 10:

x:=x+x;
t:=x;
x:=x+x;
x:=x+x+t;

Åh ja det er skønt at være fra gamle dage :)
Avatar billede jaweni Nybegynder
16. februar 2005 - 23:58 #9
Hej Arne, men jeg forstår ikke lige
din kommentar ang. skrivemåderne:
Inc(x) og x := x + 1
Hvor er forskellen, hvis nogen?

Undskyld min indblanding!
jaweni
Avatar billede arne_v Ekspert
17. februar 2005 - 00:01 #10
Der er ingen funktionel forskel.

Jeg tvivler meget på at der er en performance mæssig forskel idag.

Men for 10-20 år siden var Inc meget hurtigere.
Avatar billede jaweni Nybegynder
17. februar 2005 - 00:24 #11
Du har megen kendskab til Pascal/Delphi,
kan jeg forstå. (Din løsning ang. talkombi-
nationer) var rigtig god; men jeg vendte
tallene om, så det blev mere praktisk for mig.

Vil du se resultatet? Kan sende dig .exe-filen!
Avatar billede arne_v Ekspert
17. februar 2005 - 22:03 #12
Jeg programmerede en del i Pascal tilbage midt i 90'erne.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester