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 26-06-2008, 15:30   #1
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
[LOGICA BOOLEANA] IMPORTANTE Non mi tornano i conti

Allora.. o io sono stupido........ o veramente qualcosa non torna.....
Se io uso questo enunciato:
Codice:
do {
      first = (int) (Math.random() * dim.getWidth()) - (2 * raggio);
      second = (int) (Math.random() * dim.getWidth()) - (2 * raggio);
      System.out.println("Primo: " + first);
      System.out.println("secondo: " + second);
 } while (first == 1 && second == 1);
Come dovrebbe funzionare?

In teoria esce dal do-while quando entrambi i valori sono uguali a 1...
Esatto?

In realtà mi calcola questi:
Codice:
Primo: -40
secondo: -40

Primo: 214
secondo: 508

Primo: 149
secondo: 424

Primo: 129
secondo: 233

...
NB: Comunque il codice postato è in java.
dim.getWidth() restituisce 600
2*Raggio restituisce 40
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80

Ultima modifica di jj.69kt : 26-06-2008 alle 15:36.
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 15:38   #2
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da jj.69kt Guarda i messaggi
In teoria esce dal do-while quando entrambi i valori sono uguali a 1...
Esatto?
Sbagliato, fa esattamente il contrario.
Esegue una prima volta il blocco di codice specificato tra parentesi dopo il "do" per poi verificare che l'espressione contenuta nel "while" sia TRUE.
Se è TRUE allora esegue nuovamente il blocco "do" altrimenti esce dal ciclo.

Ne tuo caso esce subito (dopo un'esecuzione).
Forse volevi usare l'operatore booleano "!=", non "==" dentro il while.
__________________

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)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 15:42   #3
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Forse dovrebbe fare così.... Ma se io metto in questo modo:
Codice:
do {
      first = (int) (Math.random() * dim.getWidth()) - (2 * raggio);
      second = (int) (Math.random() * dim.getWidth()) - (2 * raggio);
      System.out.println("Primo: " + first);
      System.out.println("secondo: " + second);
      System.out.println();
 } while (first != 1 && second != 1)
Ecco il risultato:
Codice:
Primo: -40
secondo: -40
Primo: -40
secondo: -40
Primo: -40
secondo: -40
Primo: -40
secondo: -40
Primo: -40
secondo: -40
Primo: -40
secondo: -40
E questo all'infinito ovviamente..
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 15:46   #4
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Scusa,
allora temo di non aver capito che cosa cerchi di ottenere in quel blocco di codice.
Puoi spiegarmi?
__________________

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)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 15:56   #5
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Ciò che volevo fare è semplice.
Far calcolare due numeri random maggiori di 0.

Il codice che ho scritto sopra era uno degli esperimenti di disperazione..

Codice:
  do {
         double firstTemp = (Math.random() * dim.getWidth()) - (2 * raggio);
         first = (int) firstTemp;
         double secondTemp = (Math.random() * dim.getWidth()) - (2 * raggio);
         second = (int) secondTemp;           
         System.out.println("Primo: " + first);
         System.out.println("secondo: " + second);
       } while (first >= 1 && second >= 1);
Questo è quello che sto testando in questo momento..

Secondo la mia logica dovrebbe:
  1. Eseguire il campo "do"
  2. Verificare se la condizione è esatta. (Ovvero entrambi i numeri MAGGIORI-UGAULI a 1)
  3. Se è soddifatta esce e fine
  4. Altrimenti riccalcola....

Ciò che mi mette in crisi è che calcoli sempre "-40" se uso "!="....... O_O
AIUTAMIII!!!
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 16:26   #6
andrew1988
Member
 
L'Avatar di andrew1988
 
