Complemento a 10

di il
9 risposte

Complemento a 10

Volevo effettuare il complemento a 10 tramite codice. La formula è 10^n-x, dove n è il numero di cifre del numero x inserito. es. Inserendo 100, il risultato é 10^3-100=900,invece viene 1000


#include <stdio.h>
#include <math.h>

int main() {
unsigned int x,n=0;
unsigned int res1 = 0;






printf("Enter a positive integer: ");
scanf("%u", &x);


while (x) {
x /= 10;
n++;
}

res1=pow(10,n)-x;


printf("%u\n", res1);


return 0;
}

9 Risposte

  • Re: Complemento a 10

    È ovvio se modifichi x fino ad azzerarlo... basta ragionarci un minimo...
  • Re: Complemento a 10

    Sisi,ma non capisco come poter sottrarre il valore della x iniziale, quello che inserisci da tastiera
  • Re: Complemento a 10

    Utilizza un'altra variabile
  • Re: Complemento a 10

    Ok,ma come faccio a far combaciare il valore della nuova variabile con il valore della x inserito da tastiera
  • Re: Complemento a 10

    Hai studiato le basi del linguaggio? Non sai usare le variabili?

    a=x;
  • Re: Complemento a 10

    Ok ho risolto, se invece voglio il caso per x=0, il risultato 10 come lo ottengo?


    #include <stdio.h>
    #include <math.h>

    int main() {
    unsigned int x,a,n=0;
    unsigned int res1 = 0;






    printf("Enter a positive integer: ");
    scanf("%u", &x);

    a=x;
    while (x) {
    x /= 10;
    n++;
    }

    res1=pow(10,n)-a;


    printf("%u\n", res1);


    return 0;
    }
  • Re: Complemento a 10

    ilMitra ha scritto:


    Ok ho risolto, se invece voglio il caso per x=0, il risultato 10 come lo ottengo?
    Nemmeno gli if/else hai fatto?
  • Re: Complemento a 10

    Li ho fatti da pochissimo, quale può essere una soluzione per avere i 2 casi?
  • Re: Complemento a 10

    Provaci tu siamo all'abc ... non si fanno gli esercizi al posto tuo.

    E usa i tag code per il codice nel forum, leggi il regolamento.
Devi accedere o registrarti per scrivere nel forum
9 risposte