Из Сантиметров В Дюймы И Футы

Тема в разделе "Visual Basic", создана пользователем CaptainBob, 7 янв 2014.

  1. CaptainBob

    CaptainBob Member

    Регистрация:
    3 янв 2014
    Сообщения:
    5
    Симпатии:
    0
    нужен код преобразования сантиметров в дюймы и футы, чтобы результат показывал отдельно футы и дюймы (надо целое число футов и дюймы после конверсии дюмов в футы, например 180 см это 5 футов и 11 дюймов)
    есть набросок, но не работает
    спасибо
    Код (LotusScript):
     Dim Cms As Double
    Dim Inches1 As Integer
    Dim Inches2 As Integer
    Dim Feet As Integer


    Cms = CInt(txtCms.Text)



    Inches1 = Cms * 0.3937
    Feet = Inches1 / 12
    Inches2 = Inches1 - Feet * 12

    '3. Output-Display appropriate answer
    MsgBox("Answer is: " & Feet & " feet, " & Inches2 & " inches.")
    Можно ли округлить Feet перед тем как делать следующее действие до целого числа или проблема в input?
     
  2. FelixMacintosh

    Регистрация:
    6 янв 2014
    Сообщения:
    21
    Симпатии:
    6
    Насколько мне известно некоторые типы данных
    не поддерживают дробные значения

    Cms = CInt(txtCms.Text) ты пытался конвертировать в числовой тип Integer

    хотя у тебя объявлен Double Dim Cms As Double

    правильней было бы так
    Cms = Cdbl(txtCms.Text)

    а если надо округлить то используй следущие функции

    Cms = Fix(txtCms.Text)
    округление до целой части

    то же самое что и Cms = Int(txtCms.Text) только в отрицательных числах до ближайшего нуля

    советую переделать программу так
    чтобы изпользуемые значения
    были с типом Double
    а результат всегда можно округлить
     
  3. FelixMacintosh

    Регистрация:
    6 янв 2014
    Сообщения:
    21
    Симпатии:
    6
    Если берёшся делать прогу, где используются дробные значения
    или как ещё говорят значения с плавающей точкой то
    по моему мнению лучше всего подходит Double

    всё дело в том сколько байт в памяти хранит
    определенный тип данных
    например у Double 8 байт

    быстрее всего работает тип Long лично я использую везде где только можно
    у Long 4 байта в памяти (32 бит)
    кстате тоже нельзя использовать для дробных
    значений


    объявить можно
    либо так Dim cms as Double
    либо так Dim cms# (Dim mylong& для объявления Long)

    пример как я делаю функции

    Код (LotusScript):
    Public Function Result&( x&, y&, z& )
    result= x * y * z
    End Function
    возвращаемый тип Long
     
Загрузка...

Поделиться этой страницей