Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR ha finalmente lanciato il suo nuovo flagship: Magic 8 Pro. Lo abbiamo provato a fondo in queste settimane e ve lo raccontiamo nella nostra recensione completa. HONOR rimane fedele alle linee della versione precedente, aggiungendo però un nuovo tasto dedicato all'AI. Ma è al suo interno che c'è la vera rivoluzione grazie al nuovo Snapdragon 8 Elite Gen 5 e alla nuova MagicOS 10
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Le webcam Insta360 Link 2 Pro e Link 2C Pro sono una proposta di fascia alta per chi cerca qualità 4K e tracciamento automatico del soggetto senza ricorrere a configurazioni complesse. Entrambi i modelli condividono sensore, ottiche e funzionalità audio avanzate, differenziandosi per il sistema di tracciamento: gimbal a due assi sul modello Link 2 Pro, soluzione digitale sul 2C Pro
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 26-02-2013, 14:35   #1
Loxlory
Junior Member
 
Iscritto dal: Feb 2013
Messaggi: 8
Esercizio basilare Java

Ho letto nelle regole di sezione che non si possono ovviamente risolvere esercizi completi, ma io chiedo solo una mano per capire come fare =)

Questo è il punto dell'esercizio che non ho idea di come fare:
Si progetti una classe che permetta, tramite i suoi oggetti di archiviare il menù informatico di una pizzeria.
Il menù presenta solo l'elenco delle pizze. Di ogni pizza sono presenti le seguenti informazioni: nome della pizza, descrizione pizza e prezzo. Il menù può contenere al più 50 pizze (non è detto che si raggiunga tale numero). Si richiede sia possibile:
1-inserire da tastiera, in fondo all'elenco, una nuova pizza;
2-Stampare i dati della pizza più economica
3-Cancellare tutte le pizze con un certo ingrediente deciso dall'utente, le posizioni vuote devono venire occupate dall'ultima posizione nell'elenco.


Innanzitutto come devo iniziare a scrivere per far capire che è una classe?
Dovrò creare più array per queste informazioni, vero? =)
Loxlory è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 15:09   #2
idoido
Senior Member
 
Iscritto dal: May 2008
Messaggi: 429
Quote:
Originariamente inviato da Loxlory Guarda i messaggi
Innanzitutto come devo iniziare a scrivere per far capire che è una classe?
chi ti ha dato da fare l'esercizio sicuramente avrà anche spiegato i concetti di classe e come dichiararla nel codice.

se non eri presente o non le hai capite trovati un compagno di studi e/o fattele rispiegare dal professore, sarà molto più facile capirlo che leggerlo su un forum.
Poi se trovi qualcuno che passa di qua e te le spiega passo passo è un altro discorso, sicuramente non io visto che lo vuoi in Java
idoido è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 15:49   #3
Loxlory
Junior Member
 
Iscritto dal: Feb 2013
Messaggi: 8
Ho fatto 6 mesi all'estero, di cui due pure in ospedale causa caduta in moto in cui ho riportato un trauma cranico e varie fratture...
Quindi sono rimasto bello indietro col programma della mia scuola.
Visto che son sempre stato abbastanza bravo in informatica, ho pensato che fosse abbastanza facile recuperarla anche in poco tempo, quindi non ho quasi mai guardato Java.
E ora sto cercando di recuperare...
Se ci fosse qualcuno abbastanza gentile da scrivermi questo esercizio così da poterlo tenere come base/schema per gli altri gliene sarei molto grato
Loxlory è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 16:06   #4
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
Quote:
Originariamente inviato da Loxlory Guarda i messaggi
Ho letto nelle regole di sezione che non si possono ovviamente risolvere esercizi completi, ma io chiedo solo una mano per capire come fare =)

