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

Discussione: Esercizio in java

  1. #1

    Esercizio in java

    Ciao a tutti...devo fare questo esercizio ma non trovo un modo per farlo...se qualcuno può aiutarmi....metto il testo...grazie

    Descrizione del problema
    Un’azienda di telecomunicazioni vuol sviluppare un componente capace di simulare il buffer di un
    canale di comunicazione. Nel canale di comunicazione transitano dei messaggi, ognuno dei quali è
    caratterizzato da un corpo, che consiste in un semplice testo, dal mittente del messaggio e dal
    destinatario. Per ogni mittente e per ogni destinatario si registrano il nome, un indirizzo e un
    messaggio che consiste in una semplice stringa di testo. Oltre al buffer dovrà essere implementato
    anche un log che mantenga traccia di tutti i messaggi passati nel buffer. Il log è un semplice
    contenitore in cui si inserisce automaticamente copia dei messaggi inseriti nel buffer. I messaggi del
    log non vengano cancellati quando sono rimossi dal buffer.
    Funzionalità
    L’applicazione dovrà permettere di
    - Riempire automaticamente l’archivio con alcuni dati, in modo da poterlo testare
    - inserire e rimuovere un messaggio nel buffer
    - stampare a video tutti i messaggi presenti nel buffer
    - stampare tutti i messaggi del log
    - ricercare tutti i messaggi inviati da un certo mittente
    - calcolare la lunghezza media dei messaggi contenuti nel buffer
    L’applicazione dovrà possedere un menu che permette di scegliere fra le varie funzionalità
    disponibili.
    Vincoli da rispettare
    La struttura dati che simula il buffer dovrà usare una strategia FIFO per l’inserimento e la rimozione
    dei messaggi. La struttura dati usata per il log dovrà essere una listadescrizione del problema

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    prima che ti chiudano per non aver rispettato il regolamento, quale è il tuo problema?
    RTFM Read That F*** Manual!!!

  3. #3
    Ciao...il problema....allora per creare il buffer, faccio una coda con la classe queue? Cioè...La coda la implemento per mezzo di un Vector, classe che offre due metodi, add() e remove(), per inserire e recuperare un elemento. Crea un Vector vuoto, nel quale verrà mantenuta la coda.
    Il metodo remove() elimina un elemento dalla coda e lo restituisce al chiamante:
    contiene un blocco di codice sincronizzato sul Vector, al fine di poter gestire la coda per mezzo di thread multipli; si blocca con wait(), rilasciando quindi il lucchetto, se la coda è vuota.
    Il metodo add() aggiunge un elemento alla coda:
    contiene un blocco di codice sincronizzato sul Vector;
    provvede a risvegliare con notify() uno degli eventuali thread in attesa di un elemento.

    fino a qui potrebbe andare? Ma poi il log come lo faccio? Una lista in cui memorizzo il tutto...ma non ho idea di come farla. Grazie 1000

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    perché per mezzo di un vector? Devi realizzare tu una struttura che ti consenta di memorizzare le informazioni e di gestirle con metodo FIFO, in generale avrai la tua classe Coda (o Queue) che al suo interno avrà il necessario per poter gestire una coda di tipo FIFO (e sicuramente al tuo corso ti avranno dato queste informazioni).

    Un aiuto: una coda è una collection di elementi, in cui ogni elemento (nodo) ha 2 info: dato che vuoi memorizzare + riferimento al successivo.
    RTFM Read That F*** Manual!!!

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480

    Moderazione

    Originariamente inviato da flashlight82
    Ciao a tutti...devo fare questo esercizio ma non trovo un modo per farlo...se qualcuno può aiutarmi....metto il testo...grazie
    Oltre al testo dell'esercizio, pubblica anche il codice che hai scritto per risolverlo, e vedremo come aiutarti a correggerlo o migliorarlo.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  6. #6

    ciao

    ciao,
    non so come hai impostato il programma, cmq sia ci provo

    utilizzerei linkedlist come collection fifo, all'interno della quale di volta in volta aggiungerei un oggetto ComunicationBuffer che contiente il mittente(con i suoi attributi) e il destinatario(idem).

    due opzioni o sovrascrivi il metodo add di modo che chiami super e poi scrivi nel log, oppure aggiungi e scrivi.

    ancora, polimorficamente Persona, Mittente e Destinatario.

    Il contenitore dei messaggi(Log) è un entità esterna? file, db ?

    è una standalone application o web?

    a cosa ti serve il vector?

    ciao
    SCJP 96%

    Sono io signore che non ti perdono,io non merito punizioni, io sono potentissimo e ora che ho visto il tuo volto merito di stare in un cielo alto più alto del tuo perché non capendo chi è l’uomo hai dimostrato di essermi inferiore,tu servirai me. Da oggi mi chiamerò Satan che significa l’Avversario.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157

    Re: ciao

    Originariamente inviato da morpheus4java
    ciao,
    non so come hai impostato il programma, cmq sia ci provo

    utilizzerei linkedlist come collection fifo, all'interno della quale di volta in volta aggiungerei un oggetto ComunicationBuffer che contiente il mittente(con i suoi attributi) e il destinatario(idem).

    ciao
    magari deve scriversela lei la coda(vista l'impostazione dell'esercizio) e non usarne una di pronta.
    Mi è capitato ai corsi il divieto dell'uso delle Collections nei casi in cui l'esercizio mira a testare determinate capacità dello studente.
    RTFM Read That F*** Manual!!!

  8. #8

    ??

    valia ma mi stai seguendo?
    com'è che è la seconda volta che intervieni in modo mmmmmmmm "antipatico"?
    scrivere da solo ex novo una cosa che già esiste?
    in 14 anni di programmazione è la prima volta che lo sento.
    cmq sia il mio era un suggerimento costruttivo, come sempre, se hai qualcosa da suggerire che ben venga.

    magari potresti postargli qualche esempio ad hoc o no?
    SCJP 96%

    Sono io signore che non ti perdono,io non merito punizioni, io sono potentissimo e ora che ho visto il tuo volto merito di stare in un cielo alto più alto del tuo perché non capendo chi è l’uomo hai dimostrato di essermi inferiore,tu servirai me. Da oggi mi chiamerò Satan che significa l’Avversario.

  9. #9
    PATH o non PATH su seven per scrivere su C: ci sono problemi anche se vuoi creare un file con blocco note, il problema sta nel diverso modo di gestire il file system rispetto al passato.
    Che poi su unix accettiamo tutti di non poter scrivere su "/", su windows lo hanno introdotto adesso e ci sembra una limitazione assurda

    se risponde java -version il path desumo sia a posto, se riesce da bin (senza fare altro) è a posto il CLASSPATH, quindi lato java è ok.



    VALIA LA PROSSIMA VOLTA SII COSTRUTTIVO E IMPARA AD ASCOLTARE
    SCJP 96%

    Sono io signore che non ti perdono,io non merito punizioni, io sono potentissimo e ora che ho visto il tuo volto merito di stare in un cielo alto più alto del tuo perché non capendo chi è l’uomo hai dimostrato di essermi inferiore,tu servirai me. Da oggi mi chiamerò Satan che significa l’Avversario.

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da morpheus4java
    PATH o non PATH su seven per scrivere su C: ci sono problemi anche se vuoi creare un file con blocco note, il problema sta nel diverso modo di gestire il file system rispetto al passato.
    Che poi su unix accettiamo tutti di non poter scrivere su "/", su windows lo hanno introdotto adesso e ci sembra una limitazione assurda

    se risponde java -version il path desumo sia a posto, se riesce da bin (senza fare altro) è a posto il CLASSPATH, quindi lato java è ok.



    VALIA LA PROSSIMA VOLTA SII COSTRUTTIVO E IMPARA AD ASCOLTARE
    Magari cerca di postare nella discussione corretta (non è qui che si sta discutentdo di problematiche relative alle variabili PATH / CLASSPATH), senza aggiungere considerazioni di carattere personale sugli utenti. Se hai qualcosa da dire espressamente ad un utente, usa i PVT.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.