Problema Output funzione monotono crescente

di Rimuru il
41 risposte

41 Risposte - Pagina 3

  • Sbagliata per quale numero, ad esempio?

  • Non saprei, non ho provato

    Ma siccome estrae due cifre per volta non proverà mai la seconda estratta con la prima successiva

    Quindi dovrebbe sbagliare per numeri del tipo:

    1212 1434 o simili

    Esempio 1328

    13 passa, 28 passa, ma 32 non viene preso in considerazione

    Dopo pranzo magari provo…

  • Estrae due cifre correttamente e si sposta di una cifra alla volta. Non sbaglia.

    Con 1328 esamina

    2 e 8

    poi 

    3 e 2

    e poi

    1 e 3

    dato che fa una sola divisione per ciclo e quindi shifta a destra di un solo digit

  • Non controllo, mi fido

    Mi ero sbagliato quindi, meglio, mi fa bene chiedere scusa

    Grazie

  • Nessun problema

  • 29/04/2023 - oregon ha scritto:


    Ho chiesto a mio figlio di 11 anni, ha capito che se a 1 cifra non c'è la condizione per un confronto fra numeri

    Tuo figlio avrà detto “confronto tra cifre” … sono cose diverse … “salvo errori”

    In pratica, tornando al codice, la soluzione di dobby è quella che normalmente si scriverebbe anche se, ricordiamo che siamo di fronte a studenti, io non userei la & ma una semplice if

    if (n1 <= n2) flag=0; 

    Ovviamente, da un punto di vista matematico, cifra e numero hanno significati diversi: ogni cifra è un numero, il viceversa è falso. Se parliamo di monocifre allora confronto fra cifre=controllo fra numeri ad una cifra. E poi, sai, 11 anni… ma ancora non capisco dove sto offendendo qualcuno… mah!

    Nel dubbio, scusate, non era nelle mie intenzioni.

    Aggiungo: n1 n2 sono due variabili, io ho fatto con una sola variabile. Uhm…. Sarà questo che istiga all'offesa? 

    Come ho scritto, tutte le stade portano a roma (ooooohhhh hai scritto roma in minuscolooooo adesso mi arrivano 1mln di risposte inerenti l'italiano piuttosto che la programmazione), io uso un solo while e una sola variabile. Previo controllo del numero da esaminare. E ripeto, se sto offendendo chiedo scusa.

  • Ma perché parli di offese? Nessuno offende nessuno.

    Personalmente parlo di “precisione” nel fornire indicazioni, soprattutto ad un principiante.

    La questione una variabile o due variabili è risibile. Le variabili si usano per chiarezza, ripeto, specialmente con un principiante.

    Il termine “istiga” non ha senso ed è fuori luogo. Non ho l'età né l'esperienza per badare ad una ridicola discussione su una o due variabili.

    Fra l'altro tu non hai usato variabili o while ma hai solo “descritto” una procedura, per tua stessa ammissione sbagliata. Sempre per tua ammissione non conosci il linguaggio. Di che parliamo?

    Ma tutto, ripeto, senza alcuna offesa per nessuno, non la prendere in criminale.

    E adesso mi taccio, attendo che l'OP si faccia vivo, se vuole, le polemiche sterili le lascio stare.

  • Oregon, toglimi una curiosità:

    perché hai detto che 

    29/04/2023 - oregon ha scritto:


     nel primo caso sarebbe necessario calcolare il logaritmo in base 10 del valore, magari non facilissimo per l'op

    come fa lo OP non va già bene? intendo, non è comunque la strada più veloce?

    intendevi per contare le cifre, giusto?

  • Sì certo che va bene, non sono stato chiaro, intendevo usando una sola funzione, la strlen per le sstRinghe, la funzione logaritmo peri numeri 

  • Grazie

  • 29/04/2023 - StandardOil ha scritto:


    Purtroppo la soluzione di dobby è sbagliata

    Non confronta le cifre a coppie, ma estrae coppie di cifre e le confronta

    C'è differenza

    Adesso pappa…

    Grazie per la segnalazione ma non riesco a capire l'errore. Grazie.

    Io comunque non volevo dare un codice finito chiavi in mano, volevo proporre una soluzione non completo sulla quale si poteva discutere.  Rimuru dice di studiare C da un mese. 
    Non dico di utilizzare la mia soluzione, non voglio l'esclusiva. Possiamo parlare della soluzione, partendo da come si calcola se un numero è monotono crescente oppure no, vedere varie soluzioni e come applicarle.

  • No, scusa, mi ero sbagliato io

Devi accedere o registrarti per scrivere nel forum
41 risposte