Questo è il punto dell'esercizio che non ho idea di come fare:
Si progetti una classe che permetta, tramite i suoi oggetti di archiviare il menù informatico di una pizzeria.
Il menù presenta solo l'elenco delle pizze. Di ogni pizza sono presenti le seguenti informazioni: nome della pizza, descrizione pizza e prezzo. Il menù può contenere al più 50 pizze (non è detto che si raggiunga tale numero). Si richiede sia possibile:
1-inserire da tastiera, in fondo all'elenco, una nuova pizza;
2-Stampare i dati della pizza più economica
3-Cancellare tutte le pizze con un certo ingrediente deciso dall'utente, le posizioni vuote devono venire occupate dall'ultima posizione nell'elenco.


Innanzitutto come devo iniziare a scrivere per far capire che è una classe?
Dovrò creare più array per queste informazioni, vero? =)
Comincia a scomporre il problema in più punti e a risolverli passo passo.
1) Hai bisogno di un menu dove si parla solo di pizza. Quindi ovviamente hai bisogno delle informazioni delle pizze. E quale posto migliore per raccogliere queste info se non in una classe chiamata Pizza?
2) Queste pizze sono listate all'interno di un menù... e quindi anche qui, una classe chiamata Menu potrebbe fare comodo
3) Ora puoi costruirti un metodo main che soddisfi i tuoi punti 1, 2 e 3 (o meglio ancora una classe o un metodo apposito per fare questo), cioè le operazioni di I/O.

Direi che ora hai qualcosa su cui lavorare

Posta quello che fai se hai problemi su qualcosa
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 16:25   #5
Loxlory
Junior Member
 
Iscritto dal: Feb 2013
Messaggi: 8
Io avevo inteso questo esercizio così:
Devo creare una classe che lavori dentro un programma a me non dato. Questa classe deve eseguire i 3 punti:
1-inserire da tastiera, in fondo all'elenco, una nuova pizza;
2-Stampare i dati della pizza più economica
3-Cancellare tutte le pizze con un certo ingrediente deciso dall'utente, le posizioni vuote devono venire occupate dall'ultima posizione nell'elenco.


Per fare questi tre punti c'è bisogno di 3 array, uno col nome della pizza (quindi di stringhe), uno col prezzo (quindi float) e il terzo che contenga gli ingredienti.
Come posso creare un array che contenga più parole in una cella? (Non abbiamo ancora fatto le matrici).

P.s. La funzione lenght restituisce la lunghezza dell'array che gli si da o il numero di celle piene dell'array?

Grazie davvero
Loxlory è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 17:13   #6
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
Quote:
Originariamente inviato da Loxlory Guarda i messaggi
Di ogni pizza sono presenti le seguenti informazioni: nome della pizza, descrizione pizza e prezzo.
Perchè non puoi crearti una classe del tipo
Codice:
class Pizza{
    nome;
    descrizione;
    prezzo;
    public Pizza(){
    }
    ecc....
}
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 17:49   #7
Loxlory
Junior Member
 
Iscritto dal: Feb 2013
Messaggi: 8
import java.util.Scanner;
public class Pizza {

string[] Anome;
Anome = new string[49];

float[] Acosto;
Acosto= new float[49];

//qua non so come creare un array che contenga più stringhe, ossia tutti gli ingredienti

Public /*qua dovrei mettere il valore restituito, giusto? ma cosa restituisce?*/ aggiungiPizza(){
// L'altro dubbio è: come faccio a cercare il primo spazio disponibile senza scritto nulla?


}


Public /*stesso dubbio di prima*/ pizzaEconomica(){
int a=900;
int b=0;
for (int i=0; i<=49; i++){
if Acosto[i]<a{
a=Acosto[i];
b=Acosto[i];
}
}
System.out.println("La pizza meno costosa e" + Apizza[b] + "col costo di" + Acosto[b] + "e gli ingredienti sono")
}



Aiutami a trovare gli errori e dammi qualche altra dritta... Grazie mille mila!
Loxlory è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 17:57   #8
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
Quote:
Originariamente inviato da Loxlory Guarda i messaggi
import java.util.Scanner;
public class Pizza {

string[] Anome;
Anome = new string[49];

float[] Acosto;
Acosto= new float[49];

//qua non so come creare un array che contenga più stringhe, ossia tutti gli ingredienti

Public /*qua dovrei mettere il valore restituito, giusto? ma cosa restituisce?*/ aggiungiPizza(){
// L'altro dubbio è: come faccio a cercare il primo spazio disponibile senza scritto nulla?


}


Public /*stesso dubbio di prima*/ pizzaEconomica(){
int a=900;
int b=0;
for (int i=0; i<=49; i++){
if Acosto[i]<a{
a=Acosto[i];
b=Acosto[i];
}
}
System.out.println("La pizza meno costosa e" + Apizza[b] + "col costo di" + Acosto[b] + "e gli ingredienti sono")
}



Aiutami a trovare gli errori e dammi qualche altra dritta... Grazie mille mila!
Innanzitutto indenta il codice in questo modo
Codice:
import java.util.Scanner;
public class Pizza {

