Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-11-2012, 23:29   #1
mistergks
Senior Member
 
L'Avatar di mistergks
 
Iscritto dal: Mar 2011
Messaggi: 1050
problema massimo

Qualcuno mi spiega il perchè quando si risolve un problema di massimo la variabile max va inizializzata al primo elemento dell'array e non a 0??
So che va fatto ma non so bene il motivo!
mistergks è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2012, 23:42   #2
Cait Sith
Senior Member
 
L'Avatar di Cait Sith
 
Iscritto dal: Apr 2005
Messaggi: 309
perchè se i numeri sono tutti negativi tu ti ritrovi come massimo lo 0, che è sbagliato
Cait Sith è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 00:57   #3
mistergks
Senior Member
 
L'Avatar di mistergks
 
Iscritto dal: Mar 2011
Messaggi: 1050
Quote:
Originariamente inviato da Cait Sith Guarda i messaggi
perchè se i numeri sono tutti negativi tu ti ritrovi come massimo lo 0, che è sbagliato
Giusto giusto! Ci siamo..

Inviato dal mio GT-I9003 usando Tapatalk
mistergks è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 08:43   #4
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Puoi inizializzarla al valore minimo possibile.
__________________
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 15-11-2012, 09:57   #5
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
La regola di base è che il confronto deve essere fatto solo fra elementi dell'insieme in cui cercare. Non necessariamente devi prendere il primo elemento, puoi prendere qualsiasi valore tra quelli contenuti nell'insieme di ricerca.
__________________
CPU Ryzen 5900X @ 4,7Ghz + Thermalright Phantom Spirit 120 SE / MB Asus X470-F Gaming / RAM 2x16GB DDR4 Corsair 3600 CL16 / VGA Sapphire RX 7900 XT Nitro+ / SSD Crucial T500 1TB + Samsung 970 Pro 512GB + Sandisk 960GB Ultra II / PSU FSP Hydro G PRO 1000W / Headset Kingston HyperX Flight
demos88 è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 12:17   #6
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Puoi inizializzarla al valore minimo possibile.
This. E' la cosa più sicura da fare.
__________________

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 15-11-2012, 12:50   #7
mistergks
Senior Member
 
L'Avatar di mistergks
 
Iscritto dal: Mar 2011
Messaggi: 1050
Quindi voi dite che andrebbe.prima.trovato il minimo e poi inizializzare max al valore trovato dal minimo?!

E la variabile min a cosa va inizializzata?


Inviato dal mio GT-I9003 usando Tapatalk
mistergks è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 12:58   #8
vendettaaaaa
Senior Member
 
L'Avatar di vendettaaaaa
 
Iscritto dal: Jan 2012
Messaggi: 1267
Quote:
Originariamente inviato da mistergks Guarda i messaggi
Quindi voi dite che andrebbe.prima.trovato il minimo e poi inizializzare max al valore trovato dal minimo?!

E la variabile min a cosa va inizializzata?


Inviato dal mio GT-I9003 usando Tapatalk
Credo che intendessero di inizializzare la variabile di quel tipo al valore minimo permesso a quel tipo. Ad esempio uno short int ha come valore minimo -127 (se non ricordo male), quindi la inizializzi così. Non c'è niente di più piccolo del più piccolo valore accettato dalla macchina.
vendettaaaaa è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 13:05   #9
simo8
Member
 
Iscritto dal: Jul 2009
Messaggi: 146
Si , ma è inutile inizializzare il valore massimo al minimo assoluto per il tipo di dato . Se devo trovare il massimo in un insieme tanto vale partire dal primo elemento che il mio insieme contiene dicendo che per adesso è lui il mio valore massimo poi lo confronto con gli altri elementi e modifico il valore di conseguenza .
simo8 è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 13:08   #10
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
This. E' la cosa più sicura da fare.
Ma anche di difficile realizzazione se il tipo utilizzato non prevede un minimo.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 13:12   #11
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da marco.r Guarda i messaggi
Ma anche di difficile realizzazione se il tipo utilizzato non prevede un minimo.
Mmm... ma parli di tipi definiti dall'utente?
Oppure (ad esempio) a una serie (infinita) di valori?
__________________

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 15-11-2012, 13:26   #12
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Quote:
Originariamente inviato da simo8 Guarda i messaggi
Si , ma è inutile inizializzare il valore massimo al minimo assoluto per il tipo di dato . Se devo trovare il massimo in un insieme tanto vale partire dal primo elemento che il mio insieme contiene dicendo che per adesso è lui il mio valore massimo poi lo confronto con gli altri elementi e modifico il valore di conseguenza .
Dipende dal contesto.
Utilizzare il valore minimo ha senso quando non sai la dimensione dell'insieme di cui devi trovare il massimo. Se l'insieme e' vuoto non hai un primo elemento. Per cui come regola se il tipo prevede un valore minimo (o un valore che sei sicuro che l'insieme di input non supera) usa quello. Se non ce l'hai verifica che l'insieme abbia almeno un elemento e usa il primo elemento come valore iniziale.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 13:36   #13
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Mmm... ma parli di tipi definiti dall'utente?
Oppure (ad esempio) a una serie (infinita) di valori?
Sopra si parlava di inizializzare a 0, per cui presumo di un qualche sottoinsieme dei numeri reali.
Pero' non e' detto che un qualsiasi tipo utilizzato per rappresentarli abbia il concetto di valore massimo/minimo. Se

