Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26

Discussione: Algoritmo

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    243

    Algoritmo

    Mi potete passare Algoritmo, che trova il minore in un array di n°elementi.Gli elementi naturalmente sono interi.
    grazie

  2. #2
    Si chiama bubble-sort

    l'esempio che ti posto è scritto in VB6

    ma si adatta facilmente a qualsiasi linguaggio
    codice:
    Private Sub Form_Load()
        Dim vectINPUT(5), i, j, temp As Integer
        vectINPUT(0) = 10
        vectINPUT(1) = 70
        vectINPUT(2) = 1
        vectINPUT(3) = 11
        vectINPUT(4) = 69
        'ordina i 5 numeri in modo crescente (bubble-sort)
        For i = 0 To 4
            For j = 0 To 4
                If vectINPUT(i) < vectINPUT(j) Then
                    temp = vectINPUT(j)
                    vectINPUT(j) = vectINPUT(i)
                    vectINPUT(i) = temp
                End If
            Next j
        Next i
        'stampa a video il valore più basso
        Text1.Text = vectINPUT(0)
        stampa a video il valore più alto
        Text2.Text = vectINPUT(4)
    End Sub
    ...Terrible warlords, good warlords, and an english song

  3. #3
    Pseudocodice:

    FUNCTION MINIMO (A: array of INTEGER, N: INTEGER) : INTEGER;

    IF (N < 1) THEN STAMPA ("Errore: deve esserci almeno un elemento.");

    ELSIF (N == 1) THEN MINIMO = A[1];

    ELSE
    MINIMO = A[1];
    FOR I = 2 TO N DO IF A[I] < MINIMO THEN MINIMO = A[I];

    END FUNCTION;







    END FUNCTION;

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    15

    s

    Grazie

  5. #5
    Utente di HTML.it L'avatar di wolf64
    Registrato dal
    Jul 2001
    Messaggi
    521
    Anche se non sono ordinati come vedi nell'algoritmo di Johnny che usa il Bubble Sort ti passo un semplice ciclo in C che dovrebbe essere comprensibile e traducibile anche per altri linguaggi:

    #include <stdio.h>
    #include <limits.h> /* Contiene i limiti massimi e minimi dei vari tipi di variabili, in questo caso serve INT_MAX, ovvero il valore più alto che può avere un "int" */

    main() {

    int i;
    int minimo = INT_MAX;
    int array[6] = {3,9,4,10,1,7};

    for(i=0; i<n; i++) {
    if(array[i] < minimo)
    minimo = array[i];
    }

    printf("\nValore minimo = %d \n", minimo); /* Visualizza il valore minimo */
    }
    Powered by Slack Current - Kernel 2.6.22
    Slackware Evangelist
    My LUG (Linux User Group): LinuxVar (LUG di Varese)

  6. #6
    Utente di HTML.it L'avatar di wolf64
    Registrato dal
    Jul 2001
    Messaggi
    521
    Scusate l'OT, ma come si fa a postare in modo tale da far rimanere l'indentazione anche nella visualizzazione del post?
    (Lo chiedo in particolare a Johnny)
    Powered by Slack Current - Kernel 2.6.22
    Slackware Evangelist
    My LUG (Linux User Group): LinuxVar (LUG di Varese)

  7. #7
    [OT] x wolf

    utilizza i tag [ c o d e ] codice [ / c o d e ]

    P.S. naturalmente senza gli spazi



    te lo posto quà perchè domani i PVT saranno cancellati
    ...Terrible warlords, good warlords, and an english song

  8. #8
    Utente di HTML.it L'avatar di wolf64
    Registrato dal
    Jul 2001
    Messaggi
    521
    Originariamente inviato da Johnny_Depp
    [OT] x wolf

    utilizza i tag [ c o d e ] codice [ / c o d e ]

    P.S. naturalmente senza gli spazi



    te lo posto quà perchè domani i PVT saranno cancellati
    Ok, grazie Johnny
    Powered by Slack Current - Kernel 2.6.22
    Slackware Evangelist
    My LUG (Linux User Group): LinuxVar (LUG di Varese)

  9. #9

    Valore più piccolo in un array

    Non essendo molto bravo in C++ ti faccio un esempio lostesso:

    codice:
    #include <iostream.h>
    
    main(){
     int vettore[6]={8,4,5,12,2,13};
     for(int i=1;i<6;i++)
      if(vettore[i]<vettore[0])
       vettore[0]=vettore[i];
     cout<<"Il valore minimo del vettore è:"<<vettore[0]<<endl;
     return(0);
    }
    In pratica hai un vettore di 6 elementi.
    Supponi che all'inizio il programma "crede" che il valore contenuto nella locazione vettore[0] sia il più piccolo.

    Scanna tutto il vettore e, se ne trova uno più piccolo lo sostituisce al valore della locazione "vettore[0]" e così dicendo.
    Poi naturalmente lo và a prendere.

    L'unico difetto stà che il vettore viene scombussolato, e quindi conviene prima copiarlo, oppure inserire questo codice in una funzione e poi richiamarlo.

  10. #10
    Johnny_Depp:

    BUBBLE SORT? Ma che CA**O c`entra?

    E cmq una persona che posta una cosa cosi` cretina, in questa maniera idiota E SOPRATTUTTO del tipo "VOGLIO LA PAPPA PRONTA E ANCHE CALDA" per me meriterebbe solo la cancellazione senza appello del topic. E che cazzo, un minimo di disciplina non farebbe affatto male. Poi c`e` chi rompe per fare PULIZIA nei forums. E ci credo! Se tenete tutte queste schifezze!

    Eh.. i moderatori di una volta!

    wolf64:

    in questo caso serve INT_MAX
    Puoi anche usare come valore iniziale un elemento dell`array, che per comodita` di solito e` il primo.

    Saluti.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.