Hvor d er din double. Pga. præcisionen af double kan det være at du er interesseret i at anvende en anden threshold værdi end 0, alt afhængig af hvor store tal du arbejder med og hvor præcist du arbejder.
Problemet er at double ikke er decimalt baseret men binaert baseret. Og derfor er det lidt arbitraet hvornaar man vil sige at der er en decimal eller ej.
Brug typen decimal hvis du vil have bedre styr paa decimaler.
Lige en note. Du kan godt komme i problemer, ved bare at søge efter et komma. Hvis en computer er indstillet så den tror den er i USA, så vil du få fejl, da de der bruger punktum.
Hvis du bruger løsningen at først konvertere til en streng, hvor du derefter søger strengen igennem for at finde decimal tegnet. Da bør i det mindste søge efter et punktum, i tillæg til et komma.
Jeg har oplevet et lignende problem, da et program pludselig holdt op med at virke hos en kunde. Det viste sig at være et lignende problem. Et andet program kunden havde købt, gik automatisk ind og ændrede region-opsætningen, så den gik efter Amerikansk standard. Hvis vi manuelt gik ind og ændrede det tilbage, virket dette andet programmet ikke. Og så længe den stod på Amerikansk opsætning, virkede vores program ikke på computeren. Lidt pinligt for os. Det var heldigvis ikke mig der havde skrevet programmet :-).
tak for påmindelsen, jeg skulle dog ikke bruge løsningen til et firma, men til mig selv, i forbindelse med automatisk generering af matematikopgaver til nogle skoleelever :-)
Synes godt om
Ny brugerNybegynder
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.