// Een functie om decimale naar binaire weergave van een getal om te zetten
int decToBinair(int n)
{
int binair getal[32];
int ik =0;
terwijl (n> 0)
{
binairGetal[i] =n % 2;
n =n/2;
ik++;
}
voor (int j =ik - 1; j>=0; j--)
printf("%d", binaryNum[j]);
printf("\n");
}
// Een functie om binair getal naar zijn 2-complement te converteren
int binairTo2sComplement(int binairGetal[], int n)
{
int ik;
voor (i =0; ik
binairGetal[i] =!binairGetal[i];
voor (i =n - 1; ik>=0; ik--)
{
als (binairGetal[i] ==0)
binairGetal[i] =1;
anders
pauze;
}
}
// Stuurprogramma
int hoofd()
{
int n;
printf("Voer een decimaal getal in:");
scanf("%d", &n);
decToBinair(n);
printf("Het 2-complement is:");
int binair getal[32];
int len =32;
int decToBin =decToBinary(n);
binaryTo2sComplement(binaryNum, len);
decToBinair(decToBin);
retour 0;
}
```
Uitgang:
```
Voer een decimaal getal in:10
1010
Het 2-complement is:0101
```