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
    sabato 01 agosto 2026
    Bari
    46
    54
    36
    47
    01
    Cagliari
    77
    30
    04
    79
    18
    Firenze
    84
    76
    10
    27
    44
    Genova
    32
    13
    71
    38
    46
    Milano
    10
    23
    18
    20
    03
    Napoli
    73
    36
    10
    90
    07
    Palermo
    61
    46
    24
    57
    32
    Roma
    89
    78
    23
    07
    35
    Torino
    21
    59
    34
    73
    86
    Venezia
    74
    01
    30
    46
    54
    Nazionale
    71
    65
    17
    09
    20
    Estrazione Simbolotto
    Nazionale
    03
    09
    37
    30
    39

Ultimi Messaggi

Indietro
Alto