In generale un qualsiasi tipo che non preveda un valore di minimo e/o massimo, come ad esempio alcuni numeri a precisione arbitraria. Alcuni prevedono il "-infinito", altri no. Ad esempio in Python mi par di ricordare che gli interi non prevedano un minimo (ma dovrei verificare per esserne sicuro...)
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 13:42   #14
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Quote:
Originariamente inviato da marco.r Guarda i messaggi
Ma anche di difficile realizzazione se il tipo utilizzato non prevede un minimo.
Filosofo.
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2012, 14:30   #15
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Quote:
Originariamente inviato da simo8 Guarda i messaggi
Si , ma è inutile inizializzare il valore massimo al minimo assoluto per il tipo di dato . Se devo trovare il massimo in un insieme tanto vale partire dal primo elemento che il mio insieme contiene dicendo che per adesso è lui il mio valore massimo poi lo confronto con gli altri elementi e modifico il valore di conseguenza .
Il codice risulta piu' semplice e piu' leggibile.
__________________
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 15-11-2012, 16:12   #16
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Il codice risulta piu' semplice e piu' leggibile.
Esteta.
__________________

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 15-11-2012, 16:19   #17
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Quote:
Originariamente inviato da shinya Guarda i messaggi
Filosofo.
In effetti nella sua brevita' la risposta poteva sembrare eccessivamente acida.
Spero che banryu non se la sia presa troppo
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2012, 08:08   #18
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da marco.r Guarda i messaggi
In effetti nella sua brevita' la risposta poteva sembrare eccessivamente acida.
Spero che banryu non se la sia presa troppo
No, non me la sono presa e la tua risposta non mi è smebrata affatto acida.
Dai tuoi successivi messaggi ho poi capito cosa intendevi, grazie
__________________

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 16-11-2012, 08:25   #19
AllerITA
Member
 
L'Avatar di AllerITA
 
Iscritto dal: Oct 2010
Città: Savona
Messaggi: 194
Secondo me l'unica differenza nell'inizializzazione della variabile massimo, tra il prendere il primo elemento del vettore e il minimo valore accettabile dal tipo di dato sta solo nella comodità dell'operazione da effettuare per fare ciò.
Poi la cosa può anche essere opinabile.
__________________
AMD Phenom II X6 3Ghz, MB Gigabyte 790xta-ud4 F4A, 4Gb Ram ddr3, HD Segate Barracuda 1T, SV ASUS GTX 560 Ti DirectCu II ,Monitor Philips 1920x1080 led 2 ms, Xbox360 Slim, Tablet Asus Transformer Pad TF300T, Gameboy Advance, Ipod Touch 16Gb
AllerITA è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2012, 14:19   #20
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485
Personalmente preferisco inizializzare la variabile al primo elemento cosi da far partire il confronto dal secondo. La differenza prestazionale è infima, anche se (forse) ci possono essere situazioni dove il confronto può essere oneroso, ma se si può fare una cosa in meno perchè non farla? Certo... se impattasse molto negativamente sulla leggibilità del codice sarebbe un altro paio di maniche
Dânêl è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


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...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
La prima missione orbitale del razzo spa...
Servizi in streaming sempre più c...
Anteprima della Leapmotor B03X: inizia l...
Anthropic accusa la Cina: Claude utilizz...
I satelliti Rassvet (Starlink russo) di ...
Un agente IA ha risolto un problema su W...
Cina: la CMSA potrebbe cambiare parte de...
68 mensilità di bonus per i dipen...
Rocket Lab ha fatto ricorso contro la de...
Nutanix rende disponibile Azure Virtual ...
Il padrino del deep learning avverte: gl...
Il finto avviso "iPhone Storage is Full"...
Dietrofront in Cina, addio touchscreen p...
Un piccolo accessorio trasforma lo smart...
Dopo 370 anni il Cyphral Distich non è p...
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: 23:57.


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