Autore Topic: Compitino per casa sulla Concatenazione delle Stringhe  (Letto 1548 volte)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.157
  • Tonno verde
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #15 il: 29 Novembre 2016, 18:07:46 »
avendo invece un'altra interessante modalità per le mani !

Ah, ho capito!

nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.270
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #16 il: 29 Novembre 2016, 19:06:14 »
Si, si sempre a cercare il pelo nell'uovo...
Non fare il levantino, ché ......
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.270
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #17 il: 29 Novembre 2016, 20:12:33 »
avendo invece un'altra interessante modalità per le mani !

Ah, ho capito!
Dicevo sempre con riferimento agli array di tipo String !    :hatecomputer:
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.157
  • Tonno verde
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #18 il: 29 Novembre 2016, 22:49:57 »
One more
Codice: [Seleziona]
Public Sub Main()

  Dim s1 As String = "aaa"
  Dim s2 As String = "bbb" 
  Dim unica As String
 
  unica = "*Y"
  unica = Replace(unica, "*", s1)
  unica = Replace(unica, "Y", s2)
  Print unica

End
:ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.270
  • Ne mors quidem nos iunget
    • Mostra profilo
« Ultima modifica: 30 Novembre 2016, 10:47:16 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.270
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #20 il: 30 Novembre 2016, 11:04:07 »
Oggi do il mio contributo.

1) Uso del Metodo .Join( ) fornito dalle variabili vettoriali del tipo string[ ]:
Codice: [Seleziona]
Public Sub Main()
 
  Dim s1, s2, unica As String
  Dim ss As New String[]

    s1 = "aaa"
    s2 = "bbb"
 
    ss.Push(s1)
    ss.Push(s2)
   
    unica = ss.Join(Null, Null)
   
    Print unica
 
End


2) Uso di una variabile vettoriale di tipo Byte[ ] e della funzione Asc( ):
Codice: [Seleziona]
Public Sub Main()

  Dim s1, s2, unica As String
  Dim bb As Byte[]
  Dim b As Byte
 
    s1 = "aaa"
    s2 = "bbb"
   
    bb = Byte[].FromString(s1)
   
    For b = 1 To Len(s2)
      bb.Push(Asc(s2, b))
    Next
   
    unica = bb.ToString(0, bb.Count)
   
    Print unica
   
End


3) Uso di un Puntatore e dei Memory Stream:
Codice: [Seleziona]
Public Sub Main()
 
  Dim s1, s2, unica As String
  Dim p As Pointer
  Dim st As Stream
 
    s1 = "aaa"
    s2 = "bbb"
   
    p = Alloc(SizeOf(gb.Byte), Len(s1) + Len(s2))
   
    st = Memory p For Write
    Write #st, s1
    Write #st, s2
    st.Close
   
    unica = String@(p)
   
    Print unica
   
    Free(p)
 
End


4) Analogo al precedente punto 3), ma usando un file temporaneo:
Codice: [Seleziona]
Public Sub Main()
 
  Dim s1, s2, t, unica As String
  Dim fl As File
 
    s1 = "aaa"
    s2 = "bbb"
   
    t = Temp()
   
    fl = Open t For Create
    Write #fl, s1
    Write #fl, s2
    fl.Close
   
    unica = File.Load(t)
    Print unica
 
End
« Ultima modifica: 01 Dicembre 2016, 17:39:05 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.157
  • Tonno verde
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #21 il: 30 Novembre 2016, 21:12:27 »
Ah ecco a cosa ti riferivi a Join (Wayne), in realtà lo sapevo ( :angel:) ma sapevo anche che se ti lasciavo a te il compito di scriverla avresti commesso un errore da matita rossa e avrei così potuto vendicarmi di tutte le botte che mi hai dato in questo post   :rolleyes:
Infatti ti sei dimenticato che le array sono oggetti e pertanto prima di usarli vanno istanziati  :devil:
Per me l'insufficienza con l'aggravante del delicato ruolo non te la toglie nessuno  :rotfl:

 :P :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.270
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #22 il: 30 Novembre 2016, 22:16:01 »
Infatti ti sei dimenticato che le array sono oggetti e pertanto prima di usarli vanno istanziati
Non l'ho dimenticato, ma sono stato vittima della fretta: ho copiato in parte il codice del secondo esempio (quello con il Byte[ ]), laddove non necessita di creazione dell'oggetto array a priori.
Ho comunque apportato lì la correzione.


Per me l'insufficienza con l'aggravante del delicato ruolo non te la toglie nessuno
Condivido. Penserei anche ad una punizione esemplare che adotto motu proprio: vietarmi di inserire altri "Compitini per casa" in futuro.   
« Ultima modifica: 30 Novembre 2016, 23:40:34 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.157
  • Tonno verde
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #23 il: 30 Novembre 2016, 22:50:52 »

Non l'ho dimenticato, ma sono stato vittima della fretta...
Lo immaginavo  :D e devo confessare che Join non lo conoscevo, sospettavo che ci fosse qualcosa di opposto a Split ma non l'ho trovato  ;D
Citazione
Per me l'insufficienza con l'aggravante del delicato ruolo non te la toglie nessuno
Comunque condivido. Penserei anche ad una punizione esemplare che adotto motu proprio: vietarmi di inserire altri "Compitini per casa" in futuro.   
Ma questa non è una punizione, è un premio.  :P
Però hai ragione che senso ha se si partecipa così in pochi?
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.270
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #24 il: 30 Novembre 2016, 23:38:54 »
Ma questa non è una punizione, è un premio.
...ed infatti ho preso la palla al balzo !    :devil:
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline kicco

  • Senatore Gambero
  • ******
  • Post: 1.702
  • So dove andare, seguitemi, ci perderemo insieme!
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #25 il: 01 Dicembre 2016, 13:33:37 »
...ragazzi, mi fate paura! :P
Citazione
Però hai ragione che senso ha se si partecipa così in pochi?
...e forse non solo a me!  :P :P

Chi ha paura muore ogni giorno, chi non ha paura muore una volta sola. (Paolo Borsellino)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.157
  • Tonno verde
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #26 il: 01 Dicembre 2016, 13:56:18 »
 :rotfl: :rotfl: :rotfl:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.270
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #27 il: 01 Dicembre 2016, 14:41:25 »
...ragazzi, mi fate paura!

...in che senso ?    :-\
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline kicco

  • Senatore Gambero
  • ******
  • Post: 1.702
  • So dove andare, seguitemi, ci perderemo insieme!
    • Mostra profilo
Re:Compitino per casa sulla Concatenazione delle Stringhe
« Risposta #28 il: 01 Dicembre 2016, 16:54:20 »
Citazione
...in che senso ?   
Che a noi esseri terreni non è dato raggiungere tali vertici  :P e a parte la concatenazione con "&" il resto ci appare come l'esercizio di abili contorsionisti che quando pensi abbiano raggiunto il massimo possibile, proseguono con un esercizio ancora più acrobatico...
Il pubblico applaude :D :D :D :D

PS: Ovviamente ho imparato anch'io e adesso riesco a toccarmi le punte dei piedi :)
 :ciao: :ciao: :ciao:
Chi ha paura muore ogni giorno, chi non ha paura muore una volta sola. (Paolo Borsellino)