Torna indietro   Hardware Upgrade Forum > Software > Programmazione

MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
Abbiamo provato MSI PRO MAX EDGE AI+, un mini-PC professionale progettato per eseguire modelli di intelligenza artificiale in locale, senza dipendere dal cloud. Il sistema abbina il processore AMD Ryzen AI Max+ 395, 128 GB di memoria unificata e un telaio in alluminio da appena 4 litri, con l'obiettivo di offrire capacità di elaborazione elevate in un formato compatto.
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Il nuovo top di gamma vivo punta su un comparto fotografico particolarmente articolato, con un teleobiettivo da 200 megapixel e teleconvertitori esterni capaci di arrivare a 400 mm equivalenti. Lo abbiamo provato a Tenerife, mettendo alla prova fotocamere, prestazioni, autonomia e accessori. Ecco come si è comportato.
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-01-2011, 13:00   #1
neosephiroth86
Member
 
Iscritto dal: Oct 2007
Messaggi: 185
[JAVA]Cambiare un valore a caso di una stringa di 0 e 1

Salve!

Dovrei scrivere del codice java che, presa una stringa composta da 0 e 1 di 8 posizioni, mi cambia un valore a caso della stringa.

Ad esempio:

chromosome= "10110010"

chromosome = "11110010"

io ho scritto del codice ma non va:

char[] char_chromosome=chromosome.toCharArray();
int position=(int)Math.round(Math.random()*10);
if (position<8){char_chromosome[position]=(char) Math.round(Math.random()*10);}
String new_chromosome=new String(char_chromosome);
chromosome=new_chromosome;
System.out.println(chromosome);

In pratica il valore che stampa è del tipo 1o110010 dove o è un simbolo che non c'entra nulla!
Mi potete dare una mano?
neosephiroth86 è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 14:43   #2
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da neosephiroth86 Guarda i messaggi
Salve!

Dovrei scrivere del codice java che, presa una stringa composta da 0 e 1 di 8 posizioni, mi cambia un valore a caso della stringa.

Ad esempio:

chromosome= "10110010"

chromosome = "11110010"

io ho scritto del codice ma non va:

char[] char_chromosome=chromosome.toCharArray();
int position=(int)Math.round(Math.random()*10);
if (position<8){char_chromosome[position]=(char) Math.round(Math.random()*10);}
String new_chromosome=new String(char_chromosome);
chromosome=new_chromosome;
System.out.println(chromosome);

In pratica il valore che stampa è del tipo 1o110010 dove o è un simbolo che non c'entra nulla!
Mi potete dare una mano?
Perchè fai un random tra 0 e 10 se la string ha lunghezza 8?
Comunque, qual'è esattamente il tuo problema? Il simbolo che devi inserire cos'è? Lo generi random come mai dici che non centra nulla?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 15:47   #3
neosephiroth86
Member
 
Iscritto dal: Oct 2007
Messaggi: 185
infatti ho cambiato un pò il codice per generarlo fino ad 8 massimo,ed ho provato ad usare fordigit al posto di cast a char, ora non compare sempre ma qualche volta il simbolo strano:

char[] char_chromosome=chromosome.toCharArray();
char_chromosome[(int)Math.round(Math.random())*7]= Character.forDigit((int) Math.round(Math.random()*10),10);
String new_chromosome=new String(char_chromosome);
chromosome=new_chromosome;
System.out.println(chromosome+" tttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt");


adesso vi faccio uno screenshot:


Uploaded with ImageShack.us
neosephiroth86 è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 15:52   #4
neosephiroth86
Member
 
Iscritto dal: Oct 2007
Messaggi: 185
cosi adesso ho anche il problema che dentro char_chromosome[(int)Math.round(Math.random())*7]
esce sempre 0 o 7,mentre dovrebbe essere un numero casuale da 0 a 7 (gli elementi del vettore)
neosephiroth86 è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 15:54   #5
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Il tuo simbolo strano è dato da questa istruzione
Codice:
Character.forDigit((int) Math.round(Math.random()*10),10)
Per digit ci passi un numero da 0 a 10 e come radix 10, il problema nasce quando digit è 10.
Metti 9 come limite.

Per l'altro problema è che fai il round di Math.random(), quindi sarà sempre o 0 oppure 1. Devi fare invece il round di tutta l'operazione.

Ultima modifica di MEMon : 22-01-2011 alle 16:00.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 16:06   #6
neosephiroth86
Member
 
Iscritto dal: Oct 2007
Messaggi: 185
perfetto grazie mille amico!!!!!
neosephiroth86 è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 16:12   #7
neosephiroth86
Member
 
Iscritto dal: Oct 2007
Messaggi: 185
Codice:
char[] char_chromosome=chromosome.toCharArray();
		
		
		char_chromosome[(int)Math.round(Math.random()*7)]= Character.forDigit((int) Math.round(Math.random()*10),9);
		String new_chromosome=new String(char_chromosome);
		chromosome=new_chromosome;
        
		System.out.println(chromosome+"                          ppppppppppppppppp");
l'errore del posizionamento nella stringa è stato risolto(va da 0 a 7) ma l'errore del "simbolo" ancora c'è,anche dopo aver messo 9 invece di 10
neosephiroth86 è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 16:17   #8
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da neosephiroth86 Guarda i messaggi
Codice:
char[] char_chromosome=chromosome.toCharArray();
		
		
		char_chromosome[(int)Math.round(Math.random()*7)]= Character.forDigit((int) Math.round(Math.random()*10),9);
		String new_chromosome=new String(char_chromosome);
		chromosome=new_chromosome;
        
		System.out.println(chromosome+"                          ppppppppppppppppp");
l'errore del posizionamento nella stringa è stato risolto(va da 0 a 7) ma l'errore del "simbolo" ancora c'è,anche dopo aver messo 9 invece di 10
Hai messo 9 nel 10 sbagliato
9 mettilo nel random, e radix lascialo 10, in questo modo il tuo simbolo varierù da 0 a 9
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2011, 16:20   #9
neosephiroth86
Member
 
Iscritto dal: Oct 2007
Messaggi: 185
FINALMENTE
neosephiroth86 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Galaxy A38, la batteria cresce ma il pre...
Notifica su Facebook: 'Effettuerai la mi...
Xbox pronta a dire addio allo studio di ...
Meta stacca la spina: fine del supporto ...
Scambio file senza limiti: Google porta ...
Taiwan sbarca a EICMA 2026: maxi scooter...
L'integrazione tra Windows e Android mig...
Project Helix potrebbe abbandonare le Ex...
Galaxy Z Fold9 Ultra, fotocamere ferme a...
Hacker prendono di mira il plasma per le...
In&motion a EICMA 2026: l'airbag sma...
ChatGPT, 1,2 miliardi di utenti e un qui...
Il progetto ImmunoSafe dell'Universit&ag...
NVIDIA ai data center: i partner devono ...
L'intelligenza artificiale entra nei bra...
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:49.


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