Avatar billede sirtiger Nybegynder
22. marts 2004 - 10:47 Der er 12 kommentarer og
1 løsning

Afrunding af tal

Hej
Jeg har en weformular som jeg bruger til at indtaste nogle varer.
Kasserne bliver vejet - og ud fra den vægt regnes det ud hvor mange styk der er i kassen.
Jeg gør som følger.
Den vægt som man skriver ind i formularen bliver divideret med vægt pr enhed. Hvis jeg vælger en vægt hvor talle går op med hele kilo, så kan den finde ud af det. Hvis jeg derimod prøver en vægt som ikke går op i hele kilo, så virker det ikke.
Jeg henter vægten fra en Acces database hvor den henter vægten. Selve feltet i DB er tekst, men der står selvf et tal.
Avatar billede eagleeye Praktikant
22. marts 2004 - 10:51 #1
Skal den runde op/ned eller bare ned?

Du kan bruge Int til at runde ned til nærmeste heltal:

kassenvagt = 666.344
enhedsvagt = 2.3
heltal = Int(kassenvagt/enhedsvagt)
Avatar billede Slettet bruger
22. marts 2004 - 10:52 #2
Du kan caste dine tal til at blive decimaltal:
CDbl(Vægt) / CDbl(vægtprenhed) så vil de komme som decimaler
Avatar billede sirtiger Nybegynder
22. marts 2004 - 11:04 #3
Jeg tror jeg vli runde op. Jeg så et tidligere svar du lavede mht oprunding hvor man laver en fuktion.
Men det der undre mig er bare at hvis jeg lave funktionen i alt sin eneklthed, så virker den faktisk fint - lige bortset fra at tallet bliver for lille - forstået på den måde at hvis jeg har en vægt der hedder 0,534 og indtaste 15 - så giver resultatet 0,28089 osv. Hvor der rigtige resultat er 28,089 osv.
Avatar billede eagleeye Praktikant
22. marts 2004 - 11:08 #4
0,534 er det så ikke i kilo?

kassenvægt og vægten på en enhed skal være i sammme enhed eller vil det gå galt.
Avatar billede eagleeye Praktikant
22. marts 2004 - 11:10 #5
Du skal nok også være opmærksom på man bruge . som , så 0,534 vil måske tolkes som 534
Avatar billede eagleeye Praktikant
22. marts 2004 - 11:12 #6
Så prøv at replace . med ,

heltal = kassenvagt/replace(enhedsvagt,",",".")
Avatar billede sirtiger Nybegynder
22. marts 2004 - 11:13 #7
Det er det også. Det er meget mærkeligt. Hvis jeg ganger tallet med 1000 og så kører en int() på det, så bliver det rigtigt. JEg kan ikke lige se hvorfor????
Avatar billede sirtiger Nybegynder
22. marts 2004 - 11:14 #8
BTw - bertie. Hvis jeg caster mine tal, så kan jeg ikke sætte det ind i DB, da det skal ind i et tekst felt.
Avatar billede Slettet bruger
22. marts 2004 - 11:17 #9
Næ men det var også til udregningen på siden, men jeg havde misforstået dit spm. :-)
Avatar billede sirtiger Nybegynder
22. marts 2004 - 11:26 #10
Nå, jeg sad lige og rodede mere med det. Nu breder mystikken sig.
Hvis jeg ganger med 1000 passer tallet - men hvis jeg så ganger med et kommatal - altså 10,5 så passer det ikke længere, så skal der kun ganges med 100.
Det er meget mærkeligt, men jeg tror bare det bliver gange med 100. Så må man bare skrive 5,0 i kg.
Avatar billede eagleeye Praktikant
22. marts 2004 - 11:29 #11
Som før skrevet vil den tolke , som . som er en tusin seperator og ikke et komma så prøv at skrive 10.5 i stedet for.

Du kan prøve at sætte denne linje ind i toppen af koden, men jeg kan ikke helt huske som den ændre på , og .:
Session.LCID=1030
Avatar billede sirtiger Nybegynder
22. marts 2004 - 13:55 #12
Nå, men jeg fik det løst. Det viste sig at hvis jeg lavede DB om så det var tal - så kom der ikke formaterings porblemer. Så virker det. Men send lige et svar så du kan få nogen point, for hjælpen har været uundværlig. Og du havde ret med , . situationen.
Avatar billede eagleeye Praktikant
22. marts 2004 - 16:20 #13
ok :) et svar
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