Torna indietro   Hardware Upgrade Forum > Software > Programmazione

realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
Hogwarts arriva in fascia media grazie a realme, con una special edition che unisce la Quadra Light-Sensing Color-changing Tech, un baule in stile Hogwarts Express pieno di collezionabili e una scheda tecnica sostanzialmente identica al 16 Pro di partenza: ecco cosa cambia davvero, come si comporta nell'uso quotidiano e quanto vale in base al prezzo di 699,99 euro
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-03-2012, 10:50   #1
maxxpower
Senior Member
 
L'Avatar di maxxpower
 
Iscritto dal: Oct 2005
Città: Artena (RM) Squadra:Juventus F.C.
Messaggi: 1943
[JAVA]aiutino con giochino sette e mezzo

Come da titolo, sono uno studente di informatica e sto creando per conto mio, a scopo di esercizio un piccolo giochino testuale,il classico sette e mezzo con le carte piacentine per capirci.

Sono arrivato a questo punto e non riesco a ragionare oltre per uscirne fuori:

questa è la classe carta

Codice:
public class Carta {
	
	//	I 4 semi del mazzo classico (piacentino)
	
	private final int COPPE=0;
	private final int SPADE=1;
	private final int DENARI=2;
	private final int BASTONI=3;
	
	//i valori speciali
	
	private final int ASSO=1;
	private final int FANTE=8;
	private final int RE=10;
	private final int CAVALLO=9;
	
	private final int seme; //fa riferimento ad uno dei semi prima elecanti ed è fisso;
	private final int valore;
	
	//costruttore della carta
	
	public Carta(int valore,int seme){
	
		this.valore=valore;
		this.seme=seme;

	}	
	
	
	//passiamo ad alcuni metodi di base della carta
	
	public int getSeme(){
		
		return seme;
	}
	
	public int getValore(){
	
		return valore;
	}
	
	public String getSemeasString(){
	
		switch(seme){
		case BASTONI:return "bastoni";
		case COPPE:return "coppe";
		case SPADE:return "spade";
		case DENARI:return "denari";
		default : return "??";
		
		
		
		}
		
	}
	
	public String getValoreasString(){
		
		switch(valore){
			
		case 1: return "Asso";
		case 2:	return "2";
		case 3: return "3";
		case 4: return "4";
		case 5: return "5";
		case 6: return "6";
		case 7: return "7";
		case 8: return "Fante";
		case 9: return "Cavallo";
		case 10:return "Re";
		default: return "??";
		
		
		
		}
		
		
		}
	
	public String toString(){
		
		return getValoreasString()+" "+ "di" + " "+ getSemeasString();
	}
}

questo è il mazzo con i suoi metodi:

Codice:
import java.util.*;

public class Mazzo {

	public ArrayList<Carta> mazzo = new ArrayList<Carta>();

	public Mazzo() {

		for (int seme = 0; seme <= 3; seme++) {
			for (int valore = 1; valore <= 10; valore++) {

				mazzo.add(new Carta(valore, seme));

			}
		}

	}

	public String toString() {

		String tmp = "";

		for (Carta c : mazzo) {
			tmp += c + "\n";

		}

		return tmp;

	}

	public void mescola() {

		// la classe collections offre un metodo statico per mescolare gli
		// elementi di una List (ricordiamo che mazzo fa parte della interfaccia
		// list essendo di Classe ArrayList

		Collections.shuffle(mazzo);
	}

	public Carta daiCarta() {

		// utilizzo i metodi della classe Aarraylist per leggere la prima carta
		// del mazzo,poi la tolgo in quanto è stata vista.

		Carta tmp = mazzo.get(0);

		mazzo.remove(0);

		return tmp;

	}

	public static void main(String[] args) {
		
		//prova

		Mazzo m = new Mazzo();
		
		

		m.mescola();

		

		Carta c= m.daiCarta();

		System.out.println(c.getValore());
		
		

	}

}
ed ora veniamo alla classe del giochino:

Codice:
public class SetteMezzo {
	
	private Mazzo m;
	