Iscritto dal: May 2005
Città: Modena
Messaggi: 276
ma che strano.. anche io l'ho implemenato e da gli stessi problemi... mmmmhh...
__________________
andrew
andrew1988 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 16:31   #7
smart83
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 17
la motivazione per cui ti ritorna sempre -40 è semplice:
perchè il dim.getWidth() ti ritorna 0
smart83 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 16:41   #8
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Quote:
Originariamente inviato da smart83 Guarda i messaggi
la motivazione per cui ti ritorna sempre -40 è semplice:
perchè il dim.getWidth() ti ritorna 0
per logica quel che dici è giusto....
Ma sai spiegarmi perché?
Poichè il dim.getWidth() in tutto il resto del programma funziona....
E *sembrerebbe* non funzionare SOLO se metto un "not"......
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 16:43   #9
smart83
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 17
curiosità,ma che cos'è dim?e come l'hai settato?
smart83 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:00   #10
smart83
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 17
ti spiego la mia curiosità:
se hai usato un container allora il problema è come l'hai settato(se hai hai usato setPreferredSize oppure setSize).
se invece hai usato una semplice dimension allora nn so che dirti perchè a me funziona
smart83 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:01   #11
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Quote:
NB: Comunque il codice postato è in java.
dim.getWidth() restituisce 600
2*Raggio restituisce 40
Mi quoto da solo...

Comunqe dim è un JFrame.....
cosa intendi con "come è settato??"

EDIT:
Le dimensioni funzionano di sicuro....
Xke uso dim.getWidth() per altre cose e quelle funzionano.. :P
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:06   #12
smart83
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 17
beh,allora usando dim.setSize(...) dovrebbe funzionare.o perlomeno a me funziona.se poi usi setPreferredSize(...) mi da il tuo stesso risultato cioè -40 all'infinito
smart83 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:19   #13
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Beh, purtroppo a me no...
Altrimenti come mi spieghi questi valori di uscita:

Codice:
a)
Primo: 246
secondo: -22

b)
Primo: 554
secondo: -10

c)
//questo va bene.. :P
Primo: 0
secondo: 496


Eccoti per esempio il while completo:
Codice:
Entrato...

Primo: 5
secondo: 99
Primo: 93
secondo: 419
Primo: 503
secondo: 457
Primo: 503
secondo: 233
Primo: 538
secondo: 439
Primo: 435
secondo: 31
Primo: 18
secondo: 99
Primo: 507
secondo: 192
Primo: 349
secondo: 275
Primo: 250
secondo: 327
Primo: 361
secondo: 475
Primo: 540
secondo: 258
Primo: 396
secondo: 431
Primo: 246
secondo: -22

Uscito dal while
Come vedi non ha molto senso..
Con "while (first >= 1 && second >= 1)".........
Doveva uscire già al primo passaggio... poichè:
(5 >= 1 && 5 >= 1)
(5 > 1 && 5 > 1)
(true && true)
(true)
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80

Ultima modifica di jj.69kt : 26-06-2008 alle 17:23.
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:26   #14
smart83
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 17
in qst caso il tuo problema qual'è?che escono numeri negativi?beh,mi pare ovvio che se usi "!=" significa diverso da 1,cioè minore o maggiore di 1(quindi anche numeri negativi).se nn vuoi numeri negativi non povrai usare il "!=" ma il maggiore uguale.sempre se è qst qllo che mi hai chiesto,altrimenti nn ho capito il problema :P
smart83 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:28   #15
smart83
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 17
ah,ora ho capito
qlla nel while nn è una condizione per uscire,ma restare nel ciclo.quindi se tu >= allora,ti resterà nel ciclo fino a qnd nn troverà dei valori negativi o pari a zero
smart83 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:29   #16
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Quote:
Originariamente inviato da smart83 Guarda i messaggi
in qst caso il tuo problema qual'è?che escono numeri negativi?beh,mi pare ovvio che se usi "!=" significa diverso da 1,cioè minore o maggiore di 1(quindi anche numeri negativi).se nn vuoi numeri negativi non povrai usare il "!=" ma il maggiore uguale.sempre se è qst qllo che mi hai chiesto,altrimenti nn ho capito il problema :P
hem.... leggi il post per intero.......

e comunque.. anche se fosse:
while (first >= 1 && second >= 1)

