Ciao a tutti devo fare un programma che faccia il complemento a due di un numero binario.
Ho scritto questo codice:
Arrivato a questo punto riesco solamente ad invertire gli 0 in 1 e viceversa ma non so come sommare 1 alla cifra ottenuta dopo il complemento a uno in modo da fare il complemento a 2...avete qualche suggerimento?? Grazie per l'aiuto.codice:#include <stdio.h> #include <stdlib.h> int b,i; main() { printf("Quanti bit vuoi utilizzare? : "); scanf("%d",&b); printf("Inserisci la cifra binaria di cui si vuole fare il complemento a 2\n"); int vett[b]; for(i=0;i<b;i++){ printf("Inserisci il valore %d della cifra binaria: ",i+1); scanf("%d",&vett[i]); if(vett[i]!=0&&vett[i]!=1){ printf("%c%c Il valore inserito non corrisponde ad una cifra binaria (0 - 1)%c%c\n",219,219,219,219); printf("Inserisci il valore %d della cifra binaria: ",i+1); scanf("%d",&vett[i]); } } for(i=0;i<b;i++){ if(vett[i]==1){ vett[i]=0; } else{ vett[i]=1; } printf("La cifra binaria inserita dopo aver fatto il complemento a 1 %c : %d\n",138,vett[i]); } system("PAUSE"); }
PS: Se non rispondo per un pò è perchè ho problemi alla connessione e spesso resta staccata anche per qualche ora.

Rispondi quotando