Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Dopo alcuni anni di assenza dai cataloghi dei suoi televisori, Hisense riporta sul mercato una proposta OLED che punta tutto sul rapporto qualità prezzo. Hisense 55A85N è un televisore completo e versatile che riesce a convincere anche senza raggiungere le vette di televisori di altra fascia (e altro prezzo)
Recensione Borderlands 4, tra divertimento e problemi tecnici
Recensione Borderlands 4, tra divertimento e problemi tecnici
Gearbox Software rilancia la saga con Borderlands 4, ora disponibile su PS5, Xbox Series X|S e PC. Tra le novità spiccano nuove abilità di movimento, un pianeta inedito da esplorare e una campagna che lascia al giocatore piena libertà di approccio
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale
NXTPAPER 60 Ultra è il primo smartphone con tecnologia NXTPAPER 4.0 per il display, un ampio IPS da 7,2 pollici. Con finitura anti-riflesso, processore MediaTek Dimensity 7400, fotocamera periscopica e modalità Max Ink per il detox digitale, NXTPAPER 60 Ultra punta a essere il riferimento tra gli smartphone pensati per il benessere degli occhi.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 09-03-2005, 13:46   #1
Vandred88
Member
 
Iscritto dal: Mar 2005
Città: Empoli
Messaggi: 45
Sono nuovo

salve a tutti, sono nuovo in questo forum, e volevo chiedervi un'aiuto
premetto ke di c++ nn so molto, ma le basi si.
io x scuola ho da fare il gioco mastermind, xò non riesco a fare una piccola cosa.
allora io ho un vettore di 6 colori e li devo inserire all'interno di una matrice con 4 colonne in modo casuale, senza xò avere colori uguali.
io sono riuscito a metterli in modo casuale, ma alcune volte succede di avere due o + colori identici e questo è sbagliato.

es:
vett[7]={'G','R','B','V','A','M'};
ed all'interno dell'ultima riga della matrice ci dovrebbe essere la soluzione del gioco con i colori del vettore in modo casuale tutti diversi.
tipo
soluzione = ARVM

voi come fareste??
grazie a tutti.
Vandred88 è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2005, 14:30   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
le lettere sono in tutto 6, e ne devi scegliere 4, fondamentalmente il problema è questo, ho capito bene?
allora estrai due indici a caso diversi tra loro compresi tra 0 e 6 (inclusi) e quelli sono i due che hai escluso; poi con un ciclo visita tutto il vettore contenente i 6 elementi e ad ogni iterazione gli dici una cosa del tipo "se l'indice corrente è diverso dai due estratti a caso, mettilo nella matrice finale".

PS: x curiosità che scuola fai? e in che città?

ciao
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2005, 14:53   #3
Vandred88
Member
 
Iscritto dal: Mar 2005
Città: Empoli
Messaggi: 45
io sono di Empoli, e fo l'ITI Leonardo Da Vinci a Firenze
Vandred88 è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2005, 15:47   #4
Vandred88
Member
 
Iscritto dal: Mar 2005
Città: Empoli
Messaggi: 45
intendi in questa maniera???

void soluzione(char mat[][8],char vett[6])
{
int x, y, c=0;
x=rand()%7;
y=rand()%7;
if(x!=y)
{
for(int i=0; i<6; i++)
{
if(i!=x && i!=y)
{
if(c<=4)
{
mat[8][c]=vett[i];
c++;
}
}

}
}
Vandred88 è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2005, 17:27   #5
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
si, ma naturalmente il controllo sulla variabile c è superfluo.
ah, cmq c'è un errore nel for: tu conti da 0 a 5, mentre dovresti contare da 0 a 6; inoltre ti consiglio di reagire in altra maniera se x caso i due numeri estratti sono uguali; te lo riscrivo come lo farei io:

Codice:
char v[7] = "GRBVAM";
char mat[4];
int x, y, i, j = 0;
srand(time(NULL));
x = rand() % 7;
do {
    y = rand() % 7;
}
while (x == y);
for (i = 0; i < 7; i++) {
    if ((i != x) && (i != y)) {
        mat[j] = v[i];
    }
}
considera tuttavia che l'evenienza che rand estragga due volte consecutive lo stesso numero è praticamente impossibile.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2005, 19:08   #6
Vandred88
Member
 
Iscritto dal: Mar 2005
Città: Empoli
Messaggi: 45
grazie, cmq nn capisco xke il controllo su c sia superfluo...
e poi nn capisco anche un'altra cosa ke ho fatto io..


Questo do - while dentro al main.
do
{
carica(mat,r);
confronta(mat,r);
stampa(mat,r);
vittoria(mat,r,win);
r++;
}
while(win==0);
r=0;
cout<<"\nAltra partita S/N?";
.........................................................
questo per ora sarebbe la funzione vittoria che controlla se ci sono elementi uguali o no.
se tutti sono uguali vinco e ritorna il valore =1;
altrimenti continuo facendo ritornare il valore win=0;

int vittoria(char mat[][8],int r,int win)
{
for(int c=5; c<8; c++)
{
if(mat[r][4]==mat[r][c])
win=1;
else
win=0;
}
if(win==1)
{
cout<<"***HAI VINTO!!***\n";
return win=1;
}
else
return win=0;
}

cioè di logica quando ritorna il valore win=1 dovrei uscire dal do-while ke è dentro il main e chiedere se voglio fare un'altra partita ... ma cosi nn avviene xke??
Vandred88 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti Hisense A85N: il ritorno all’OLED è convi...
Recensione Borderlands 4, tra divertimento e problemi tecnici Recensione Borderlands 4, tra divertimento e pro...
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale TCL NXTPAPER 60 Ultra: lo smartphone che trasfor...
Un fulmine sulla scrivania, Corsair Sabre v2 Pro ridefinisce la velocità nel gaming Un fulmine sulla scrivania, Corsair Sabre v2 Pro...
Nokia Innovation Day 2025: l’Europa ha bisogno di campioni nelle telecomunicazioni Nokia Innovation Day 2025: l’Europa ha bisogno d...
DJI perde la causa negli Stati Uniti: co...
Leonidas abbatte 49 droni in un colpo so...
The Social Reckoning: il seguito di The ...
iPhone 16 si trova ora su Amazon a soli ...
Amazon fa a pezzi i prezzi dei monitor g...
Componenti hardware e periferiche PC a p...
Pianeta in crisi: 7 su 9 limiti vitali g...
Galaxy S25 FE con taglio di prezzo di 10...
4 robot aspirapolvere e 3 scope elettric...
Nuovissimi Xiaomi 15T e 15T Pro con tagl...
Le agenzie federali americane potranno u...
Smartphone pieghevoli sempre più ...
LG svela le Easy TV, una nuova gamma di ...
L'equipaggio della missione Shenzhou-20 ...
Possibili detriti spaziali del razzo cin...
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:37.


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