Hallo,
ich soll ein C-Programm zur Umrechnung von Dualzahlen in Dezimalzahlen erstellen, das zunächst prüft, ob die Zahl eine Dualzahl ist. Wenn sie keine ist, soll eine Fehlermeldung erfolgen und eine erneute Eingabeaufforderung. Gerade dieser Teil bereitet mir große Probleme. Vielleicht kann mir aber schon jemand sagen, ob der Rest in etwa richtig oder wo ich noch etwas verbessern müsste. In der main-Funktion soll die Dualzahl eingeben und die Dezimalzahl ausgegeben werden.
#include <stdio.h>
void dezimal(int n, int z){
if(n>0){
if(n%10=1){
x=x+pow(2,i);
i++;
n=n/10;
}
else {
i++;
n=n/10;
}
}
return x;
}
int main(){
int x;
int n;
int z;
x=0;
printf("Bitte Dualzahl eingeben: ");
scanf("%d", &n);
printf("Die Dezimalzahl ist %d", x);
}
Für Hilfe wäre ich sehr dankbar, habe nämlich noch nicht so viel Ahnung vom Programmieren.
ich soll ein C-Programm zur Umrechnung von Dualzahlen in Dezimalzahlen erstellen, das zunächst prüft, ob die Zahl eine Dualzahl ist. Wenn sie keine ist, soll eine Fehlermeldung erfolgen und eine erneute Eingabeaufforderung. Gerade dieser Teil bereitet mir große Probleme. Vielleicht kann mir aber schon jemand sagen, ob der Rest in etwa richtig oder wo ich noch etwas verbessern müsste. In der main-Funktion soll die Dualzahl eingeben und die Dezimalzahl ausgegeben werden.
#include <stdio.h>
void dezimal(int n, int z){
if(n>0){
if(n%10=1){
x=x+pow(2,i);
i++;
n=n/10;
}
else {
i++;
n=n/10;
}
}
return x;
}
int main(){
int x;
int n;
int z;
x=0;
printf("Bitte Dualzahl eingeben: ");
scanf("%d", &n);
printf("Die Dezimalzahl ist %d", x);
}
Für Hilfe wäre ich sehr dankbar, habe nämlich noch nicht so viel Ahnung vom Programmieren.