Thanx all for help, but ^^ i did another experiments since yesterday 'til this mail 
arrived and i found another working code ;)


//////////////////////////////////////////////////////////////////////////////////
/* Mit diesem Programme m�chte ich
Dezimalzahlen in Zahlen des Bin�ren
Systems umwandeln und diese anschlie�end
ausgeben */

#include <stdio.h>
#define MAX_INT 2147483646

main () {

    int zahl;     ///
    int bit = 0;  /// Variablendeklaration der "zahl", des "bit" und der Z�hlvariable 
"i"
    int i = 0;    ///
    int a = 0;
//    int laenge;
    fprintf(stderr,"Bitte geben sie eine positive Zahl ein, "
            "welche dann in das duale Zahlensystem umgewandelt werden soll:\n");       
      /// Ausgabe
    scanf("%d", &zahl); /// Einlesen auf Adresse &zahl

    if(zahl > MAX_INT){
        printf("Die Zahl ist zu gro�!!!\n"); /// aussortieren zu gro�er Zahlen
    }else{
        if(zahl < 0){
            printf("Ich sagte doch POSITIVE Zahl...\n"); /// aussortieren negativer 
Zahlen
        }else{

            int lange = bestimme_laenge(zahl);  /* Initialisierung und Belegung von
                                                   laenge mit dem R�ckgabewert der 
Funktion
                                                   "bestimme_laenge", der die
                                                   Variable "zahl" �bergeben wird */
            int Dec[lange];  /// Initialisierung eines Array mit der L�nge lange bzw. 
bis zur Stelle lange-1

            printf("Die Zahl %d im dualen System ausgedr�ckt hei�t:\n", zahl);

            while (zahl > 0){
                bit = zahl % 2;
                zahl = (zahl - bit) / 2;
                Dec[i] = bit;
                i++;
            }

            for(i = lange - 1 ; i >= 0; i--){
                //      printf("[%d]=",i);
                printf("%d",Dec[i]);
                }

            printf("\n");
        }
    }
}

bestimme_laenge(int zaal){
    //  int zaal;
    int laenge = 0;
    while (zaal > 0){
        zaal = (zaal - (zaal % 2)) / 2;
        laenge = laenge + 1;
    }
    printf("Die Bin�rzahl und somit das ben�tigte Array ist %d Stellen lang.\n", 
laenge);
    return laenge;
}
/////////////////////////////////////////////////////////////////////////////


--
Mochten Sie Warenproben und Gutscheine im Wert von bis zu 2500 ? erhalten? Klicken Sie 
hier.
http://www.probenking.de/index.cfm?pp_ID=324212
_______________________________________________
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech

Reply via email to