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


Avrunda tal till närmsta tiotal

Postades av 2005-02-23 13:16:58 - Torbjörn Karlberg, i forum visual basic - allmänt, Tråden har 15 Kommentarer och lästs av 4678 personer

Hej!


Jag behöver Avrunda tal upp till närmsta tiotal

tex; 27 blir 30

Hur göra man ?


Tobbe


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-02-23 14:48:10 - Johan Djupmarker

Det bör fungera med:

(Int((tal - 0.00001) / 10) + 1) * 10

0.00001 väljs beroende på hur många decimaler talen du ska avrunda har... I detta fallet så blir det alltså fel om talet är mellan "tiotal - 0.00001" och "tiotal".


Om du vill ha till närmsat tiotal (som frågan var ställd först) så borde det bli:

Int(tal / 10 + 0.5) * 10

/Johan


Svara

Sv:Avrunda tal till närmsta tiotal

Postades av 2005-02-23 16:01:09 - Niklas Jansson

Kör med round och varianter istället.

Tal= Round(Tal/10)*10

Byt ut round mot fix eller någon av de andra för att få andra typer av avrundningar.


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-02-23 16:12:22 - Sven Åke Persson

Snabbt och kanske fel
<code>
Option Explicit
Private Sub Command1_Click()
Dim tal1 As Long, tal2 As Long, Svar As Long
'Jag låste på tex; 27 blir 30
tal1 = 27
tal2 = 30
Svar = tal2 Mod tal1
MsgBox Svar + tal1
End Sub
</code>
kolla fil Programarkivet:KontrollSiffra PersonNummer mfl. där jag just tar han dom detta problem


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-02-23 17:32:04 - Johan Djupmarker

<b>Tal= Round(Tal/10)*10

Byt ut round mot fix eller någon av de andra för att få andra typer av avrundningar.</b>

Round avrundar till närmsta tiotal och Fix avrundar nedåt, det finns väl ingen funktion som avrundar uppåt automatiskt?

/Johan


Svara

Sv:Avrunda tal till närmsta tiotal

Postades av 2005-02-23 17:36:34 - Johan Djupmarker

Sven, man vet ju inte från början att det är 30 som man ska avrunda till...?

Med inspiration från din lösning kom jag på att man borde kunna göra såhär om det rör sig om heltal:

tal + 10 - tal Mod 10

/Johan


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-02-24 08:44:14 - Sven Åke Persson

>tal + 10 - tal Mod 10

Javisst det var så jag egentligen menade.Har det i min Personnummerlösning
<code>
Ksum = 10 - (Ksum Mod 10)
If Ksum = 10 Then Ksum = 0
'Returnera resultatet
KontrollSiffra = CStr(Ksum)
</code>


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-02-24 08:52:13 - Johan Djupmarker

Svarar mig själv här... :)

<b>
Med inspiration från din lösning kom jag på att man borde kunna göra såhär om det rör sig om heltal:

tal + 10 - tal Mod 10</b>

Det blir ju fel när tal är ett jämt 10-tal...

/Johan


Svara

Sv:Avrunda tal till närmsta tiotal

Postades av 2005-02-24 10:40:57 - Torbjörn Karlberg

Tja Johan!

Det funkar bra med ditt första inlägg Tackar väldigt mycket för det:-)

Int(tal / 10 + 0.5) * 10

Tobbe


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-02-25 00:29:23 - Sven Åke Persson

Lite sur på dig Thorbjörn att du inte talade om att det skall vänd vid 0.5

Läs din frågeställning ! "Som man ropar får man svar"


Svara

Sv:Avrunda tal till närmsta tiotal

Postades av 2005-02-25 00:38:23 - Torbjörn Karlberg

Hej Sven!

Det ska det inte heller!

Kollade/tänkte inte på det, tack för att du tänkte på det.
Skall vara så här Int(tal / 10 + 1) * 10

Torbjörn


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-02-25 02:26:16 - Thomas Roman

<b>Skall vara så här Int(Tal / 10 + 1) * 10</b>

Det där blir väl fel om Tal redan är ett jämt tiotal. 10 blir 20, 20 blir 30 osv.
Rätt kod borde vara:
<code>
Int(Tal / 10 + 0.9) * 10
</code>


Thomas


Svara

Sv:Avrunda tal till närmsta tiotal

Postades av 2005-02-25 08:47:58 - Torbjörn Karlberg

Hej Thomas!

Eftersom jag vill använda denna funktion i mschart för maxvärde funker det som jag vill ha det.


Tobbe


Svara

Sv:Avrunda tal till närmsta tiotal

Postades av 2005-02-28 15:14:02 - Sam Borfors

Hmm, det beror på exakt vad man vill göra. Int retunerar ju heltalsdelen av ett tal, dvs. klipper bort alla decimaler. Är det detta som man vill göra så är ju ett vanligt Int(Tal/10)*10 det rätta om man vill klippa ner till helt tiotal.

Vill man använda funktionen Int för att göra korrekt avrundning så får man lägga till 0,5 innan man klipper decimalerna för att få korrekt avrunding: Int(Tal/10+0.5)*10. Vid avrundning till X så är det ju från X-0,5 till X+0,5 som man avrundar dit. Lägger man till 0,5 så blir det ju från X till X+1,0 vilket ju är detsamma som tunkering. Med tillägget 0,5 så kommer tal som slutar på ,5 att avrundas uppåt i alla fall, vill man ha något annat så får man lägga till lämpligt villkor.

Givetvis kan man också skriva Int ((Tal+5)/10)*10. Detta funkar med heltal med, om man tar bort Int funktionen: (( Tal+5) div 10)*10


Tycker nog ändå det verkar vettigast att använda inbyggd funktion för avrundning om det finns en så slipper man fundera på sådana här trick: Round(Tal/10)*10


Svara

Sv: Avrunda tal till närmsta tiotal

Postades av 2005-03-01 05:53:09 - Martin Adrian

>Int retunerar ju heltalsdelen av ett tal, dvs. klipper bort alla decimaler
Nix, Int avrundar alltid nedåt.
Int(-3.14) ger -4

Det finns många olika sätt att avrunda
1. Till närmaste heltal, 0,5 uppåt
2. Till närmaste heltal, 0,5 nedåt
3. Till närmaste heltal, 0,5 mot 0
4. Till närmaste heltal, 0,5 från 0
5. Till närmaste heltal, 0,5 till jämt heltal
6. Till närmaste heltal, 0,5 till udda heltal
7. Alltid avrunda uppåt
8. Alltid avrunda nedåt
9. Avrunda mot 0
10. Avrunda från 0

>Tycker nog ändå det verkar vettigast att använda inbyggd funktion för avrundning om det finns en så slipper man
>fundera på sådana här trick: Round(Tal/10)*10
Konstigt resonemang. Det beror väl på vilken avrundning man vill ha

"Int(Tal+0.5)" är typ 1
"Round(Tal) är typ 5
"Int(Tal)" är typ 8


Svara

Sv:Avrunda tal till närmsta tiotal

Postades av 2005-03-01 09:41:59 - Sam Borfors

>Nix, Int avrundar alltid nedåt.

Sant, uttryckte mig inte så klar eftersom jag tänkte på positiva tal bara.


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

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 569 614
27 953
271 709
497
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