    string[] Anome;
    Anome = new string[49];

    float[] Acosto;
    Acosto = new float[49];

    //qua non so come creare un array che contenga più stringhe, ossia tutti gli ingredienti

    Public /*qua dovrei mettere il valore restituito, giusto? ma cosa restituisce?*/
    aggiungiPizza() {
        // L'altro dubbio è: come faccio a cercare il primo spazio disponibile senza scritto nulla?


    }


    Public /*stesso dubbio di prima*/
    pizzaEconomica() {
        int a = 900;
        int b = 0;
        for (int i = 0; i <= 49; i++) {
            if Acosto[i] < a {
                a = Acosto[i];
                b = Acosto[i];
            }
        }
        System.out.println("La pizza meno costosa e" + Apizza[b] + "col costo di" + Acosto[b] + "e gli ingredienti sono")
    }
Secondo... non fare così.

La classe Pizza deve essere solo un contenitore di informazioni per il nome, il prezzo e la descrizione.
Una volta creta la classe Pizza ti crei la classe Menu, che conterrà la collezione di oggetti Pizza.
Avete fatto le liste? Ad esempio LinkedList?
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 18:04   #9
Loxlory
Junior Member
 
Iscritto dal: Feb 2013
Messaggi: 8
Il codice era indentato, ma a copiarlo sul forum si è formattato...
Comunque non abbiamo fatto le liste, considera che java l'abbiamo (hanno xD) iniziato a settembre.
Abbiamo fatto giusto i cicli, gli array e poc'altro.
Quindi mi sembrava il miglior modo sviluppare il programma in quel modo. (Se è possibile scrivere una classe in quel modo xD)
Loxlory è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 18:07   #10
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
Quote:
Originariamente inviato da Loxlory Guarda i messaggi
Il codice era indentato, ma a copiarlo sul forum si è formattato...
Comunque non abbiamo fatto le liste, considera che java l'abbiamo (hanno xD) iniziato a settembre.
Abbiamo fatto giusto i cicli, gli array e poc'altro.
Quindi mi sembrava il miglior modo sviluppare il programma in quel modo. (Se è possibile scrivere una classe in quel modo xD)
devi usare il tag del forum CODE... comunque...

Puoi comunque usare gli array per fare quello che devi fare.
Creati una classe Pizza come ti ho detto io e postala. La classe Pizza come ti ho detto deve avere semplicemente i campi nome, prezzo e descrizione. Facciamo un pezzo per volta.
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 18:37   #11
Loxlory
Junior Member
 
Iscritto dal: Feb 2013
Messaggi: 8
Ok, pezzo per volta
Come creo la classe pizza come intendi te? =)
Questo es famolo insieme che da fare ne ho a bizzeffe...
Sto cercando più che altro uno schema da seguire per tutti
Grazie millissimo!

Edit: Stasera sono pure fuori a cena... (cena di bentornato) Uff
Mi puoi scrivere un abbozzo di quello che chiede, così quando torno lo guardo, ti lascio un post coi miei dubbi e domani provo a fare gli altri es con quel modello?

Ultima modifica di Loxlory : 26-02-2013 alle 19:09.
Loxlory è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 19:21   #12
HoldenCaulfield1987
Member
 
Iscritto dal: May 2010
Messaggi: 157
Quote:
Sto cercando più che altro uno schema da seguire per tutti
Qui sbagli secondo me!
Programmare non è qualcosa di meccanico, non c'è uno schema che segui per tutti i programmi.
Se ti capiterà un programma completamente diverso non saprai dove mettere mano.
Ti consiglio di sbatterci la testa da solo, di provare a scrivere qualcosa e di postarlo.
HoldenCaulfield1987 è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2013, 20:04   #13
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
Quote:
Originariamente inviato da Loxlory Guarda i messaggi
Ok, pezzo per volta
Come creo la classe pizza come intendi te? =)
Questo es famolo insieme che da fare ne ho a bizzeffe...
Sto cercando più che altro uno schema da seguire per tutti
Grazie millissimo!

Edit: Stasera sono pure fuori a cena... (cena di bentornato) Uff
Mi puoi scrivere un abbozzo di quello che chiede, così quando torno lo guardo, ti lascio un post coi miei dubbi e domani provo a fare gli altri es con quel modello?
Guarda quello che devi fare già te l'ho scritto. Ora comincia a lavorarci e se vuoi posta i tuoi progressi e ci lavoriamo insieme. Non sono esercizi per me, ma per te. Mi sono offerto di darti una mano e te la sto dando. Mostra la tua buona volontà
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2013, 09:54   #14
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
@Loxlory.
Ciao. Parto dal presupposto che tu ti stia facendo guidare da clockover.
Ti ha suggerito di scomporre il problema in sotto-problemi più piccoli (e quindi in teoria più facili da risolvere singolarmente). Questo è un buon metodo per procedere.

Il primo compito/sottoproblema che ti ha chiesto di risolvere è quello di creare una classe Pizza. Perchè ha senso creare una classe Pizza? Basta analizzare il testo del problema. Ad un certo punto dice:
Quote:
...Di ogni pizza sono presenti le seguenti informazioni: nome della pizza, descrizione pizza e prezzo...
Con solo questa frase, per me ha senso, per ora, individuare un oggetto/entità Pizza:
Codice:
Pizza
+ nome
+ descrizione
+ prezzo
Tu dici: d'accordo, potrei rappresentare Pizza con una classe che ha tre membri; nome lo rappresento come una String, prezzo come un float ma descrizione?

Per sapere come è meglio rappresentare descrizione bisogna prima capire quale è il suo scopo; andando di nuovo ad analizzare il testo del problema possiamo notare come la parola descrizione non sia più nominata, se non che forse potrebbe avere a che fare con quanto espresso qui:
Quote:
...3-Cancellare tutte le pizze con un certo ingrediente deciso dall'utente, le posizioni vuote devono venire occupate dall'ultima posizione nell'elenco....
Dato che qui parla di pizze, e abbiamo già visto cosa ci si aspetta che le pizze abbiano (nome, per idientificarle, prezzo per identificare la pizza più economica, come richiesto in un'altro punto del testo) restano fuori questo ingrediente e la descrizione di prima.

Ergo è probabile che descrizione, per i termini del problema datoci, non sia altro che una lista di ingredienti.

Se decidiamo di rappresentare un ingrediente con una String, possiamo allora rappresentare in Pizza la descrizione come un array di String.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)

Ultima modifica di banryu79 : 27-02-2013 alle 09:57.
banryu79 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
Colossus 2 entra in funzione: il superco...
Ningtendo PXBOX 5: PS5, Xbox Series X e ...
Scossone in Ubisoft: il boss di The Divi...
Nuovo Media Creation Tool per Windows 11...
Animazioni credibili per ingannare gli u...
Hyundai mostra il camper elettrico STARI...
Qual è l'auto elettrica più...
Google amplia il controllo dell'utente s...
TIM annuncia una nuova rimodulazione per...
Annunciato un altro membro del cast dell...
Google testa le 'Skills' su Chrome: una ...
Stop a Zenfone e ROG Phone: ASUS punta t...
Anche AMD cambia i piani: priorità...
Allarme rincari telefonia: l'UE potrebbe...
Samsung: produzione di memoria DRAM in a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:29.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v