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

    meledetto ciclo while,help

    salve sto tentando di caprici di più sul ciclo while e sulle sue condizioni ma con scarsi risultati;il mio programma è questo:

    {
    int i,x;

    for(i=3;i<=5;i=i+2){
    do{
    x=1+2;
    printf("%d\n",x);
    }
    while(!(i<=5) || !(x==3)/*questa condizione non funziona*/);
    }

    }

    vorrei che il ciclo si chiudesse quando i e minore uguale a 5 e quindi mi da i primi 2 nuermi e quando mi trova il primo 3,quindi si ferma appena trova il primo,ma non ci riesco!!!!quale condizione devo mettere nel while? :master:
    grazie a tutti per l'aiuto

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Spiegati meglio ...

    Vuoi che il ciclo venga ripetuto o che si esca dal ciclo?

    E quali sono gli intervalli?

  3. #3
    allora il ciclo da in output 3 finchè non raggiunge il massimo dell'intervallo,quindi il programma da 2 volte l'operazione x:
    3
    3
    però io vorrei che al primo 3 si blocca il ciclo...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Visualizza 2 volte il 3 perche' il ciclo for viene eseguito 2 volte ...

  5. #5
    e lo so ma nelle condizioni possi impostare l'uscita dal ciclo non appena trovo un numero che scelgo,tipo ora voglio che esce non appena mi trova il 3 ma mettiamo caso fosse un operazione che mi da 1,2,3,9,0,11,12;posso impostare che appena mi trova lo 0 esce dal ciclo?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Senti ... non ti riesco a capire ... o scrivi delle frasi di senso compiuto, con virgole e punti al posto giusto o non so cosa dirti ...

    Dato che ci sono DUE cicli (il for e il while) vorrei capire da QUALE ciclo intendi uscire ...
    E cosa intendi per "uscire" perche' se esci dal ciclo while entri comunque nel ciclo for ...
    Se vuoi uscire ANCHE dal ciclo for DOPO essere uscito dal while, me lo devi far capire ...

  7. #7
    scusami allora cercherò di spiegarmi il meglio possibile:

    forse il mio programma è sbagliato io vorrei fare questo:
    dato un intervallo di numeri dispari 3,5,7,9 in quest'intervallo vorrei dividere questi numeri per un altro numero impostato tipo 27.
    qundi l'operazione dovrebbe essere 27/3 27/5 etc...
    non appena trovo il risutlato che voglio il cilco si ferma,tipo voglio che il ciclo si fermi appena trova il risultato 5.4 cioè la divisione di 27/5 se non trova il risultato si deve fermare all'ultima divisione cioè 27/9.
    per questo avevo pensato ad un for che mi da i numeri dispari da 3 a 9 e nel for un ciclo while che mi ripete l'operazione cioè
    27/3
    27/5
    27/7
    27/9
    finche non trova il numero che voglio o se non lo trova si deve fermare al calcolo dell'ultima divisione,però non ci riesco.scusa il linguaggio non sono un'esperta,spero di essermi fatta capire

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ma forse ti serve solamente un ciclo for ... se scrivi un ciclo for che va da 3 a quanto vuoi, a passo 2, e fai la divisione, hai risolto ... il ciclo while non serve.

    Intendo

    int i, a, r;

    a=27;

    for(i=3; i<=9; i=i+2)
    {
    r = a / i;
    }

    Quello che non ho capito e' "il ciclo si fermi appena trova il risultato" ... "se non trova il risultato ..." ... in una divisione c'e' sempre un risultato ... che vuol dire "non trova il risultato" ?

  9. #9
    perchè io ora ti sto facendo degli esmpi per capirci meglio ma nella mia operazione del programma vero potrebbe venirmi uno zero,quello zero indica che il numero non è primo,ora se esce questo zero faccio una printf("il numero non è primo") altrimenti un'altra con("il numero è primo")capisci
    ti ringrazio molto dell'aiuto

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Allora tu stai cercando di fare un ciclo per controllare se il numero e' primo o no ... potevi anche dirlo prima ...

    Comunque, ti confermo che il while non c'entra nulla ... semmai devi inserire una

    if

    dopo la divisione per capire se questa ha un resto o no. E da questo capisci se il numero e' divisibile ...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.