Messaggioda stellacometa2003 » 11/02/2006, 22:01

Secondo te dove sta l'errore??

Grazie mille del tuo preziosissimo aiuto!!!
Avatar utente
stellacometa2003
Senior Member
Senior Member
 
Messaggio: 1021 di 1844
Iscritto il: 03/10/2005, 21:11
Località: Cinisi (PA)

Messaggioda lorven » 11/02/2006, 22:07

For j = 0 To dimensione
vett2(j) = vettore(i) + vettore(i + 1)
i = i + 2
Next j


sostituisci con:

i = 1
For j = 1 To dimensione
vett2(j) = vettore(i) + vettore(i + 1)
i = i + 2
Next j

spero che basti, altrimenti mi copio il tuo progr. e ne verifico l'esecuzione.
Un giorno senza sorriso è un giorno perso.
Charlie Chaplin
Avatar utente
lorven
Junior Member
Junior Member
 
Messaggio: 78 di 369
Iscritto il: 06/12/2005, 20:55

Messaggioda stellacometa2003 » 11/02/2006, 22:09

Niente da fare..da sempre errore!!!

Però ho notato che facendo il debug dice tale errore su (parte rossa)

vettore(j) = vettore(i) + vettore(i + 1)
Avatar utente
stellacometa2003
Senior Member
Senior Member
 
Messaggio: 1022 di 1844
Iscritto il: 03/10/2005, 21:11
Località: Cinisi (PA)

Messaggioda lorven » 11/02/2006, 22:12

Posta il prg così com'è adesso, e domani ti do una risposta.
ciao :D
Un giorno senza sorriso è un giorno perso.
Charlie Chaplin
Avatar utente
lorven
Junior Member
Junior Member
 
Messaggio: 79 di 369
Iscritto il: 06/12/2005, 20:55

Messaggioda stellacometa2003 » 11/02/2006, 22:14

Private Sub Form_Load()
dimensione = InputBox("inserisci dimensione", "chiedi dimensione")
ReDim vettore(1 To dimensione)
For i = 1 To dimensione
vettore(i) = InputBox("inserisci il " & (i) & " elemento", "inserisci")
Next i
For i = 1 To dimensione - 1
For j = i + 1 To dimensione
If vettore(i) > vettore(j) Then
c = vettore(i)
vettore(i) = vettore(j)
vettore(j) = c
End If
Next j
Text1.Text = vettore(i)
Next i
Text1.Text = Text1.Text + " " + vettore(i)
If dimensione Mod 2 <> 0 Then
dimensione = dimensione / 2 + 1
Else
dimensione = dimensione / 2
End If
For j = 1 To dimensione
vettore(j) = vettore(i) + vettore(i + 1)
i = i + 2
Next j
Text2.Text = "" + vettore(j)
End Sub


GRAZIE DI TUTTO LORVEN!!!
Avatar utente
stellacometa2003
Senior Member
Senior Member
 
Messaggio: 1023 di 1844
Iscritto il: 03/10/2005, 21:11
Località: Cinisi (PA)

Messaggioda lorven » 12/02/2006, 11:30

Il programma corretto:
Codice:
Private Sub Form_Load()
dimensione = InputBox("inserisci dimensione", "chiedi dimensione")
ReDim vettore(1 To dimensione) As Integer
Text1.Text = ""
Text2.Text = ""
For i = 1 To dimensione
    vettore(i) = InputBox("inserisci il " & (i) & " elemento", "inserisci")
Next i
For i = 1 To dimensione - 1
    For j = i + 1 To dimensione
        If vettore(i) > vettore(j) Then
           c = vettore(i)
           vettore(i) = vettore(j)
           vettore(j) = c
        End If
        Next j
    Text1.Text = Text1.Text + " " + Str(vettore(i))
Next i
Text1.Text = Text1.Text + " " + Str(vettore(i))
If dimensione Mod 2 <> 0 Then
   dimensione = dimensione / 2 + 1
   Else
        dimensione = dimensione / 2
        End If
ReDim vett2(1 To dimensione) As Integer
i = 1
For j = 1 To dimensione
    vett2(j) = vettore(i) + vettore(i + 1)
    Text2.Text = Text2.Text + " " + Str(vett2(j))
    i = i + 2
Next j

End Sub

Gli errori del prg precedente: :evil:
- l'indice i valeva "dimensione" prima dell'ultimo ciclo e doveva, checchè tu ne dica, essere reimpostato a 1;
- i vettori non erano dichiarati numerici - c'è da fare la somma degli elementi;
- le somme, secondo le tue intenzioni, dovevano andare in un secondo vettore, vett2, ma venivano riassegnate allo stesso 1° vettore;
e qualche altra cosina.
Vale sempre l'osservazione che, data la natura del problema, si dovrebbe accettare come dimensione vettore solo un intero pari.
Ciao! :D
Un giorno senza sorriso è un giorno perso.
Charlie Chaplin
Avatar utente
lorven
Junior Member
Junior Member
 
Messaggio: 80 di 369
Iscritto il: 06/12/2005, 20:55

Messaggioda stellacometa2003 » 12/02/2006, 22:33

Una cosa però...
Perchè si utilizza la funzione Str??
Avatar utente
stellacometa2003
Senior Member
Senior Member
 
Messaggio: 1027 di 1844
Iscritto il: 03/10/2005, 21:11
Località: Cinisi (PA)

Messaggioda lorven » 12/02/2006, 22:37

Str converte un numero in stringa: nel textbox si possono visualizzare stringhe
Un giorno senza sorriso è un giorno perso.
Charlie Chaplin
Avatar utente
lorven
Junior Member
Junior Member
 
Messaggio: 81 di 369
Iscritto il: 06/12/2005, 20:55

Messaggioda stellacometa2003 » 12/02/2006, 22:40

Giusto giusto!!! Grazie ancora...
Gira perfettamente!!! Complimenti per le tue Ottime conoscenze!!!
Avatar utente
stellacometa2003
Senior Member
Senior Member
 
Messaggio: 1028 di 1844
Iscritto il: 03/10/2005, 21:11
Località: Cinisi (PA)

Precedente

Torna a Informatica

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite