Torna indietro   Hardware Upgrade Forum > Software > Programmazione

realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme e Aston Martin Aramco F1 Team si sono (ri)unite dando alla vita un flagship con chip Snapdragon 8 Elite Gen 5 e design esclusivo ispirato alle monoposto di Formula 1. La Dream Edition introduce la nuova colorazione Lime Essence abbinata al tradizionale Aston Martin Racing Green, decorazioni intercambiabili personalizzate e una confezione a tema F1, intorno a uno smartphone dall'ottima dotazione tecnica con batteria da 7000mAh ricaricabile a 120W e isola fotografica intercambiabile
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
Abbiamo partecipato all'OVHcloud Summit 2025, conferenza annuale in cui l'azienda francese presenta le sue ultime novità. Abbiamo parlato di cloud pubblico e privato, d'intelligenza artificiale, di computer quantistici e di sovranità. Che forse, però, dovremmo chiamare solo "sicurezza"
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a
Abbiamo potuto mettere le mani in anteprima sul nuovo monitor MSI dedicato ai giocatori: un mostro che adotta un pannello QD-OLED da 26,5 pollici con risoluzione 2560 x 1440 pixel, frequenza di aggiornamento fino a 500 Hz e tempo di risposta di 0,03 ms GtG
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-03-2012, 11: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, 17:34   #2
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
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, 19: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 20:00.
maxxpower è offline   Rispondi citando il messaggio o parte di esso
Old 31-03-2012, 11:18   #4
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
...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 GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro DJI Neo 2 in prova: il drone da 160 grammi guada...
L'IA "seria" di Appian è diversa: inserita nei processi e rispetta dati e persone L'IA "seria" di Appian è divers...
Altro che 'scandalo De Martino', in Core...
Meta leggerà i tuoi messaggi dal ...
OpenAI entra in Thrive Holdings: nasce u...
Paramount: nuovi film di Sonic e Tartaru...
EU AI Cloud, il cloud sovrano di SAP per...
God of War: la serie TV entra in pre-pro...
Stampante HP in super offerta: la multif...
Maxi offerta su Roborock S8 MaxV Ultra: ...
Ron Gilbert, il creatore di Monkey Islan...
AMD, aumento dei prezzi per i processori...
I migliori regali di Natale a meno di 50...
Sorprese post Black Friday: questi TV 4K...
NVIDIA perde quota, AMD e Intel guadagna...
Il cloud ibrido al centro delle strategi...
Amazon sorprende: avviatori, compressori...
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: 14:25.


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