Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


FIX()

Postades av 2008-05-19 00:26:06 - Niklas Rosenberg, i forum visual basic - allmänt, Tråden har 8 Kommentarer och lästs av 1831 personer

Hm... Har en liten fråga.....
Hur kan:
Fix(10,023 * 1000)
bli 10022? Borde det inte bli 10023?
Eller vad skall jag ha för att det skall bli 10023?
Jag skall ha det till att ta bort för många decimaler utan att avrunda...
Med Fix(10,0239 * 1000)/1000 skall alltså bli 10,023 och INTE 10,024

HJÄLP vad skall jag ha istället?


Svara

Sv: FIX()

Postades av 2008-05-19 08:24:52 - Martin Adrian

decimaler går normalt inte att representera exakt med binära datatyper, t.ex. double.

10,023 blir 10,022999...

Om du vill ha exakta decimaler bör du använda exakta datatyper som int, decimal, currency.

Om jag förstår dig rätt så vill du att 10,02299999 skall bli 10,023. Det du får göra då är att bestämma vilket interval som skall avrundas uppåt och lägga till det innan du trunkerar.

Fix(10,0239*1000+0,01)/1000


Svara

Sv:FIX()

Postades av 2008-05-20 00:39:33 - Niklas Rosenberg

Nja..... Jag vill ju bara att tex 10,0229999999999999999999999 skall bli 10,022 INTE 10,023.... Alltså INGEN avrundning uppåt.....
Men skall brova med int..... Eller Decimal och se om det blir någon ändring....

Tack för förslaget..


Svara

Sv: FIX()

Postades av 2008-05-20 09:08:53 - Niklas Jansson

[citerat Niklas Rosenberg Medlem:15709 [FIX()]#267783]
<citat>
Nja..... Jag vill ju bara att tex 10,0229999999999999999999999 skall bli 10,022 INTE 10,023.... Alltså INGEN avrundning uppåt.....
</citat>

Om 10,0229999999999999999999999 ska bli 10,023 så avrundar du uppåt. Det är inget mer att snacka om. Det handlar om hur nära 10,023 du måste hamna för att du ska avrunda uppåt. Du kanske får ta 1e-12 som limit om det är så.


Svara

Sv:FIX()

Postades av 2008-05-20 14:57:34 - Annelie Högström

Hej!

Du kanske kan skapa en if-sats?
Typ såhär:
om talet < talet avrundat
då ska resultatet vara det avrundade talet - 0,001

/Vän av knäppa lösningar :)


Svara

Sv: FIX()

Postades av 2008-05-20 15:09:54 - Niklas Jansson

Nej, nej. Det förvånar mig alltid att folk inte accepterar hur flyttal fungerar.


Svara

Sv:FIX()

Postades av 2008-05-20 15:29:52 - Niklas Rosenberg

Det som förvånar mig är att man får svar på frågor som man inte läst igenom..

Jag skrev att 10.022999999999999 skulle bli 10.022 INTE 10,023............
Jag vill alltså inte av runda alls uppåt....


Svara

Sv: FIX()

Postades av 2008-05-20 15:44:44 - Niklas Jansson

[citerat Niklas Rosenberg Medlem:15709 [FIX()]#267812]
<citat>
Det som förvånar mig är att man får svar på frågor som man inte läst igenom..
</citat>

För det första syftade jag till Annelies svar; flyttalsoperationer ska inte lösas med if-satser.



[citerat Niklas Rosenberg Medlem:15709 [FIX()]#267812]
<citat>
Jag skrev att 10.022999999999999 skulle bli 10.022 INTE 10,023............
Jag vill alltså inte av runda alls uppåt....
</citat>

Mmm... men det du har i ursprungsfrågan <b>är inte 10.023</b>, det är bara vad du tror att du har, det är vad du skriver in. Vad du i själva verket har är 10.029999999[nånting, beroende på datatyp], eftersom du har ett flyttal. Du kan _aldrig_ skriva in talet 10.023 i flyttal. Däremot med exakta datatyper som Int eller Decimal.


Svara

Sv: FIX()

Postades av 2008-05-20 16:12:01 - Anna-Karin Söderberg

Finns det inte något FormatNumber(tal,2) som kan lösa problemet, du skriver att du inte vill avrunda så du borde kunna kapa de siffror du inte vill ha kvar.


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 710
27 958
271 751
539
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies