Domanda Risolto Aiuto C++ ciclo

burgos13

Utente Bronze
15 Ottobre 2018
48
11
2
29
Ciao a tutti, sono al primo anno di Informatica e ai primi approcci con Eclipse e con il linguaggio di C++. Vorrei sapere con quali comandi posso far richiedere di nuovo al programma l'inserimento di un valore. Mi spiego meglio...
Per esempio, facendo:
cout<<"Inserisci x"<< endl;
cin>>x;
Ed inserendo un comando if, while o quel che sia dove la condizione si verificherà falsa, come faccio a far tornare il programma al cout???
Non esitate a contattarmi per ulteriori chiarimenti e grazie a tuttiiiii :)
 
puoi spiegare meglio il tuo problema?

Dalla riga 24 come faccio a far tornare il programma alla riga 19?? Cioè come faccio a far richiedere al programma un altro valore e ripetere l'operazione?? Grazie per la risposta!
Cattura.JPG
 
Ultima modifica:
puoi togliere il "div" dalla condizione, perche ti esce non appena metti un valore che non è divisore.
se devi terminare non appena hai trovato un divisore puoi mettere un altro boolean al posto di div che setti a 1(e quindi ti termina il ciclo) appena stampi "divisore corretto"
Messaggio unito automaticamente:

C++:
#include <iostream>
using namespace std;

int main(){
    int n, d;
    cout<<"inserire un numero"<<endl;
    cin>>n;
    cout<<"inserire un divisore"<<endl;
    cin>>d;
    while(n%d!=0 || d>=n){ //ho messo questa condizione perche è quella che nel tuo codice non ti fa dire che il valore è corretto, ho tenuto la seconda condizione perche credo che tu voglia solo numeri minori del dividendo
        cout<<"inserire un altro divisore"<<endl;
        cin>>d;
    }
    cout<<"divisore corretto"<<endl;
    return 0;
}
 
  • Mi piace
Reazioni: burgos13
puoi togliere il "div" dalla condizione, perche ti esce non appena metti un valore che non è divisore.
se devi terminare non appena hai trovato un divisore puoi mettere un altro boolean al posto di div che setti a 1(e quindi ti termina il ciclo) appena stampi "divisore corretto"
Messaggio unito automaticamente:

C++:
#include <iostream>
using namespace std;

int main(){
    int n, d;
    cout<<"inserire un numero"<<endl;
    cin>>n;
    cout<<"inserire un divisore"<<endl;
    cin>>d;
    while(n%d!=0 || d>=n){ //ho messo questa condizione perche è quella che nel tuo codice non ti fa dire che il valore è corretto, ho tenuto la seconda condizione perche credo che tu voglia solo numeri minori del dividendo
        cout<<"inserire un altro divisore"<<endl;
        cin>>d;
    }
    cout<<"divisore corretto"<<endl;
    return 0;
}
Grazie milleeeeeee!!!