Visualizzazione dei risultati da 1 a 5 su 5

Discussione: [c] trova l'errore

  1. #1

    [c] trova l'errore

    int rb(int v, int x[],int n)
    {
    int m = (n-1)/2, r = n-m-1, a=0, b=0;

    if (n == 1) return x[m]==v;
    else
    {
    if (v > x[m]) a = rb(v,x+m+1,r);
    if (v < x[m]) b = rb(v,x,r);
    return a||b;
    }
    }

    il problema e' realizzare una funzione C ricorsiva che implementi la ricerca binaria dati un vettore x[] di dimensiona nota n e un intero v.

    dov'è che sbaglio?? :master:

    sembrava un problema così facile...

  2. #2
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    per fare così il vettore deve essere ordinato... è già ordinato?
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  3. #3
    nn sono pratico del c...
    ho cominciato quest'anno col c++...

    ma forse l'errore sta in questi 2 'if'
    codice:
    if (v > x[m]) a = rb(v,x+m+1,r); 
    if (v < x[m]) b = rb(v,x,r);
    ...
    se li cambi in
    codice:
    if (v > x[m]) a == rb(v,x+m+1,r); 
    if (v < x[m]) b == rb(v,x,r);
    ??
    Write Once, Run Everywhere.
    Write Less, Do More.

  4. #4
    codice:
    if (v > x[m]) a == rb(v,x+m+1,r); 
    if (v < x[m]) b == rb(v,x,r);
    Non puoi mettere 2 uguali per assegnare il valore ad una variabile!
    Powered by Fedora & CentOS
    Here I am, brain the size of a planet..

  5. #5
    Originariamente inviato da marco_c
    per fare così il vettore deve essere ordinato... è già ordinato?
    il vettore e' gia' ordinato.
    Si deve fare una "ricerca" ma anziche' controllarlo in modo sequenziale lo si deve fare attraverso la ricerca binaria

    Originariamente inviato da kruskaiev
    Non puoi mettere 2 uguali per assegnare il valore ad una variabile!
    gia'.

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.