	public SetteMezzo(){
		
		m= new Mazzo();
		
		
	}
	
	
	private void setValori(){
		
		Carta tmp= m.daiCarta();
	
		int valore=tmp.getValore();
		
		switch(valore){
		
		case:
		
		
		}
in sintesi ho sfruttato il metodo getValore() della carta per modificare i valori delle carte vestite,che come saprete nel sette e mezzo valgono 1/2 punto.

Quindi dovrei analizzare caso per caso il valore della carta estratta e riassegnarlo nuovamente,giusto?

es. nel case 10 : val=0,5 ? (che però è un float,quindi dovrei dichiarare una nuova variabile float valore all'esterno dello switch e popolarla in questo modo).


inoltre non sono sicuro se mi convenga dichiarare questo metodo come void, o farmi tornare direttamente un float in modo da usarlo poi nel metodo gioca quando dovrò sommare i valori delle carte estratte per vedere se ho sballato o meno.


Scusatemi per il post chilometrico ma sono alle primissime armi e cerco di farmi capire al meglio.

Grazie in anticipo per le risposte.
__________________
|Antec DF35|Corsair HX620w|Intel i7 [email protected]|AC Freezer Xtreme|Asus P6T dlx|3x2gb Apacher 2000mhz|Gigabyte GTX660 OC 2GB|Crucial M4 128gb|Empire Ps-2120d|
DAW:|Corsair CX430|Phenom II x4 955BE @3.8ghz vdefault|CM Hyper412S|Asus M4A89GTD-Pro|4x2gb Corsair|Gainward HD4670 512MB|2x500gb Seagate|M-Audio Delta 1010lt|
maxxpower è offline   Rispondi citando il messaggio o parte di esso
Old 29-03-2012, 16:34   #2
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4423
Codice:
getValoreasString
...restituisce una stringa...crea un metodo che trasformi tale valore nei corretti punteggi...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 30-03-2012, 18:55   #3
maxxpower
Senior Member
 
L'Avatar di maxxpower
 
Iscritto dal: Oct 2005
Città: Artena (RM) Squadra:Juventus F.C.
Messaggi: 1943
Quote:
Originariamente inviato da ally Guarda i messaggi
Codice:
getValoreasString
...restituisce una stringa...crea un metodo che trasformi tale valore nei corretti punteggi...
risolto... (ho fatto uno switch sui valori speciali final e li ho trasformati in 0.5 nel caso di RE FANTE E CAVALLO );

poi posto la soluzione..dovesse servire a qualcuno
__________________
|Antec DF35|Corsair HX620w|Intel i7 [email protected]|AC Freezer Xtreme|Asus P6T dlx|3x2gb Apacher 2000mhz|Gigabyte GTX660 OC 2GB|Crucial M4 128gb|Empire Ps-2120d|
DAW:|Corsair CX430|Phenom II x4 955BE @3.8ghz vdefault|CM Hyper412S|Asus M4A89GTD-Pro|4x2gb Corsair|Gainward HD4670 512MB|2x500gb Seagate|M-Audio Delta 1010lt|

Ultima modifica di maxxpower : 30-03-2012 alle 19:00.
maxxpower è offline   Rispondi citando il messaggio o parte di esso
Old 31-03-2012, 10:18   #4
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4423
...una possibile soluzione era quella di creare un oggetto Carta con valore,seme e punteggio :

Codice:
new Carta("Asso","Bastoni",1);
ally è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
28 offerte Amazon da non perdere: e-bike...
'Il rapporto con Sony è rimasto f...
Vision AI Upscaling e Micro RGB AI Engin...
NVIDIA GeForce RTX 6000, anche il leaker...
In arrivo la 'pagella' per i datacenter:...
Celle perovskite-silicio al 34% grazie a...
Apple prepara il suo nuovo hub intellige...
La Cadillac Lyriq-V elettrica sbarca in ...
Amazon: arriva l'opzione per aggiungere ...
Un developer usa Claude Code per creare ...
Relativity Space annuncia i progressi ne...
Il nuovo Resident Evil supera ogni prece...
Hai appena sconfitto un boss e parte lo ...
Ray tracing anche senza montagne di VRAM...
TSMC prepara il processo a 1,4 nm: quatt...
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: 05:50.


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