sarebbe dovuto uscire al primo tentativo....

poichè:
while (99 != 1 && 5 != 1)
while (true && true)
while (true)
!!!!!!!



EDIT:
Ok, ma allora se io dico:
while (!(primo >= 1) && !(primo == 1))

questi valori non hanno senso:
Codice:
Primo: 26
secondo: -8

Primo: 168
secondo: -6
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80

Ultima modifica di jj.69kt : 26-06-2008 alle 17:36.
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:31   #17
smart83
Junior Member
 
Iscritto dal: Jun 2008
Messaggi: 17
Quote:
Originariamente inviato da smart83 Guarda i messaggi
ah,ora ho capito
qlla nel while nn è una condizione per uscire,ma restare nel ciclo.quindi se tu >= allora,ti resterà nel ciclo fino a qnd nn troverà dei valori negativi o pari a zero
ti avevo risp già appena ho capito di nn aver letto tutta la tua risposta :P
smart83 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:31   #18
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Una possibile risposta e' che
Math.Random restituisce un double tra 0 e 0.9999999999
mentre dim.getWidth() restituisce un intero
e c'e' un bel cast implicito non segnalato dal compilatore Java (o forse si' e non l'hai letto) che trasforma il double in intero prima di moltiplicare i valori.
quindi sempre zero.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:39   #19
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Co questo codice:
Codice:
do {
     double firstTemp = (Math.random() * dim.getWidth()) - (2 * raggio);
     first = (int) firstTemp;
     double secondTemp = (Math.random() * dim.getWidth()) - (2 * raggio);
     second = (int) secondTemp;
                    
     System.out.println("Primo: " + first);
     System.out.println("secondo: " + second);
    } while (!(first >= 1) && !(second >= 1));
E con queste impostazioni esce dal ciclo con questi valori:
Codice:
a)
Primo: -11
secondo: 367
b)
Primo: 168
secondo: -6
c) //va *per caso* anche bene
Primo: 67
secondo: 91
d)
Primo: 26
secondo: -8

ecc.....

Io proprio non me lo spiego.. ç__ç
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80
jj.69kt è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 17:40   #20
jj.69kt
Senior Member
 
L'Avatar di jj.69kt
 
Iscritto dal: Oct 2007
Messaggi: 677
Quote:
Originariamente inviato da smart83 Guarda i messaggi
ti avevo risp già appena ho capito di nn aver letto tutta la tua risposta :P
si ho letto dopo e ho modificato la mia risp di sopra. :P
__________________

Desktop: (In Vendita) iMac (12,2) 27" --> i5 QaudCore 2,7GHz, 8GB RAM, 1TB HDD..
Laptop (In Pensione): MacBook PRO (3,1) 15.4" (Glossy, ma pentito) --> 2.2Ghz, 4GB Ram..
Camera: Nikon D80 with Nikkor 18-55mm 1:3-5.6 GII + Nikkor 55-200mm 1:4-5.6 VR
"Mobile":iPhone 5 64Gb
MyEbay: 100%! • Mercatino (Green = Good; Red = Bad) UncleSam, Boxi80, Zuckerbaer, lamerone, danidj, maxmax80
jj.69kt è 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...
Claude, Codex e Copilot lavorano insieme...
Freddo in arrivo? Questo radiatore ad ol...
L'Europa pesa meno dell'1% nel design di...
PlayStation 6, Sony rompe il silenzio: l...
Audio lossless via Bluetooth: lo standar...
Sony cresce nel secondo trimestre, PlayS...
Intel Nova Lake-S, il 'freno nascosto' a...
APT29 sfrutta falle note di iOS e Androi...
NIU FQiX 500: arriva lo scooter da 115 k...
Betelgeuse, la stella compagna Siwarha n...
Addio alle cartucce Nintendo? Il princip...
ChatGPT accelera: le immagini si generan...
MacBook Pro: tutta la gamma avrà ...
Uno sviluppatore ha dovuto hackerare il ...
Apple HomeView Ultra: in arrivo un robot...
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:29.


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