Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    7

    [VB.NET] Come estrarre i numeri a destra della virgola

    Ciao a tutti, è da diversi giorni che cerco di estrarre i numeri che si trovano a destra della virgola, nel mio caso i primi due numeri a destra del numero 3487,149876 e cioè i numeri 7 e 6.

    La stessa cosa per estrapolare, questa volta, i primi tre numeri a sinistra della virgola, quindi 348.

    Però vorrei anche controllare i casi in cui il numero è il 34,12, in questo caso devo prendere il 12 ed il 34.

    Oppure ancora quando il numero è 2,21 in cui devo prendere il 2 ed il 21 e quando il numero è 23,1 in cui devo prendere il 23 e l'1.

    Grazie in anticipo
    Ultima modifica di ggaamm; 24-08-2014 a 23:18

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quote Originariamente inviata da ggaamm Visualizza il messaggio
    Ciao a tutti, è da diversi giorni che cerco ...
    Di che linguaggio parliamo ? Hai provato a scrivere del codice ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    7
    Si hai ragione, avevo dimenticato che sto utilizzando il Visual Basic 2008, per quando riguarda il codice, ho provato con mid e in parte funziona, ma solo per la parte di sinistra, questo il codice:
    primonumero = Mid(risultato, 1, 3)
    del numero 3487,149876 mi fornisce 348.

    Col vecchio basic nel commodore 64 avevo fatto questo programmino utilizzando right e left e funzionava discretamente, adesso non ci riesco proprio, certo non sono un esperto, un dilettante che si passa il tempo.

    Grazie
    Ultima modifica di ggaamm; 24-08-2014 a 23:28

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se è VB allora dovresti postare nella sezione adatta (ma ci penserà il moderatore).

    Per il problema, puoi utilizzare i metodi opportuni come questo

    http://msdn.microsoft.com/en-us/libr...v=vs.110).aspx
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    puoi cercare la posizione della virgola usando INSTR; poi, usando quella posizione, vai di MID

    posizione_virgola = instr(numero_completo, ",")
    numeri_a_destra = mid(stringa_intera, posizione_virgola)

    un metodo molto... basic, appunto


  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Non ho capito una cosa, stiamo parlando di numeri o di stringhe ??
    Nel tuo post continui a parlare di numeri, ma con Left e Right tratti le stringhe, non i numeri.
    Per estrarre la parte intera o la parte decimale dei numeri ci sono delle funzioni specifiche già pronte, guardati la classe Math e lì trovi tutto, se invece sono stringhe devi prima capire dove è la virgola (usando il metodo IndexOf) e poi puoi estrarre le varie parti senza problema.

    Sergio

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    7
    Ciao SirJo, si tratta di numeri, infatti del numero 3487,149876 devo estrarre i primi tre di sinistra (348) e i primi due di destra (76), ci sono altri casi come il numero 34,23 per il quale devo estrarre il 34 ed il 23, oppure il numero 1,234 in cui devo estrarre l'1 ed il 34, ect....
    Comunque ho dato una sbirciata alle funzioni Math ma non mi sembra che ci sia nulla, forse parzialmente riesce a fare qualcosa la funzione "Truncate" ma c'è il discorso della virgola.
    Fammi sapere.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    7
    Quote Originariamente inviata da optime Visualizza il messaggio
    puoi cercare la posizione della virgola usando INSTR; poi, usando quella posizione, vai di MID

    posizione_virgola = instr(numero_completo, ",")
    numeri_a_destra = mid(stringa_intera, posizione_virgola)

    un metodo molto... basic, appunto

    Adesso provo e Ti faccio sapere, speriamo bene, ciao

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    7
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Se è VB allora dovresti postare nella sezione adatta (ma ci penserà il moderatore).

    Per il problema, puoi utilizzare i metodi opportuni come questo

    http://msdn.microsoft.com/en-us/libr...v=vs.110).aspx
    Adesso provo, in qualche modo ci devo riuscire, grazie, ciao.

  10. #10
    Quote Originariamente inviata da ggaamm Visualizza il messaggio
    Adesso provo, in qualche modo ci devo riuscire, grazie, ciao.
    potresti usare il metodo split

    codice:
    Dim num As String()
    
            num = TextBox1.Text.Split(","c)
    
            Label1.Text = num(0).ToString & " - " & num(1).ToString
    ciao
    --

    __ [ K3iji ] __

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.