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ì 16 dicembre 2025
    Bari
    78
    53
    62
    77
    16
    Cagliari
    15
    58
    32
    39
    24
    Firenze
    85
    20
    39
    32
    29
    Genova
    17
    60
    15
    33
    43
    Milano
    13
    39
    14
    15
    34
    Napoli
    82
    76
    15
    24
    73
    Palermo
    40
    55
    78
    26
    08
    Roma
    23
    41
    17
    53
    76
    Torino
    52
    20
    70
    59
    65
    Venezia
    43
    58
    19
    08
    09
    Nazionale
    71
    55
    60
    04
    35
    Estrazione Simbolotto
    Venezia
    28
    37
    27
    40
    10
Indietro
Alto