Test Su Classi Avanzato

You need to be registered and logged in to take this quiz. Log in or Register

6 risposte a “Test Su Classi Avanzato”

  1. public class Main {

    public static void main(String[] args) {
    contocorrente c1 = new contocorrente(“ABICAB001″, 3000);

    movimento m1 = new movimento();
    m1.prel(180, 50);

    movimento m2 = new movimento();
    m2.prel(1500, 100);

    movimento m3 = new movimento();
    m3.prel(100, 20);

    movimento m4 = new movimento();
    m4.vers(100);
    movimento m5 = new movimento();
    m5.vers(100);
    movimento m6 = new movimento();
    m6.vers(100);
    movimento m7 = new movimento();
    m7.vers(100);
    movimento m8 = new movimento();
    m8.vers(100);
    movimento m9 = new movimento();
    m9.vers(100);
    movimento m10 = new movimento();
    m10.vers(100);
    movimento m11 = new movimento();
    m11.vers(100);
    movimento m12 = new movimento();
    m12.vers(100);
    movimento m13 = new movimento();
    m13.vers(100);

    movimento m14 = new movimento();
    m14.vers(100);
    movimento m15 = new movimento();
    m15.vers(100);
    movimento m16 = new movimento();
    m16.vers(100);
    movimento m17 = new movimento();
    m17.vers(100);
    movimento m18 = new movimento();
    m18.vers(100);
    movimento m19 = new movimento();
    m19.vers(100);
    // movimento m20 = new movimento();
    // m20.vers( 100);
    //
    // movimento m21 = new movimento();
    // m21.vers(100);
    // movimento m22 = new movimento();
    // m22.vers(100);

    c1.stampaMovim();
    // System.out.println(c1.toString());

    }

    }
    import java.util.ArrayList;

    public class contocorrente {
    private String numeroConto;
    private static double saldo;
    private static int numov;
    private static ArrayList movimenti = new ArrayList();

    public contocorrente(String numeroConto, double saldo) {
    this.numeroConto = numeroConto;
    this.saldo=saldo;
    }

    public static int getNumov() {
    return numov;
    }

    public static void setNumov(int numov) {
    contocorrente.numov = numov;
    }

    public String getNumeroConto() {
    return numeroConto;
    }

    public void setNumeroConto(String numeroConto) {
    this.numeroConto = numeroConto;
    }

    public static double getSaldo() {
    return saldo;
    }

    public static void setSaldo(double saldo) {
    contocorrente.saldo = saldo;
    }

    public ArrayList getMovimenti() {
    return movimenti;
    }

    public void setMovimenti(ArrayList movimenti) {
    contocorrente.movimenti = movimenti;
    }

    public static void addMovim(movimento d) {
    movimenti.add(d);
    }

    public void stampaMovim() {

    if (movimenti.size()<=20) {
    for (int l=0; l<movimenti.size(); l++)
    {System.out.println(movimenti.get(l).toString());}
    }
    else for (int l=(movimenti.size()-20); l amount &&amount >= 20 && amount % taglio == 0) {
    saldoFinale -= amount;
    amount *= (-1);
    }
    else {amount = 0;
    tipoMovimento=”annullato”;
    }

    LocalDate oggi = LocalDate.now();
    d = oggi.toString();

    somma = amount;
    contocorrente.setSaldo(saldoFinale);
    contocorrente.setNumov(numeroMovimento);
    contocorrente.addMovim(this);
    }

    public void vers(float amount) {
    numeroMovimento = contocorrente.getNumov() + 1;
    saldoIniz = contocorrente.getSaldo();
    saldoFinale = contocorrente.getSaldo();
    saldoFinale += amount;

    LocalDate oggi = LocalDate.now();
    d = oggi.toString();
    tipoMovimento = “vers”;
    somma = amount;
    contocorrente.setSaldo(saldoFinale);
    contocorrente.setNumov(numeroMovimento);
    contocorrente.addMovim(this);
    }

    //___________________________________________________________________
    @Override
    public String toString() {
    return “movimento del ” + d + “\n” + “NUM ” + numeroMovimento + “\n” + “SALDO INIZ ” + saldoIniz + “\n”
    + “OPERAZIONE EFFETTUATA: ” + tipoMovimento + “\n” + “SOMMA: ” + somma + “\n” + “SALDO ATTUALE ”
    + saldoFinale + “\n”;
    }
    }

  2. buongiorno ,
    per favore potreste darmi la soluzione di questo esercizio…
    ringrazio anticipatamente per un eventuale risposta.
    3. Si vuole gestire una rubrica telefonica realizzando un dizionario che contiene coppie di tipo “nome numero”. Il campo “nome” `e una stringa che ha la funzione di chiave per il dizionario (dunque la rubrica non potrà contenere omonimi), mentre il campo “numero” `e un numero intero in formato long che rappresenta i recapiti telefonici associati a ciascun nome.
    Il candidato ha a disposizione il file RubricaTester.java, il quale contiene classi e interfacce da utilizzare e/o completare secondo quanto qui indicato:
    • Dictionary. Interfaccia che rappresenta il tipo di dati astratto dizionario, contiene le firme dei metodi e le specifiche del loro funzionamento. Non modificare.
    • DictionaryItemNotFoundException. Eccezione lanciata in caso di mancato ritrovamento di una coppia nel dizionario. Non modificare.
    • Rubrica. Classe che implementa l’interfaccia Dictionary. Completare la classe scrivendone la parte privata e realizzandone i metodi pubblici. La rubrica conterrà coppie di tipo “nome numero” appartenenti alla classe Pair, realizzata come classe interna alla classe Rubrica e il cui codice non va modificato. Si richiede che il metodo find() abbia prestazioni O(log n). Si richiede inoltre di realizzare un metodo toString per la classe Rubrica, che restituisca una string contenente gli elementi della rubrica secondo il seguente formato: (1) ogni coppia “nome numero” viene scritta su una riga diversa, e (2) all’interno di ogni riga la coppia viene scritta seguendo il formato specificato dal metodo toString della classe Pair (si veda il corpo di tale metodo).
    • RubricaTester. Classe che collauda la rubrica. Completare la classe in modo che il suo metodo main realizzi il seguente comportamento:
    – Due nomi di file di testo, file1 e file2, vengono passati come argomenti sulla riga di comando.
    – Vengono creati due oggetti di tipo Rubrica. Nella prima rubrica si inseriscono elementi letti dal file file1 (scritto nello stesso formato specificato sopra per il metodo toString di Rubrica).
    – Viene richiesta l’immisione di un nome da input standard. Il nome immesso viene cercato nella prima rubrica e la corrispondente coppia “nome numero” viene (se trovata) spostata dalla prima alla seconda rubrica (ovvero rimossa dalla prima e inserita nella seconda rubrica).
    – L’operazione descritta al punto precedente pu`o essere ripetuta un numero non prefissato di volte. Il ciclo viene terminato tramite inserimento del carattere “Q” da input standard.
    – Al termine delle ricerche effettuate dall’utente, il contenuto della seconda rubrica viene stampato sul file file2 (nello stesso formato specificato sopra per il metodo toString di Rubrica).

    Nello svolgimento si possono usare, se ritenute utili, solo le seguenti classi della libreria standard:
    • tutte le classi dei package java.lang e java.io;
    • le classi Scanner, StringTokenizer e NoSuchElementException del package java.util.
    Usando i file paperopoli.txt e input.txt allegati, il programma pu`o essere provato con il comando
    java RubricaTester paperopoli.txt topolinia.txt < input.txt

      1. grazie ancora per la risposta…
        se è possibile preferirei avere il codice scritto..
        perche essendo ipovedente grave utilizzo uno screen reader.
        cosi riesco a capire meglio la soluzione.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *