Salve a tutti, il mio primo messaggio sul forum!
Per la prima volta mi trovo un po' in difficoltà nella programmazione e mi rivolgo a voi, sperando che qualcuno riesca ad aiutarmi!

Allora... cominciamo :P
Il testo dell'esercizio recita così:

Dati in input per ogni cliente di una azienda commerciale le seguenti istruzioni:

- Ragione sociale
- Partita IVA
- Fatturato annuo

Determinare:

- La Partita IVA dell'azienda con fatturato annuo più alto
- Elenco delle aziende con fatturato annuo < 100.000€
- Elenco delle aziende in ordine di fatturato
- Partita IVA e fatturato di una azienda la cui ragione sociale sia data in input (Ricerca dicotomica)
- Il fatturato medio
Non riesco a risolvere il quarto punto, da fare obbligatoriamente con la ricerca dicotomica o binaria. Questo come ho tentato di risolvere l'esercizio.

Private Sub Command5_Click()
cerca = InputBox("Quale azienda cerchi?")
primo = 1
ultimo = quante
i = 0
trovato = False


Do
medio = CInt((primo + ultimo) / 2)
If (ragsociale(medio)) = cerca Then
MsgBox (iva(medio))
MsgBox (fatturato(medio))
trovato = True
Else
If (ragsociale(medio)) < cerca Then
primo = medio + 1
Else
ultimo = medio - 1
End If
End If
Loop Until (trovato = True Or primo >= ultimo)

End Sub
Qua, per comodità, potete leggere la versione indentata!

Ovviamente tutti gli array e variabili, nonostante la dichiarazione di queste ultime non sia obbligatoria, son dichiarati. Purtroppo il risultato in output varia: certi li risolve correttamente mentre in altri casi va in loop infinito e non manda, ovviamente, nulla in output.

Qualche consiglio? Grazie mille