Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    semplice codice e ciclo while

    Salve ho provato a fare un semplice codice che consisteva nel calcolare il guadagno di un "albergo"
    mettiamo che io ho un albergo che vale 10€ e ogni giorno guadagno 1€
    ogni volta che ho abbastanza soldi per comprare un nuovo albergo (costano tutti 10€) lo compro subito.
    con 2 alberghi il mio guadagno non sarà più di 1 ma di 2 ovviamente e cosi via.
    quindi mettiamo che siano passati 11 giorni
    al 10° giorno avrà 10€ quindi abbastanza soldi per comprare un secondo albergo
    l'undicesimo giorno avrò 2€ perchè con 2 alberghi guadagno il doppio.

    Ho provato a far fare questo al computer con un codice php
    dandogli questo codice

    codice:
    <?php
    $x = 1;
    $k = 11;
    while ($k >= 10) {
    ++$x;
    $k - 10;
    } 
    $guadagno = $x * $k;
    $valore = $guadagno + $x * 10;
    print("$valore");
    ?>
    x è il guadagno giornaliero
    k sono i giorni
    quindi ho usato un ciclo while per fare in questo modo, se i giorni sono maggiori di 10 (o uguali) sottrai 10 ai giorni e aggiungi 1 al valore del guadagno giornaliero(x)

    quindi k diventa 1 e x 2
    2*1= 2 e sono i soldi che ho
    poi ho voluto far calcolare anche i soldi sommati al valore complessivo degli alberghi (x * 10)
    quindi dovrebbe venire fuori 22
    a me il codice sembra corretto a me dice di aver sbagliato nella righa 6 dove ho scritto ++x;
    ma io non capisco l'errore dov'è....

  2. #2
    Codice PHP:
    while ($k >= 10) {
    ++
    $x;
    $k 10;

    bello quel $k - 10 ... Senza alcuna assegnazione $k rimarra' sempre = 11 ed while ... whilera' fino alla fine dei secoli oppure fino al timeout ....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    assegnazione?

  4. #4
    Prova a cambiare ++$x; con $x++;
    Ce l'ho fatta! - ItalianPixel -

  5. #5
    Originariamente inviato da XxcoralloxX
    assegnazione?
    Come ti ha già fatto notare piero.mac se non assegni il nuovo valore $k varrà sempre 11 ed il ciclo andrà avanti all'infinito.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Originariamente inviato da portapipe
    Prova a cambiare ++$x; con $x++;
    E cosa dovrebbe cambiare con la modifica da te proposta?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    si ma in conclusione per far levare 10 unità da k come dovrei fare?

    non funge nemmeno cosi

    <?php
    $x = 1;
    $k = 11;
    while ($k >= 10) {
    $a = $k - 10;
    $x++;
    }
    $guadagno = $x * $a;
    $valore = $guadagno + $x * 10;
    print("$valore");
    ?>

  8. #8
    Originariamente inviato da XxcoralloxX
    si ma in conclusione per far levare 10 unità da k come dovrei fare?
    Guarda, posso capire una svista nella stesura del codice, capita a tutti, ma non vederla nel momento in cui la si fa notare mi fa pensare al solito e classico copia/incolla di chi non capisce nulla di programmazione.
    Trovi una qualche differenza in queste due righe di codice?

    Codice PHP:
    ...
    $k 10
    ... 
    e

    Codice PHP:
    ...
    $k $k 10
    ... 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  9. #9
    a non avevo capito... sono ancora alle prime armi ti ringrazio della correzione

  10. #10
    però se invece di 11 do come valore ad esempio 22 mi da 36... quando invece dovrebbe essere 55......

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.