logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

szybkie pytanko: BASCOM podstawienie [byte]=[single] jak?

lukamar 14 Sty 2004 20:52 2138 4
REKLAMA
  • #1 475515
    lukamar
    Poziom 11  
    Posty: 51
    jak mozna podstawic single pod byte?
    Np

    dim A as single
    dim B as byte

    B=A

    end
  • REKLAMA
  • #2 475641
    euromatic
    Poziom 21  
    Posty: 422
    Pomógł: 17
    Ocena: 14
    to tak jak byś chciał włożyć słonia do pudełka pa zapałkach.
    zmienna single to 4 bajty
    a byte to 1 bajt czyli 8 bitów
    wiec jeżeli wartosc zawarta w single jest nie wieksza niż 255 to da się to zrobić
    ale jeżeli jest w niej np. 100000 to nie da rady
  • REKLAMA
  • #3 475659
    lukamar
    Poziom 11  
    Posty: 51
    no nie jest to takie oczywiste do konca.

    Jasne, ze nie chce podstawiac liczby wiekszej od 255

    problemem jest wlasnie te 4 bajty
    chce miec powiedzmy jakas wieksza tablice pomiarow, ale nie zrobie jej single bo zajmie 4 razy wiecej. A mnie BYTE wystarczy.

    Ale nie wiem jak obejsc to podstawienie, a musi byc, bo bascom wyrzuca niezgodnosc typow. Moze jest jakas funkcja ktora to robi(jakies zaokraglenie) ?
  • REKLAMA
  • #4 475710
    sdzyx
    Poziom 17  
    Posty: 279
    Pomógł: 1
    Ocena: 3
    hmmm a czytales tą instr progr do bascoma ze stronki mcselec? o ile mnie pamiec nie myli to gdzies w poczatkowych stronach bardzo precyzyjnie ktos opisal tą czynnosc....
  • #5 475719
    lukamar
    Poziom 11  
    Posty: 51
    Udalo mi sie w ten sposob, nie wiem czy jest fachowy ale dziala:

    Dim T As String * 3
    Dim Liczba1 As Single
    Dim Liczba2 As Byte


    Liczba1 = 183.9345345
    T = Fusing(liczba1 , #)
    Liczba2 = Val(t) 'pod liczba2 podstawi zaokraglona wartosc Liczba1
REKLAMA