Chiarimento differenza tra = e == nel controllo if-else

di
Anonimizzato18624
il
6 risposte

Chiarimento differenza tra = e == nel controllo if-else

Così va bene (giusto?):
/*ESERCIZIO 5

Sapendo che l'operatore % calcola il resto della divisione tra due numeri interi (ad esempio 23%7 restituisce 2 perché 23 diviso 7 fa 3 ed avanza 2): inserito un numero, dire se è pari o dispari.
*/
#include <iostream>

using namespace std;

int main()
{
    int numero=0;

    cout << "Inserire un numero intero: ";
    cin >> numero;
    cout << "Hai inserito " << numero << endl;

    if (numero%2==0)
    {
        cout << "Il numero inserito e' pari!" << endl;
    }
    else
    {
        cout << "Il numero inserito e' dispari!" << endl;
    }

    return 0;
}
Tuttavia se scrivo:
 if (numero%2=0)
con = anziché == mi restituisce il seguente errore a questa riga:
error: lvalue required as left operand of assignment|
Quale la differenza fra = e ==?

6 Risposte

  • Re: Chiarimento differenza tra = e == nel controllo if-else

    Queste sono cognizioni di base che non si imparano sui forum ma sui libri.

    Se vuoi veramente studiare il linguaggio, ti consiglio un libro sul C (uno tra quelli usati dalle facoltà di informatica vanno benissimo, ad esempio il K&R o il Deitel).

    I videocorsi e internet non vanno bene, non per tutto.

    Per gli operatori in questione puoi comunque leggere questa pagina



    e vedere la differenza tra

    l'operatore di assegnamento =

    e

    l'operatore relazionale ==

    Per assegnare un valore ad una variabile usi il primo, per confrontare valori usi il secondo
  • Re: Chiarimento differenza tra = e == nel controllo if-else

    Ok, grazie.

    In ogni caso l'errore era appunto dovuto ad aver usato = anziché ==? Per il resto andava bene?
  • Re: Chiarimento differenza tra = e == nel controllo if-else

    L'hai compilato ed eseguito?

    Hai fatto delle prove?

    Funziona con dei pari e con dei dispari?
  • Re: Chiarimento differenza tra = e == nel controllo if-else

    Come detto da oregon, studiati le basi della programmazione.

    l'operatore = a sinistra non deve avere nessuna espressione. in questo caso, tu hai numero%2, che è un'espressione, quindi ti genera errore.

    ricordati che è errato usare = in un if, poiché la condizione sarebbe considerata sempre vera.
  • Re: Chiarimento differenza tra = e == nel controllo if-else

  • Re: Chiarimento differenza tra = e == nel controllo if-else

    Puoi trovare un'ampia scelta di pdf online (e degli esercizi te li puoi anche inventare), basta chiedere a .
Devi accedere o registrarti per scrivere nel forum
6 risposte