Novità

LuigiB: StringaNumeri si mangia elementi ?

gennaro

Senior Member
Salve Luigi, come al solito mi imbatto in fenomeni strani ehehheehe :)

Codice:
'Spaziometria v1.4.26

Sub Main
Dim vettore(4)
    
    vettore(1) = 4
    vettore(2) = 3
    vettore(3) = 0
    vettore(4) = 6
    
    Scrivi StringaNumeri(vettore)
    
    Scrivi String(10,"-")
    
    For k = 1 To 4
        Scrivi vettore(k) & "/",,0
    Next
End Sub

Come mai StringaNumeri non visualizza gli elementi nulli?
Fu progettata proprio cosi? In tal caso come posso visualizzare (scrivi) il contenuto di un vettore senza usare un ciclo for/next?
Ed inoltre di una matrice non posso visualizzare SOLO una riga o una colonna? Esiste soltanto ScriviMatrice?

Il tuo solito rompiglione ;)

Codice:
[COLOR=#000000][FONT=Courier New]4.3.6
[/FONT][/COLOR][COLOR=#000000][FONT=Courier New]---------- [/FONT][/COLOR][COLOR=#000000][FONT=Courier New]
[/FONT][/COLOR][FONT=Courier New][SIZE=2][COLOR=#000000]4/[/COLOR][/SIZE][/FONT][SIZE=2][COLOR=#000000]3/[/COLOR][/SIZE][SIZE=2][COLOR=#000000]0/[/COLOR][/SIZE][SIZE=2][COLOR=#000000]6/
[/COLOR][/SIZE]
 
ciao Gennaro , è ovvio che è stata progettata cosi , lo 0 non è un numero possibile da giocare nel lotto , d'altra parte
scriversi un propria funzione StringaNumeri che scriva pure gli 0 è di una banalità estrema.
Tempo fa spiegai l'uso dell'istruzione includi esortando gli scripter a crearsi un proprio modulo di funzioni riutilizzabbili.
Lo rispiego :

ti fai la tua bella funzione ScriviStringaNumeriConZero
salvi il file dove ti pare

poi nei tuoi script con l'istruzione includi richiami il file come lo hai salvato e potrai usare la tua funzione senza doverla riscrivere.

passiamo all'esempio pratico

crea un nuovo script e incolla la funzione

Codice:
Function StringaNumeriConZero(aNumeri)
	Dim k , s
	
	For k = 1 To UBound(aNumeri)
		s = s & aNumeri(k) & "."
	Next

	If s <> "" Then
		s = Left(s,Len(s) - 1) ' elimino l'ultimo separatore
		
		StringaNumeriConZero = s
	End If
End Function

salva lo script da qualche parte dove vuoi (consiglio una cartella apposta da chiamare Funzioni)

poi crea questo nuovo script (nota che devi modificare il percorso del file con quello che hai salvato tu)

Codice:
Includi "C:\Documents and Settings\Administrator\Dati applicazioni\SpazioMetria\Script\Funzioni\test.ls"

Option Explicit
Sub Main
	
	Dim vettore(4)

	vettore(1) = 4
	vettore(2) = 3
	vettore(3) = 0
	vettore(4) = 6
	
	Call Scrivi(StringaNumeriConZero(vettore))
End Sub


ora i compiti per casa sono aggiungere a questo file un'altra funzione che ti stampi il vettore di cui parlavi.


ciao
 
Ultima modifica di un moderatore:
Ok Luigi... lo avevo intuito che tale funzione era stata costruita per i numeri interi non nulli :)
Mi accingo ad infoltire la MyLibrary.ls con la visualizzazione per riga e per colonna delle matrici ... almeno ci provo!
 
Mumble....troppo semplice per esserci riuscito :)

Codice:
'Spaziometria v1.4.26
Sub Main
    Dim matr(1,2)
    matr(0,0) = 3
    matr(0,1) = 4
    matr(0,2) = 0
    matr(1,0) = 2
    matr(1,1) = 0
    matr(1,2) = 1
    ScriviMatrice(matr)
    Call RIGA_Matrice(2,matr)
    Call COLONNA_Matrice(1,matr)
    Call ELEMENTO_Matrice(2,3,matr)
End Sub


Function RIGA_Matrice(idRiga,idMatrice)
    Scrivi "La riga " & idRiga & " risulta : "
    For k = 0 To UBound(idMatrice,2)
        Scrivi idMatrice(idRiga - 1,k)
    Next
End Function


Function COLONNA_Matrice(idColon,idMatrice)
    Scrivi "La colonna " & idColon & " risulta : "
    For k = 0 To UBound(idMatrice,1)
        Scrivi idMatrice(k,idColon - 1)
    Next
End Function


Function ELEMENTO_Matrice(idRiga,idColon,idMatrice)
    Scrivi "Alla posizione (" & idRiga & "," & idColon & ") c'e' : "
    Scrivi idMatrice(idRiga - 1,idColon - 1)
End Function
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 15 settembre 2026
    Bari
    03
    02
    53
    44
    29
    Cagliari
    85
    81
    31
    53
    23
    Firenze
    27
    40
    34
    71
    81
    Genova
    55
    62
    72
    63
    27
    Milano
    79
    09
    49
    80
    68
    Napoli
    58
    90
    88
    77
    50
    Palermo
    45
    39
    22
    08
    31
    Roma
    39
    41
    04
    54
    63
    Torino
    53
    08
    80
    58
    54
    Venezia
    63
    51
    69
    09
    74
    Nazionale
    16
    45
    75
    60
    18
    Estrazione Simbolotto
    Palermo
    44
    32
    03
    31
    15
Indietro
Alto