Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 42
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    7

    Uscire dal ciclo.

    Ragazzi mi sto esaurendo. Lo so che è una sciocchezza ma non riesco a risolvere un problema con vb.

    Praticamente devo risolvere un problema, ve lo scrivo così facciamo prima:
    nelle gare di tuffi ogniuno dei 10 giudici di gara attribuisce al concorrente un punteggio; il punteggio finale viene ottenuto calcolando la media, dopo aver scartato il valore più basso e il valore più alto fra i punteggi ottenuti. scrivere un programma che, per un certo numero di concorrenti, riceva in input il nome e i relativi 10 punteggi e produca in output il punteggio finale di ciascun concorrente.

    Oh, il problema ora dove sta, che quando il programma entra nel ciclo (se ad esempio inserisco 5 concorrenti) arrivati a 5 concorrenti non esce dal ciclo ma continua a far inserire il nome e i punteggi.

    Help me!!!!!!!
    Bella.

  2. #2
    Mostra il codice che usi e dicci la versione di VB che utilizzi.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    7
    vb6.0
    il codice è questo:

    Private Sub elabora_Click()


    While CONTAC < NC

    If P1 > P2 Then
    MAX = P1
    Else
    MIN = P2
    End If

    If P3 > MAX Then
    MAX = P3
    Else
    If P3 < MIN Then
    MIN = P3
    End If
    End If

    If P4 > MAX Then
    MAX = P4
    Else
    If P4 < MIN Then
    MIN = P4
    End If
    End If

    If P5 > MAX Then
    MAX = P5
    Else
    If P5 < MIN Then
    MIN = P5
    End If
    End If

    If P6 > MAX Then
    MAX = P6
    Else
    If P6 < MIN Then
    MIN = P6
    End If
    End If

    If P7 > MAX Then
    MAX = P7
    Else
    If P7 < MIN Then
    MIN = P7
    End If
    End If

    If P8 > MAX Then
    MAX = P8
    Else
    If P8 < MIN Then
    MIN = P8
    End If
    End If

    If P9 > MAX Then
    MAX = P9
    Else
    If P9 < MIN Then
    MIN = P9
    End If
    End If

    If P10 > MAX Then
    MAX = P10
    Else
    If P10 < MIN Then
    MIN = P10
    End If
    End If

    CONTAC = CONTAC + 1

    Wend


    End Sub
    Bella.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    760
    Originariamente inviato da BellaC.
    il codice è questo:
    Private Sub elabora_Click()
    .....
    Non direi. Nel tuo primo post hai detto di non sapere come interrompere l'input dei valori, mantre questo codice tenta, in modo alquanto naif, di cercare minimo e massimo.

    Usa, in ogni caso, i delimitatori di codice (tag #) per renderlo più leggibile.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    7
    Quello che volevo dire è che dopo aver inserito l'input (numero concorrenti) una volta arrivati al numero scelto per l'input il programma deve fare in modo che non sia più possibile inserire altri concorrenti ma deve in qualche modo uscire. Non so se mi spiego...
    Bella.

  6. #6
    E dov'è il codice dell'inserimento dei dati?
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Originariamente inviato da BellaC.
    Non so se mi spiego...
    No ... finche' non mostri il codice di cui parli ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    7
    Allora questo dovrebbe essere il codice intero:

    Dim NC As Integer
    Dim CONTAC As Integer
    Dim MAX As Double
    Dim MIN As Double
    Dim punteggiofinale As Double
    Dim NOME As String
    Dim P1 As Double
    Dim P2 As Double
    Dim P3 As Double
    Dim P4 As Double
    Dim P5 As Double
    Dim P6 As Double
    Dim P7 As Double
    Dim P8 As Double
    Dim P9 As Double
    Dim P10 As Double





    Private Sub azzera_Click()
    NC = 0
    CONTAC = 0
    MAX = 0
    MIN = 0
    punteggiofinale = 0
    P1 = 0
    P2 = 0
    P3 = 0
    P4 = 0
    P5 = 0
    P6 = 0
    P7 = 0
    P8 = 0
    P9 = 0
    P10 = 0
    End Sub

    Private Sub elabora_Click()


    While CONTAC < NC

    If P1 > P2 Then
    MAX = P1
    Else
    MIN = P2
    End If

    If P3 > MAX Then
    MAX = P3
    Else
    If P3 < MIN Then
    MIN = P3
    End If
    End If

    If P4 > MAX Then
    MAX = P4
    Else
    If P4 < MIN Then
    MIN = P4
    End If
    End If

    If P5 > MAX Then
    MAX = P5
    Else
    If P5 < MIN Then
    MIN = P5
    End If
    End If

    If P6 > MAX Then
    MAX = P6
    Else
    If P6 < MIN Then
    MIN = P6
    End If
    End If

    If P7 > MAX Then
    MAX = P7
    Else
    If P7 < MIN Then
    MIN = P7
    End If
    End If

    If P8 > MAX Then
    MAX = P8
    Else
    If P8 < MIN Then
    MIN = P8
    End If
    End If

    If P9 > MAX Then
    MAX = P9
    Else
    If P9 < MIN Then
    MIN = P9
    End If
    End If

    If P10 > MAX Then
    MAX = P10
    Else
    If P10 < MIN Then
    MIN = P10
    End If
    End If

    CONTAC = CONTAC + 1

    Wend


    End Sub

    Private Sub esci_Click()
    End
    End Sub

    Private Sub nomeconcorrente_Click()
    If CONTAC < NC Then
    NOME = InputBox("Inserisci il nome del concorrente")
    Else
    MsgBox ("I concorrenti sono finiti")
    End If

    End Sub

    Private Sub numeroconcorrente_Click()
    NC = InputBox("Inserisci il numero dei concorrenti")

    End Sub

    Private Sub punteggi_Click()
    P1 = InputBox("Inserisci il primo punteggio")
    P2 = InputBox("Inserisci il secondo punteggio")
    P3 = InputBox("Inserisci il terzo punteggio")
    P4 = InputBox("Inserisci il quattro punteggio")
    P5 = InputBox("Inserisci il quinto punteggio")
    P6 = InputBox("Inserisci il sesto punteggio")
    P7 = InputBox("Inserisci il settimo punteggio")
    P8 = InputBox("Inserisci il ottavo punteggio")
    P9 = InputBox("Inserisci il nono punteggio")
    P10 = InputBox("Inserisci il decimo punteggio")


    End Sub

    Private Sub punteggiotot_Click()
    punteggiofinale = ((P1 + P2 + P3 + P4 + P5 + P6 + P7 + P8 + P9 + P10) - (MIN + MAX)) / 10
    Print "Il punteggio finale è"; punteggiofinale

    End Sub
    Bella.

  9. #9
    Utente di HTML.it L'avatar di Boolean
    Registrato dal
    Oct 2005
    Messaggi
    758
    Scusami, ma non faresti tutto molto più semplicemente con un Array?
    Oltretutto sarebbe molto più pratico trovare il massimo e il minimo, senza perdere il senno con quella routine che hai scritto...

    Boolean

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    7
    Emm in teoria dovrei seguire quello che sto facendo al corso...e mi hanno detto di farlo così anche perchè diversamente non so farlo
    Bella.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.