
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Non so...
Secondo me, sia questi blocchi "vuoti" che i "cicli infiniti" (sia for che while) sono un cattivo stile di programmazione, pericoloso per gli errori potenzialmente difficili da calcolare.
L'operatore di controllo delle condizioni del ciclo non dovrebbe essere privo di significato, ma avere un certo peso. Se abbiamo un "ciclo infinito", significa che ci sono alcune uscite e interruzioni aggiuntive all'interno del ciclo e non sono sempre ovvie. A proposito, neanche a me piace l'operatore break - uso sempre l 'operatore continue in un ciclo.
E come è stato detto qui l'offuscamento del codice è semplicemente infantile... Grandi programmatori-copisti riuniti qui che hanno paura che qualcuno venda il loro codice o ottenga milioni di dollari in altri modi... L'orgoglio è uno dei peccati capitali!
non sono d'accordo.
Prova a riscrivere questo codice senza il ciclo infinito e la pausa
non sono d'accordo.
Prova a riscrivere questo codice senza il ciclo infinito e la pausa
Un compito interessante.
A mio parere, il codice presentato è piuttosto "opaco" e difficile da capire, anche se la struttura è chiara per me, e la funzione è utile.
A prima vista, il ciclo dovrebbe essere while (i<size) {....}, ma non l'ho ancora capito bene.
Non appena ci metterò le mani sopra, lo farò.
Un compito interessante.
A mio parere, il codice presentato è piuttosto "opaco" e difficile da capire, anche se la struttura è chiara per me e la funzione è utile.
A prima vista, il ciclo dovrebbe essere while (i<size) {....}, ma non l'ho ancora capito bene.
Appena avrò tempo, lo farò.
La funzione rimuove tutti i valori val dall'array a[] e lo compatta, rimuovendo i "buchi" degli elementi cancellati senza cambiare la sequenza dei dati.
La funzione cancella tutti i valori val dall'array a[] e lo compatta, rimuovendo i "buchi" dagli elementi cancellati senza cambiare la sequenza dei dati.
Sì, sì, te l'ho detto - lo scopo è chiaro, la funzione stessa è utile. Ora non posso ancora, più tardi capirò come funziona, e la riscriverò senza ciclo infinito. Bene, e poi - scriverò la mia variante di funzione, come scriverei io.
Sì, sì, te l'ho detto - lo scopo è chiaro, la funzione stessa è utile. Ora non posso ancora, più tardi sistemerò il mio lavoro e lo riscriverò senza loop infinito. Bene, e poi - scriverò la mia versione della funzione, come la scriverei io.
il codice è stato preso da qui. C'è stata una competizione spontanea un anno e mezzo fa.
non sono d'accordo.
Prova a riscrivere questo codice senza il ciclo infinito e la pausa
Sì, è chiaro che ci sono varianti più compatte, ma più lente.
La tua variante è 2-3 volte più lenta della precedente e c'è un errore da qualche parte, perché dà un checksum sbagliato.
Stiamo parlando dell'opzione più veloce senza HashSet.
Non so...
Secondo me, sia questi blocchi "vuoti" che i "cicli infiniti" (sia for che while) sono un cattivo stile di programmazione, pericoloso per gli errori potenzialmente difficili da calcolare.
L'operatore di controllo delle condizioni del ciclo non dovrebbe essere privo di significato, ma avere un certo peso. Se abbiamo un "ciclo infinito", significa che ci sono alcune uscite e interruzioni aggiuntive all'interno del ciclo e non sono sempre ovvie. A proposito, neanche a me piace l'operatore break - uso sempre l 'operatore continue in un ciclo.
E come è stato detto qui l'offuscamento del codice è semplicemente infantile... Grandi programmatori-copisti riuniti qui che hanno paura che qualcuno venda il loro codice o ottenga milioni di dollari in altri modi... L'orgoglio è uno dei peccati capitali!
Maxim, non funziona così, ci dovrebbero essere 2 cicli, altrimenti non c'è modo. Prima si rimuovono gli elementi non necessari, poi si "rimpicciolisce" l'array verso l'alto (float). Il secondo ciclo è dentro il primo.
Un costrutto for implica il controllo di una condizione e l'uscita prima che il ciclo inizi.
Un costrutto while comporta il controllo di una condizione e l'uscita prima che il ciclo finisca.
Un ciclo infinito implica il controllo della condizione e l'uscita in qualsiasi punto del ciclo.