Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    107

    Algoritmo ricorsivo di ricerca del massimo in un array di struct

    Sto progettando una function che come parametri di input ha un array di strutture:
    la struct in questione è:
    Codice PHP:
    struct studente struct char giorno[3]; char mese[10]; char anno [6]; }d_nascitastruct char strada[20]; char cap[6]; char civico[4]; }residenzachar nome[15]; char cognome[20]; char l_nascita[10]; char matricola[5]; int presenze; }; typedef struct studente studenti
    questa function, che deve essere ricorsiva, deve calcolarmi il massimo dell array di tipo studenti classe[].presenze e visualizzarmelo con questo pattern
    classe[n].nome classe[n].cognome : max_presenze

    tuttavia in questo array ci possono essere più di un massimo, nel caso in cui 2 o più studenti con lo stesso numero di presenze, in tal caso per ogni studente devo visualizzare il nome il cognome e le presenze, così:

    classe[n].nome classe[n].cognome : max_presenze
    classe[m].nome classe[m].cognome : max_presenze
    classe[q].nome classe[q].cognome : max_presenze

    purtroppo con la ricorsione non sono molto ferrato e non riesco ad andare più in là della somma, quindi avrei bisogno di un po d'aiuto

    Grazie in anticipo del sostegno

  2. #2
    Fai un codice di prova e ci dici quali sono i tuoi problemi.

    Qui non si fanno i compiti a casa, grazie
    lolide
    Java Programmer

    Informati

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    107
    forse mi sono spiegato male, non voglio che mi scriviate il codice, è proprio sulla teoria che volevo un suggerimento... perchè sulla ricorsione non riesco a trovare nulla di soddisfacente, ma soprattutto non saprei come implementare in un algoritmo ricorsivo la funzione di stampa una volta conclusa la ricorsione... uffa e pensare che con il metodo iterativo sarebbe una passeggiata!
    mi andrebbe bene anche qualche link da cui ricavare informazioni utili, ma ti prego non scambiarmi per una di quelle persone che pensano di postare nel forum e trovare qualche fesso che faccia il lavoro al posto loro....
    Io sono qui per imparare.

    graize

    Darksergio

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    107
    nessuno può aiutarmi in nessun modo???

  5. #5
    Puoi pensare di fare una cosa del genere:

    PSEUDOCODICE:

    codice:
    int maxPres (studenti* v, int i, int dim, int max) /* dal main chiami con i = 0 e max = 0 */
    {
             
             1) se hai letto tutto il vettore, quindi l'indice i ha raggiunto il valore della dimensione dim
                ritorni max (condizione di terminazione);
    
             2) altrimenti se il numero di presenze dell'elemento attuale del vettore (v[i].presenze) 
                 è maggiore di max, chiami la funzione dando come nuovo max proprio quel v[i].presenze;
                 attenzione ad incrementare i (se no vai in loop infinito)!
    
             3) altrimenti chiami la funzione con gli stessi valori di prima ad eccetto di i, che ovviamente va 
                 incrementato!
    
    }
    Salute a voi, da Laikius!

    --> Faber est suae quisque fortunae <--

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    107
    si, grazie per l'aiuto, ora ci provo

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.