yezper Nybegynder
30. december 2008 - 20:53 Der er 7 kommentarer og
1 løsning

[VB.NET] Konvertering af cm til fod og tommer

Hej alle,

Jeg har brug for at konvertere Europæiske cm til formatet 6'8" (6 fod, 8 tommer.)

Er der nogen som kan hjælpe med dette?
arne_v Guru
30. december 2008 - 20:55 #1
1 engelsk tomme = 2.54 cm
1 engelsk fod = 12 engelske tommer = 30.48 cm
arne_v Guru
30. december 2008 - 21:01 #2
Så:

Dim fod As Integer = CType(Math.Floor(cm / 30.48), Integer)
Dim tommer As Integer = CType(Math.Floor(cm - fod*30.48), Integer)
yezper Nybegynder
30. december 2008 - 21:11 #3
Tusind tak - det virker perfekt :)
Smider du et svar?
arne_v Guru
30. december 2008 - 21:15 #4
kommer her
yezper Nybegynder
30. december 2008 - 21:21 #5
Ved yderligere tjek - det gør det faktisk ikke.

Har følgende function:

        Public Shared Function ConvertCmToFeet(ByVal cm As Double) As String
            Dim feet As Integer = 0
            Dim inches As Double = 0
            Dim feetandinches As String = ""

            feet = CType(Math.Floor(cm / 30.48), Integer)
            inches = CType(Math.Floor(cm - feet * 30.48), Integer)

            feetandinches = feet & "'" & inches & """"

            Return feetandinches
        End Function


Som bruges på følgende måde:

            ' Populate Weight Dropdown
            Dim kg As Double = 0
            Dim lbs As String = ""

            For kg = 35 To 250
                lbs = ConvertKgToLbs(kg)

                l = New ListItem
                l.Value = kg
                l.Text = lbs & " (" & kg & " kg)"

                drpWeight.Items.Add(l)

                l = Nothing
            Next



Resultatet er en liste, som ser således ud:


    [...]
    <option value="153">5'0&quot; (153 cm)</option>
    <option value="154">5'1&quot; (154 cm)</option>
    <option value="155">5'2&quot; (155 cm)</option>
    <option value="156">5'3&quot; (156 cm)</option>
    <option value="157">5'4&quot; (157 cm)</option>
    <option value="158">5'5&quot; (158 cm)</option>
    <option value="159">5'6&quot; (159 cm)</option>
    <option value="160">5'7&quot; (160 cm)</option>
    <option value="161">5'8&quot; (161 cm)</option>
    <option value="162">5'9&quot; (162 cm)</option>
    <option value="163">5'10&quot; (163 cm)</option>
    <option value="164">5'11&quot; (164 cm)</option>
    <option value="165">5'12&quot; (165 cm)</option>
    <option value="166">5'13&quot; (166 cm)</option>
    <option value="167">5'14&quot; (167 cm)</option>
    <option value="168">5'15&quot; (168 cm)</option>
    <option value="169">5'16&quot; (169 cm)</option>
    <option value="170">5'17&quot; (170 cm)</option>
    <option value="171">5'18&quot; (171 cm)</option>
    <option value="172">5'19&quot; (172 cm)</option>
    <option value="173">5'20&quot; (173 cm)</option>
    <option value="174">5'21&quot; (174 cm)</option>
    <option value="175">5'22&quot; (175 cm)</option>
    <option value="176">5'23&quot; (176 cm)</option>
    <option value="177">5'24&quot; (177 cm)</option>
    <option value="178">5'25&quot; (178 cm)</option>
    <option value="179">5'26&quot; (179 cm)</option>
    <option value="180">5'27&quot; (180 cm)</option>
    <option value="181">5'28&quot; (181 cm)</option>
    <option value="182">5'29&quot; (182 cm)</option>
    <option value="183">6'0&quot; (183 cm)</option>
    <option value="184">6'1&quot; (184 cm)</option>
    <option value="185">6'2&quot; (185 cm)</option>
    <option value="186">6'3&quot; (186 cm)</option>
    <option value="187">6'4&quot; (187 cm)</option>
    <option value="188">6'5&quot; (188 cm)</option>
    <option value="189">6'6&quot; (189 cm)</option>
    <option value="190">6'7&quot; (190 cm)</option>
    <option value="191">6'8&quot; (191 cm)</option>
    <option value="192">6'9&quot; (192 cm)</option>
    <option value="193">6'10&quot; (193 cm)</option>
    <option value="194">6'11&quot; (194 cm)</option>
    <option value="195">6'12&quot; (195 cm)</option>
    <option value="196">6'13&quot; (196 cm)</option>
    <option value="197">6'14&quot; (197 cm)</option>
    <option value="198">6'15&quot; (198 cm)</option>
    <option value="199">6'16&quot; (199 cm)</option>
    <option value="200">6'17&quot; (200 cm)</option>
    <option value="201">6'18&quot; (201 cm)</option>
    <option value="202">6'19&quot; (202 cm)</option>
    <option value="203">6'20&quot; (203 cm)</option>
    <option value="204">6'21&quot; (204 cm)</option>
    <option value="205">6'22&quot; (205 cm)</option>
    <option value="206">6'23&quot; (206 cm)</option>
    <option value="207">6'24&quot; (207 cm)</option>
    <option value="208">6'25&quot; (208 cm)</option>
    <option value="209">6'26&quot; (209 cm)</option>
    <option value="210">6'27&quot; (210 cm)</option>
    <option value="211">6'28&quot; (211 cm)</option>
    <option value="212">6'29&quot; (212 cm)</option>
    <option value="213">6'30&quot; (213 cm)</option>
    <option value="214">7'0&quot; (214 cm)</option>
    <option value="215">7'1&quot; (215 cm)</option>
    <option value="216">7'2&quot; (216 cm)</option>
    <option value="217">7'3&quot; (217 cm)</option>
    <option value="218">7'4&quot; (218 cm)</option>
    <option value="219">7'5&quot; (219 cm)</option>
    <option value="220">7'6&quot; (220 cm)</option>
    [...]


Der er altså fejl - der går 12 tomme på en fod, så når man når til 5'11" skal der altså skiftes til 6'0", men her går vi helt op til 5'30", før der skiftes til 6 fod.

Kan du se problemet?
arne_v Guru
30. december 2008 - 21:24 #6
Jeg glemte at dividere med 2.54 - så:

Dim fod As Integer = CType(Math.Floor(cm / 30.48), Integer)
Dim tommer As Integer = CType(Math.Floor((cm - fod*30.48) / 2.54), Integer)
yezper Nybegynder
30. december 2008 - 21:29 #7
Så får jeg følgende:

    [...]
    <option value="145">4'97&quot; (145 cm)</option>
    <option value="146">4'98&quot; (146 cm)</option>
    <option value="147">4'99&quot; (147 cm)</option>
    <option value="148">4'100&quot; (148 cm)</option>
    <option value="149">4'101&quot; (149 cm)</option>
    <option value="150">4'102&quot; (150 cm)</option>
    <option value="151">4'103&quot; (151 cm)</option>
    <option value="152">4'104&quot; (152 cm)</option>
    <option value="153">5'93&quot; (153 cm)</option>
    <option value="154">5'94&quot; (154 cm)</option>
    <option value="155">5'95&quot; (155 cm)</option>
    <option value="156">5'96&quot; (156 cm)</option>
    <option value="157">5'97&quot; (157 cm)</option>
    <option value="158">5'98&quot; (158 cm)</option>
    <option value="159">5'99&quot; (159 cm)</option>
    <option value="160">5'100&quot; (160 cm)</option>
    <option value="161">5'101&quot; (161 cm)</option>
    <option value="162">5'102&quot; (162 cm)</option>
    <option value="163">5'103&quot; (163 cm)</option>
    <option value="164">5'104&quot; (164 cm)</option>
    <option value="165">5'105&quot; (165 cm)</option>
    <option value="166">5'106&quot; (166 cm)</option>
    <option value="167">5'107&quot; (167 cm)</option>
    <option value="168">5'108&quot; (168 cm)</option>
    <option value="169">5'109&quot; (169 cm)</option>
    <option value="170">5'110&quot; (170 cm)</option>
    <option value="171">5'111&quot; (171 cm)</option>
    <option value="172">5'112&quot; (172 cm)</option>
    <option value="173">5'113&quot; (173 cm)</option>
    <option value="174">5'114&quot; (174 cm)</option>
    <option value="175">5'115&quot; (175 cm)</option>
    <option value="176">5'116&quot; (176 cm)</option>
    <option value="177">5'117&quot; (177 cm)</option>
    <option value="178">5'118&quot; (178 cm)</option>
    <option value="179">5'119&quot; (179 cm)</option>
    <option value="180">5'120&quot; (180 cm)</option>
    <option value="181">5'121&quot; (181 cm)</option>
    <option value="182">5'122&quot; (182 cm)</option>
    <option value="183">6'111&quot; (183 cm)</option>
    <option value="184">6'112&quot; (184 cm)</option>
    <option value="185">6'113&quot; (185 cm)</option>
    <option value="186">6'114&quot; (186 cm)</option>
    [...]

Hvilket jo heller ikke er rigtigt?
yezper Nybegynder
30. december 2008 - 22:02 #8
Ah, jeg glemte paranteserne.
Tak for hjælpen :)
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

Opret Preview

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





CIO
Skandalerne i Skat er en urimelig sejr for de digitaliserings-modvillige
Klumme: Skandalerne i Skat er en vigtig sejr for dem, som ikke tror på digitalisering af den offentlige sektor. Og Skats problemer bliver ikke løst af organisationsændringer.
Comon
25.000 danskere gået i kuponsvindel-fælde på Facebook på blot seks timer: "Det spredte sig som en steppebrand"
Fakta, Netto, Aldi, Lidl, Lego og flere andre varemærker bliver lige nu udnyttet i forbindelse med kuponsvindel på Facebook, og danskerne klikker i hobetal. Læs hvad der sker, hvis du klikker.
Channelworld
Dansk hosting-direktør: På disse tre områder banker danske hosting-firmaer Microsoft og Amazon af banen
Den danske hostingbranche er godt polstret til at modstå konkurrencen fra globale cloud-spillere som Amazon og Microsoft. Her er tre grunde til, at danske hostingudbydere ikke blæser omkuld i konkurrencen.
White paper
Innovation gennem intelligent forretningsdrift
Intelligent Business Operations gør det muligt at transformere missionskritisk indsigt til den rette handling og derved styrke forretningen.