RISOLTO Ricercare due lettere in una Stringa

Pubblicità
Stato
Discussione chiusa ad ulteriori risposte.
Non sto facendo nessuna polemica io.
Sei te che mi hai dato del gradasso ;)
C'è size - 1 perchè metti caso che l'ultima lettera della stringa è "n" (quindi abbiamo abcdn) allora poi andrà a controlla i + 1 (cioè 5+1), ma nella posizione 6 non c'è nulla.
Ti basta mettere quella condizione solo nel while
 
In tal caso si prende la lunghezza della stringa da ricercare e si scorre fino alla lunghezza della stringa in cui cercare meno la lunghezza della stringa da cercare.
Generalmente prima di scrivere del codice è bene pensare all'algoritmo da implementare e come può essere migliorato / ottimizzato
 
In tal caso si prende la lunghezza della stringa da ricercare e si scorre fino alla lunghezza della stringa in cui cercare meno la lunghezza della stringa da cercare.
Generalmente prima di scrivere del codice è bene pensare all'algoritmo da implementare e come può essere migliorato / ottimizzato
Cosa che comunque ibernato ha fatto (almeno nell'ultima versione del codice che ha scritto e involontariamente immagino)
 
Infatti, non avresti dovuto scrivere del codice nel linguaggio, ma descrivere l'algoritmo e al limite mettere giù del pseudocodice.

Inviato dal mio Nexus 6P utilizzando Tapatalk
 
Ma dentro l'if ha messo i < size-1 :)
Non è la stessa cosa, quella condizione serve a scansionare il vettore fino al penultimo carattere. dentro a if non ha senso, anche perché sempre verificata.

Scusate, ma qui si tratta di logica elementare, non di programmazione!

Inviato dal mio Nexus 6P utilizzando Tapatalk
 
Non è la stessa cosa, quella condizione serve a scansionare il vettore fino al penultimo carattere. dentro a if non ha senso, anche perché sempre verificata.

Scusate, ma qui si tratta di logica elementare, non di programmazione!

Inviato dal mio Nexus 6P utilizzando Tapatalk
E' verificata, ma senza quel controllo (size -1) arrivi all'ultimo carattere e poi lo stesso controlli i+1 ma non ci sarà nessun carattere.
Anche senza la size -1 funziona ma comunque vai a controllare zone di memorie che non sai cosa c'è dentro.
 
E' verificata, ma senza quel controllo (size -1) arrivi all'ultimo carattere e poi lo stesso controlli i+1 ma non ci sarà nessun carattere.
Anche senza la size -1 funziona ma comunque vai a controllare zone di memorie che non sai cosa c'è dentro.
Sei ore che te lo dico e ora sei tu che me lo vorresti spiegare? Non è che cerca in aree di memoria che non sai cosa c'è dentro, sei fuori dallo stack.. é un errore di overflow. Sbagliato.

Inviato dal mio Nexus 6P utilizzando Tapatalk
 
Sei ore che te lo dico e ora sei tu che me lo vorresti spiegare? Non è che cerca in aree di memoria che non sai cosa c'è dentro, sei fuori dallo stack.. é un errore di overflow. Sbagliato.

Inviato dal mio Nexus 6P utilizzando Tapatalk
Tu hai solo fatto polemica senza scrivere una soluzione :)
Basta così per me per uno stupido programma.
 
Tu hai solo fatto polemica senza scrivere una soluzione :)
Basta così per me per uno stupido programma.
Cosa stai dicendo? Tu hai dato una soluzione "sbagliata" ed è dalle 6 di questa mattina che ti ripeto dove sono gli errori!!! Siamo al paradosso!
Sono 35 anni che programmi e mi ritrovo a sentirmi dare lezioni si come trovare un byte in una stringa, da parte di uno che non sa nemmeno cosa sono!!! Ahahah

Inviato dal mio Nexus 6P utilizzando Tapatalk
 
Cosa stai dicendo? Tu hai dato una soluzione "sbagliata" ed è dalle 6 di questa mattina che ti ripeto dove sono gli errori!!! Siamo al paradosso!
Sono 35 anni che programmi e mi ritrovo a sentirmi dare lezioni si come trovare un byte in una stringa, da parte di uno che non sa nemmeno cosa sono!!! Ahahah

Inviato dal mio Nexus 6P utilizzando Tapatalk
Veramente tu dicevi che il controllo dentro l'if era inutile (cos non vera) e che stampava sempre "NO" anche se stampava "OK" (cosa non vera).
L'unico errore era i < size (scrivendo di fretta il codice) nell'if che ho corretto con size -1 (stop).

Basta così comunque :)
Next time correggi la soluzione così si evitano queste polemiche.

Puoi programmare anche da 100 anni, non vuol dire niente.
Se fai polemiche senza postare una tua soluzione che reputi corrette, fai chiacchiere inutili.
 
Ultima modifica:
Ripeto e confermo che la condizione nell'if non serve e che il contatore doveva terminare a 98.. cioè, precisamente, a "iIl fatto che non mi fissi accorto del return dentro la condizione è semplicemente perché è un modo di programmare un algoritmo che non rientra minimamente nel mio modo di pensare. Uscire da un programma in quel modo è assolutamente deprecabile perché fonte di errore, evidentemente sei un autodidatta o comunque spero che non lavori come programmatore perché un modo simile lo userei al massimo per una patch provvisoria da fare sparire rapidamente

Inviato dal mio Nexus 6P utilizzando Tapatalk
 
  • Mi piace
Reazioni: BAT
Stato
Discussione chiusa ad ulteriori risposte.
Pubblicità
Pubblicità
Indietro
Top