Forum Informatica Unict

LAUREA TRIENNALE (D.M. 270/04) => Programmazione 1, 9 CFU => Topic started by: cristina89 on 23-08-2010, 17:33:26



Title: metodi sulle prove di lab...aiutooo
Post by: cristina89 on 23-08-2010, 17:33:26
salve ragazzi ho davvero bisogno di una mano per superare l'esame di lab,ogni volta sbaglio sempre qualche metodo e non riesco a compilare. vi scrivo alcuni metodi,se qualcuno li ha gia fatti o li sa fare, mi dia una mano please   .poverinoi
- nuova (x:byte) :String   restituisce il carattere in c concatenato con i successivi caratteri (nel codice ASCII) dei primi x caratteri di s  (Es: c='w', x=2, s='gatto', output="whb")

-doppia():boolean  restituisce true se s contiene almeno due volte una stessa vocale

...grazie in anticipo


Title: Re:metodi sulle prove di lab...aiutooo
Post by: ɹǝǝuıƃuǝsɹǝʌǝɹ on 23-08-2010, 18:50:21
Ehm... chi è "s" e chi è "c" ? .penso

Sono per caso due variabili membro di una ipotetica classe che bisogna creare (magari quella che contiene il main)?
In che linguaggio vanno fatti questi esercizi (visto che la specifica dei metodi è fatta in pseudo-UML)?

In ogni caso, lì so fare, ma prima di scrivere cavolate, preferirei che il mio codice compilasse e si eseguisse con successo.
Ciao .ciaociao.


Title: Re:metodi sulle prove di lab...aiutooo
Post by: cristina89 on 26-08-2010, 17:21:47
hai ragione scusami e che il tempo è breve,ed ho davvero bisogno di chiarimenti. cmq s è una stringa, c è un carattere e x è un byte... anche se non c è tutto l esercizio potresti scrivermi il codice per questi metodi???grazie in anticipo  .smile


Title: Re:metodi sulle prove di lab...aiutooo
Post by: ɹǝǝuıƃuǝsɹǝʌǝɹ on 26-08-2010, 23:49:22
Sono molto formale io.

Dovrò fare delle assunzioni su cosa c'era scritto nel testo dell'esercizio affinché il mio codice compili e la mia reputazione sia difesa |-O.

Classe=miaClasse
Variabili membro=s: String, c: char

Code:
    public String nuova (byte x)
    {
        String temp = "" + c;                   //inizia mettendo c a inizio stringa
       
        int max = s.length ();                  //suppone di leggere tutti i caratteri di s (fa 1 sola invocazione a length())
        if (x < max) max = x;                   //se x fosse minore di s.length (), porterebbe max a x
       
        for (int i = 0; i < max; i++)           //per ogni carattere da leggere
            temp += (char) (s.charAt (i) + 1);  //accoda a temp il carattere (char) successivo (+1) a quello letto alla posizione i-esima (s.charAt (i))
       
        return temp;                            //restituisce il risultato voluto
    }

    public boolean doppia ()
    {
        char [] vocali = {'a', 'e', 'i', 'o', 'u'};

        for (int i = 0; i < vocali.length; i++)             //per ogni vocale (1 per volta), che chiameremo i-esima vocale ogni volta
        {
            int conto = 0;                                  //azzera il contatore per essa
            int max = s.length ();                          //ottiene il numero di caratteri di s con 1 sola invocazione a lenght()

            for (int j = 0; j < max && conto < 2; j++)      //per ogni carattere di s, fino a che non ho letto almeno 2 volte la i-esima vocale
                if (s.charAt (j) == vocali [i]) conto++;    //se il carattere è la i-esima vocale, incrementiamo il contatore
           
            if (conto >= 2) return true;                    //se abbiamo letto almeno 2 vocali uguali (in realtà bastava anche == invece di >=) restituiamo il valore voluto (true)
        }
       
        return false;                                       //altrimenti, se per nessuna vocale esistono due sue occorrenze in s, restituiamo il valore voluto (false)
    }
:pray .ciaociao


Title: Re:metodi sulle prove di lab...aiutooo
Post by: cristina89 on 27-08-2010, 12:11:55
...grazie mille e tranquillo che la tua reputazione non sarà rovinata per un aiuto che mi hai dato,anche se non l'esercizio non è fatto tutto e non compila! ti faccio sapere al piu presto se con il tuo aiuto riesco a terminare l'esercizio. grazie ancora  :-ciao


Title: Re:metodi sulle prove di lab...aiutooo
Post by: ɹǝǝuıƃuǝsɹǝʌǝɹ on 27-08-2010, 12:18:51
...grazie mille e tranquillo che la tua reputazione non sarà rovinata per un aiuto che mi hai dato,anche se non l'esercizio non è fatto tutto e non compila! ti faccio sapere al piu presto se con il tuo aiuto riesco a terminare l'esercizio. grazie ancora  :-ciao
Per la reputazione, intendevo di "bravo progammatore", cioè il fatto che se scrivo un codice, deve essere corretto. Senza altre supposizioni mi veniva difficile fare in modo che fosse così  .arrossisco.