Re: Aufgaben und Übungen,

Ich schreibe ein neues Programm für die Binärzahlumrechung, natürlich mit Shiften.

ich habe es erst mit 24 Bit gemacht, aber der Taschenrechner zur Probe wollte nicht

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main (void) {
    int a;
    int b;
    time_t t;
    int i;
    char as [17];
    char bs [17];

    srand ((unsigned) time (\&amp;t));

    a = rand () % (256*256);
    b = rand () % (256*256);

    for (i = 0;  i < 16;  i++)
        as [15-i] = '0' + ((a >> i) \&amp; 0x01);
    for (i = 0;  i < 24;  i++)
        bs [15-i] = '0' + ((b >> i) \&amp; 0x01);

    as [16] = 0;
    as [16] = 0;
    printf ("%s %in", as, a);
    printf ("%i %sn", b, bs);


return 0;
}

1110110001011010 60506
63568 1111100001010000

1110110001011010 60506
63568 1111100001010000

a)

63568 / 2 = 31784
31784 / 2 =



Zwischenrechnung
    63568
        2
    60000 / 2
   + 3000 / 2
   +  500 / 2
   +   60 / 2
   +    8 / 2

---------------
        30000
    +    1500
    +     250
    +      30
    +       4
--------------
        31784

31784 =
    30000
     1000
      700
       80
        4


31784 =
    30000 / 2 = 14000 Rest 2000
     1000 + 2000 = 3000, 3000 / 2 = 1400 Rest 200
      700 + 200 = 900, 900 / 2 = 400 Rest 100
       80 + 100 = 180 / 2 = 90 Rest 0
        4 / 2 = 2 Rest 0

14000
 1400
  400
   90
    2
-----
15892

Ok, das hat funktioniert

1110110001011010 60506
63568 1111100001010000

a)

63568 / 2 = 31784   Rest 0
31784 / 2 = 15892   Rest 0
15892 / 2 = 7946    Rest 0
7946 / 2 = 3973    Rest 0
3973 / 2 = 1986     Rest 1
1986 / 2 = 993      Rest 0
993 / 2 = 496       Rest 1
496 / 2 = 248       Rest 0 // Ab hier weiss ich es im Kopf
248 / 2 = 124       Rest 0
124 / 2 = 62        Rest 0
62 / 2 = 31         Rest 0
31 / 2 = 15         Rest 1
15 / 2 = 7          Rest 1
7 / 2 = 3           Rest 1
3 / 2 = 1           Rest 1
1 / 2 = 0           Rest 1

Die Zahl lautet

1111100001010000

Zwischenrechnung
    63568
        2
    60000 / 2
   + 3000 / 2
   +  500 / 2
   +   60 / 2
   +    8 / 2

---------------
        30000
    +    1500
    +     250
    +      30
    +       4
--------------
        31784

31784 =
    30000
     1000
      700
       80
        4

31784 =
    30000 / 2 = 14000 Rest 2000
     1000 + 2000 = 3000, 3000 / 2 = 1400 Rest 200
      700 + 200 = 900, 900 / 2 = 400 Rest 100
       80 + 100 = 180 / 2 = 90 Rest 0
        4 / 2 = 2 Rest 0

14000
 1400
  400
   90
    2
-----
15892

15892 =
    10000
     5000
      800
       90
        2

15892 =
    10000 / 2 = 4000 Rest 2000
     5000 + 2000 = 7000, 7000 / 2 = 3000 Rest 1000
      800 + 1000 = 1800, 1800 / 2 = 900, Rest 0
       90 / 2 = 40, Rest 10
        2 + 10 = 12, 12 / 2 = 6 Rest 0

4000
3000
 900
  40
   6
----
7946

7946 =
    7000
     900
      40
       6

7946 =
    7000 / 2 = 3000 Rest 1000
     900 + 1000 = 1900, 1900 / 2 = 900 Rest 100
      40 + 100 = 140, 140 / 2 = 70, Rest 0
       6 / 2 = 3, Rest 0

3000
 900
  70
   3

----
3973

3973 / 2 =
    3000
     900
      70
       3

3973 / 2 =
    3000 / 2 = 1500 Rest 0
     900 / 2 = 400 Rest 100
      70 + 100 = 170, 170 / 2 = 80 Rest 10
       3 + 10 = 13, 13 / 2 = 6, Rest 1

1500
 400
  80
   6
----
1986

1986 / 2 =
    1000
     900
      80
       6
/2

1986 / 2 =
    1000 / 2 = 500 Rest 0
     900 / 2 = 400 Rest 100
      80 + 100 = 180, 180 / 2 = 90, Rest 0
       6 / 2 = 3

500
400
 90
  3
---
993

993 / 2 =
    900 / 2
     90 / 2
      3 / 2

993 / 2 =
    900 / 2 = 400, Rest 100
     90 + 100 / 2 = 190, 190 / 2 = 90, Rest 10
      3 + 10 / 2 = 6, Rest 1

400
 90
  6
---
496, Rest 1

OK, und ich erweitere mein Übungsprogramm und teile eine grosse 64 bit zahl, durch 32 Bit.

Jetzt erst die Binärzahl umrechnen.

OK, die Bin"arumrechnung hat auch funktioniert

1110110001011010 60506
63568 1111100001010000

a)

63568 / 2 = 31784   Rest 0
31784 / 2 = 15892   Rest 0
15892 / 2 = 7946    Rest 0
7946 / 2 = 3973    Rest 0
3973 / 2 = 1986     Rest 1
1986 / 2 = 993      Rest 0
993 / 2 = 496       Rest 1
496 / 2 = 248       Rest 0 // Ab hier weiss ich es im Kopf
248 / 2 = 124       Rest 0
124 / 2 = 62        Rest 0
62 / 2 = 31         Rest 0
31 / 2 = 15         Rest 1
15 / 2 = 7          Rest 1
7 / 2 = 3           Rest 1
3 / 2 = 1           Rest 1
1 / 2 = 0           Rest 1

Die Zahl lautet

1111100001010000

Zwischenrechnung
    63568
        2
    60000 / 2
   + 3000 / 2
   +  500 / 2
   +   60 / 2
   +    8 / 2

---------------
        30000
    +    1500
    +     250
    +      30
    +       4
--------------
        31784

31784 =
    30000
     1000
      700
       80
        4

31784 =
    30000 / 2 = 14000 Rest 2000
     1000 + 2000 = 3000, 3000 / 2 = 1400 Rest 200
      700 + 200 = 900, 900 / 2 = 400 Rest 100
       80 + 100 = 180 / 2 = 90 Rest 0
        4 / 2 = 2 Rest 0

14000
 1400
  400
   90
    2
-----
15892

15892 =
    10000
     5000
      800
       90
        2

15892 =
    10000 / 2 = 4000 Rest 2000
     5000 + 2000 = 7000, 7000 / 2 = 3000 Rest 1000
      800 + 1000 = 1800, 1800 / 2 = 900, Rest 0
       90 / 2 = 40, Rest 10
        2 + 10 = 12, 12 / 2 = 6 Rest 0

4000
3000
 900
  40
   6
----
7946

7946 =
    7000
     900
      40
       6

7946 =
    7000 / 2 = 3000 Rest 1000
     900 + 1000 = 1900, 1900 / 2 = 900 Rest 100
      40 + 100 = 140, 140 / 2 = 70, Rest 0
       6 / 2 = 3, Rest 0

3000
 900
  70
   3

----
3973

3973 / 2 =
    3000
     900
      70
       3

3973 / 2 =
    3000 / 2 = 1500 Rest 0
     900 / 2 = 400 Rest 100
      70 + 100 = 170, 170 / 2 = 80 Rest 10
       3 + 10 = 13, 13 / 2 = 6, Rest 1

1500
 400
  80
   6
----
1986

1986 / 2 =
    1000
     900
      80
       6
/2

1986 / 2 =
    1000 / 2 = 500 Rest 0
     900 / 2 = 400 Rest 100
      80 + 100 = 180, 180 / 2 = 90, Rest 0
       6 / 2 = 3

500
400
 90
  3
---
993

993 / 2 =
    900 / 2
     90 / 2
      3 / 2

993 / 2 =
    900 / 2 = 400, Rest 100
     90 + 100 / 2 = 190, 190 / 2 = 90, Rest 10
      3 + 10 / 2 = 6, Rest 1

400
 90
  6
---
496, Rest 1

1110110001011010

1 * 2\^15
1 * 2\^14
1 * 2\^13
0 * 2\^12
1 * 2\^11
1 * 2\^10
0 * 2\^9
0 * 2\^8
0 * 2\^7
1 * 2\^6
0 * 2\^5
1 * 2\^4
1 * 2\^3
0 * 2\^2
1 * 2\^1
0 * 2\^0

1 * 2\^15 = 8192 + 8192 + 8192 + 8192
1 * 2\^14 = 8192 + 8192
1 * 2\^13 = 8192
1 * 2\^11 = 2048
1 * 2\^10 = 1024
1 * 2\^6 = 64
1 * 2\^4 = 16
1 * 2\^3 = 8
1 * 2\^1 = 2

8192 + 8192

 8192
 8192
  1
-----
16384

16384
16384
  1
1
-----
32768

1 * 2\^15 = 32768
1 * 2\^14 = 16384
1 * 2\^13 = 8192
1 * 2\^11 = 2048
1 * 2\^10 = 1024
1 * 2\^6 = 64
1 * 2\^4 = 16
1 * 2\^3 = 8
1 * 2\^1 = 2

 32768
 16384
  111

------
49152

8192
2048
1024
 11
----
11264

49152+11264

64+16 = 80
80+8+2 = 90

49152
11264
1  1
-----
60416

60416
+90

60506

1110110001011010

1 * 2\^15
1 * 2\^14
1 * 2\^13
0 * 2\^12
1 * 2\^11
1 * 2\^10
0 * 2\^9
0 * 2\^8
0 * 2\^7
1 * 2\^6
0 * 2\^5
1 * 2\^4
1 * 2\^3
0 * 2\^2
1 * 2\^1
0 * 2\^0

1 * 2\^15 = 8192 + 8192 + 8192 + 8192
1 * 2\^14 = 8192 + 8192
1 * 2\^13 = 8192
1 * 2\^11 = 2048
1 * 2\^10 = 1024
1 * 2\^6 = 64
1 * 2\^4 = 16
1 * 2\^3 = 8
1 * 2\^1 = 2

8192 + 8192

 8192
 8192
  1
-----
16384

16384
16384
  1
1
-----
32768

1 * 2\^15 = 32768
1 * 2\^14 = 16384
1 * 2\^13 = 8192
1 * 2\^11 = 2048
1 * 2\^10 = 1024
1 * 2\^6 = 64
1 * 2\^4 = 16
1 * 2\^3 = 8
1 * 2\^1 = 2

 32768
 16384
  111

------
49152

8192
2048
1024
 11
----
11264

49152+11264

64+16 = 80
80+8+2 = 90

49152
11264
1  1
-----
60416

60416
+90

60506

// Ich habe das Programm fertig geschrieben nicht f"ur 64 Bit - achten sie auf das unsigned sonst gibt es einen integer overflow

// Das unsigned muss rein. weil wir haben ja - signed -8192 bis 8191 jetzt f"ur diese Werte. Deswegned - unsigned

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define WORD            (unsigned) 256 * 256
#define DOUBLE_WORD     (unsigned) WORD * WORD
#define QUAD_WORD       DOUBLE_WORD * DOUBLE_WORD

int main (void) {
    int a;
    int b;
    time_t t;
    int i;
    char as [17];
    char bs [17];

    srand ((unsigned) time (\&amp;t));

    a = rand () % (256*256);
    b = rand () % (256*256);

    for (i = 0;  i < 16;  i++)
        as [15-i] = '0' + ((a >> i) \&amp; 0x01);
    for (i = 0;  i < 24;  i++)
        bs [15-i] = '0' + ((b >> i) \&amp; 0x01);

    as [16] = 0;
    as [16] = 0;
    printf ("%s %in", as, a);
    printf ("%i %sn", b, bs);

    unsigned long int c;
    unsigned long int d;
    unsigned long int e;

    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;

    e = c/d;

    printf ("%i/%i = %in", c, d, e);

return 0;
}

1110111101100000 61280
31278 0111101000101110
527475367/4034 = 130757

Jetzt kommt der Test

527475367/4034 = 130757

Kann sein, dass da was nicht stimmt. Ich war ja so schlau und habe auf unsigned geschworen, und habe ganz vergessen, bei printf unsigend zu verwenden.

Doch, das scheint in dem Fall zu stimmen

Moment, ich habe bei meiner Rechnung gerade nicht aufgepasst, ich mache jetzt weiter.

Also, offensichtlich tut das Verfahren, wenn ich durch zwei Teile

31784 =
    30000 / 2 = 14000 Rest 2000
     1000 + 2000 = 3000, 3000 / 2 = 1400 Rest 200
      700 + 200 = 900, 900 / 2 = 400 Rest 100
       80 + 100 = 180 / 2 = 90 Rest 0
        4 / 2 = 2 Rest 0

Kann man bequem durch 2 Teilen

Durch 4034 Teilen ist nicht bequem. Dann muss ich den Rest herausfinden. Aber ich bin auf ein N"aherungsverfahren gekommen

31784 =
    30000 / 2 = 14000 Rest 2000
     1000 + 2000 = 3000, 3000 / 2 = 1400 Rest 200
      700 + 200 = 900, 900 / 2 = 400 Rest 100
       80 + 100 = 180 / 2 = 90 Rest 0
        4 / 2 = 2 Rest 0

1110111101100000 61280
31278 0111101000101110
527475367/4034 = 130757

527475367/4034 =

527475367/4034 =

4034                0
2017                1
1008,5              2
504,25              3
252,125             4
126,0625            5
63,03125            6
31,515625           7
15,7578125          8
7,87890625          9
3,939453125         10
1,9697265625        11
0,98486328125       12

128778,165771
Ich teile den divisor immer wieder durch 2. Und so oft ich das gemacht habe, mache ich das mit dem Dividenden. Das Ergebnis der 2 Teilung also 2n̂ ist ungefähr der Quotient

Aber das ist nur ein Näherungsergebnis. Ich muss über den Rest nachdenken, Gut, ich gucke jetzt im Netz nach.[/code]

Ja, gut, was hier geschrieben steht, entspricht dem, was ich gemacht habe

https://lehrerfortbildung-bw.de/u_matnatech/mathematik/bs/bej/bej1/grund/anl_divi/">
Das ist genau, das was ich gemacht habe.
https://www.sivakids.de/schriftlich-dividieren-division/">
Aber mit diesem Verfahren kann man ja nicht 4034 teilen. das ist das Problem und ich hätte gerne eines, mit dem man dadurch teilen kann.

Das habe ich gemacht, wenn auch mit 2. Das kann ich auch. Aber ich möchte durch 4034 teilen.. Das ist was anderes.

Nein, stimmt doch nicht, hier ist es besser erklärt. Hier ist es mit 14 erklärt. Gut, das ist OK. Das ist OK so. Dann muss ich trotzdem den Rest finden

https://www.studienkreis.de/mathematik/schriftlich-dividieren-rest/">

Bei so grossen Zahlen den Rest finden, das ist nicht ganz so einfach. Aber ich habe mich im Prinzip nicht geiirt, dass ich vorne Anfange, und das Teile. Nur bei der Darstellung, weil ich habe hat

5000000 und so weiter geschrieben.- Das war bei mir nicht richtig. Das was ich geamcht habe, vom Prinzip das geliche und ich hätte genauso dividieren müssen

OK - .dann probiere ich das mal mit dem Verfahren aus.

Den Rest, finde ich natürlich einfach durch Subtraktion, das ist kein Problem - den kann ich einfach finden, mit Subtraktion.

1110111101100000 61280
31278 0111101000101110
527475367/4034 = 130757

527475367/4034 =

527475367/4034 =

    527475367/4034 = 130757 Rest 1629
   -4034
   -----
    12407
   - 4034
   - 4034
   - 4034
   ------
      3055
     -   0
     -----
      30553
    -7*4034
    -------
       23156
      -5*4034
      -------
       29867
      -7*4034
      -------

So, ich habe mir jetzt allerdings den Taschenrechner zur Hilfe genommen. Beim Teilen durch 4034 und bin dahinter gekommen, dass es doch ganz einfach ist

Wir machen schriftliche Subtraktion. Das heisst, wenn wir
11000 durch 4034 teilen

Dann rechnen

11000
 4034
-------
a

Z"ahlen mit

a - 4034 = b z"ahlen mit

und dann haben wir am Ende auch den Rest.

Ok, das mache ich jetzt mit der Binärrechnung gleich mit

Die eine Aufgabe lautet

1.) Rechne eine Dezimalzahl in eine Binärzahl um 2.) Rechne eine Binärzahl in eine Dezimal zahl um 3.) Dann kommt noch etwas: Rechne eine Zahl ins Zweierkomplement um 4.) Addiere 3 Zahlen Schriftlich, dezimal 5.) Subtrahiere 3 Zahlen schriftlich dezimal 6.) Multipliziere zwei Zahlen schriftlich 7.) Dividiere zwei Zahlen schriftlich.

Ich mache bei dem Programm noch eine erweiterung - ich erstelle eine Tabelle. Ein Array, von integer - da werde ich die ersten so und so viele Primzahlen speichern. Dann lasse ich den Computer eine Zahl mit den Primzahlen erstellen. Das heisst, ich multipliziere die Primzahlen.

Ach so einfach l"asst sich eine weitere Primzahl finden. So einfach l"asst sich eine grosse Primzahl finden - wenn man den Satz des Euklids f"ur die Unendlichkeit der Primzahlen nimmt

2*2*2*2*2+1 m"usste demnach eine Primzahl sein. Kann das sein?

Wir probieren es mal aus

2*2+1 = 5 stimmt
2*2*2+1 = 9 stimmt nicht.

Ach so ich verstehe, das d"urfen nur unterschiedliche Primzahlen sein.

Der Beweis hat mit Primfaktorzerlegung nichts zu tun. Primfaktorzerlegung ist

2*3
2*2*3
2*2*2*3

Oder
3*3*3

Aber, wenn ich

2*3+1 = 7 Primzahl
2*5+1 = 11 Primzah
2*7+1 = 15 keine Primzahl

Ach, so man muss alle nehmen

2*3+1 = 7 Ja
2*3*5+1 = 31 Ja
2*3*5*7+1 = 211 Wahrscheinlich

Ja, k"onnte man mal "uberpr"ufen ob das stimmt.

Also ich muss machen

2*2+1 = 5
2*3+1 = 7
2*5+1 = 11
Aber hier stimmt was nicht.

Gut, ich sage mir halt an der Stelle -

"Uben geht vor. Und ich mache das so. Der Computer errechnet Primzahlen, speichert sie in einem Array. Dieses Array ist nicht geheim. Das heisst, das wird ver"offentlicht. Mir. Und jetzt errechnet er aus den Errechneten Zahlen eine neue Zahl. Mit Primfaktorzerlegung, das heisst, mit einem Produkt.

Und jetzt muss ich daher kommen, die Zahl durch die gegeben Primzahlen teilen, solange durch eine, bis ein Rest entsteht, dann durch den n"achsten Primteiler.

Ach, ich verstehe jetzt den Beweis, des Euklids noch besser. Schauen sie mal, er lautet

kann niemals die Menge aller Primzahlen sein. Na ja. Also

2*7 + 1 = 15

Gut, demnach w"aren alle Primzahlen

2 und 7

Aber das sind nicht alle

5 und 3 sind es auch

5*3 = 15

Der Beweis des Euklids geht anders. Das bedeutet - entweder ist die Zahl eine Primzahl, womit die Menge aller Primzahlen nicht geufnden ist, oder sie l"asst sich in Primfaktoren zerlegen, die unterschiedlich von den anderen Primteilern sind - womit die Menge auch nicht endlich sit

Aber demnach m"usste

2*3+1 = 7
2*3*5+1 = 31
2*3*5*7+1 =
2*3*5*7*11+1
2*3*5*7*11*13+1

Das m"ussten alles Primzahlen sein, weil die Menge der Primzahlen ist gefunden. Das heisst, der Beweis ging so - entweder ist die Zahl eine Primzahl oder sie besteht aus Primfaktoren, deren Teiler nicht alle Primzahlen sind, sondern Primzahlen "die wir ausgelassen" haben.


Aber woher kommt die 19

3*3*3 + 1 = 19, da habe ich Schwachsinn gerechnet, das ist falsch

Aber 2*3*3 m"usste das heissen

Ah, warten sie mal
2*2 +1 = 5

5*5*5*5*5 + 1= ???


Nein, aber 17. Das ist nicht klar

2*2*2*2 +1 = 16 + 1 = 17

OK, jetzt mache ich weiter.

So, geht aber der Beweis des Euklid

p1*p2*p3*...*pn + 1

Jede Zahl l"asst sich als Produkt von Primzahlen schreiben. Damit muss

p1*p2*p3*...*pn + 1

entweder einen Primteiler unabh"angig von

p1, p2, p3, ...., pn

haben, oder selber eine Primzahl sein

das heisst, wenn wir alle Primzahlen in der Reihe bisher miteiannder multiplizieren, und eine 1 addieren, erhalten wir eine neue Primzahl.

So helle bin ich auch und schriftliches dividieren ist eine Frage der "Ubung.

// So, weit bin ich bisher, ich muss kurz was essen

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define WORD            (unsigned) 256 * 256
#define DOUBLE_WORD     (unsigned) WORD * WORD
#define QUAD_WORD       DOUBLE_WORD * DOUBLE_WORD

int main (void) {
    unsigned a;
    unsigned b;
    time_t t;
    int i;
    char as [17];
    char bs [17];

    srand ((unsigned) time (\&amp;t));

    a = rand () % (256*256);
    b = rand () % (256*256);

    for (i = 0;  i < 16;  i++)
        as [15-i] = '0' + ((a >> i) \&amp; 0x01);
    for (i = 0;  i < 16;  i++)
        bs [15-i] = '0' + ((b >> i) \&amp; 0x01);

    as [16] = 0;
    bs [16] = 0;
    printf ("1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung umn");
    printf ("%sb %udn", as, a);
    printf ("2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung umn");
    printf ("%u %sn", b, bs);

    unsigned long int c;
    unsigned long int d;
    unsigned long int e;
    unsigned long int f;

    printf ("3.) Addiere die drei Zahlen schriftlichn");
    d = (rand () % (WORD-1))+1;
    e = (rand () % (WORD-1))+1;
    f = (rand () % (WORD-1))+1;
    printf (" %16un", d);
    printf ("+%16un", e);
    printf ("+%16un", f);
    printf ("-----------------n");
    printf (" %16un", c + d + e);

    printf ("4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlichn");
    c = (rand () % (WORD-1))+1;
    d = (rand () % (WORD/4-1))+1;
    e = (rand () % (WORD/4-1))+1;
    f = (rand () % (WORD/4-1))+1;
    printf (" %16un", c);
    printf ("-%16un", d);
    printf ("-%16un", e);
    printf ("-%16un", f);
    printf ("-----------------n");
    printf (" %16in", c -  d - e -f);

    printf ("5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimaln");
    signed char g;
    signed char h;
    char gs [9];
    char hs [9];
    char ghs [9];

    gs [8] = 0;
    hs [8] = 0;
    ghs [8] = 0;
    g = (rand () % 256);
    h = (rand () % 128)-128;
    for (i = 0;  i < 8;  i++)
        gs [7-i] = '0' + ((g >> i) \&amp; 0x01);
    for (i = 0;  i < 8;  i++)
        hs [7-i] = '0' + ((h >> i) \&amp; 0x01);
    for (i = 0;  i < 8;  i++)
        ghs [7-i] = '0' + (((g+h) >> i) \&amp; 0x01);

    printf ("%i %i = %in", g, h, g+h);
    printf ("%s %s = %sn", gs, hs, ghs);

    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;

    e = c/d;

    printf ("%u/%u = %un", c, d, e);

return 0;
}

david@laptop-peaq:~\$ ./binary2
1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung um
0110010101100111b 25959d
2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
59109 1110011011100101
3.) Addiere die drei Zahlen schriftlich
            65103
+           39843
+           34921
-----------------
           104946
4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            13118
-            1457
-            5128
-           15575
-----------------
            -9042
5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimal
-34 -70 = -104
11011110 10111010 = 10011000
236224828/38722 = 6100
david@laptop-peaq:~\$ ./binary2
1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung um
0100010100100110b 17702d
2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
43309 1010100100101101
3.) Addiere die drei Zahlen schriftlich
             9890
+           32844
+           59058
-----------------
            42734
4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            24432
-            7663
-           10262
-           15923
-----------------
            -9416
5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimal
78 -66 = 12
01001110 10111110 = 00001100
1983631698/14920 = 132951
david@laptop-peaq:~\$ ./binary2
1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung um
0000110001101010b 3178d
2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
30904 0111100010111000
3.) Addiere die drei Zahlen schriftlich
            39595
+           16051
+           46017
-----------------
            55646
4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            58463
-           14732
-            9348
-            7470
-----------------
            26913
5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimal
-58 -20 = -78
11000110 11101100 = 10110010
1300666264/39177 = 33199
david@laptop-peaq:~\$

david@laptop-peaq:~\$ ./binary2
1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung um
1001010011000100b 38084d
2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
1729 0000011011000001
3.) Addiere die drei Zahlen schriftlich
            61125
+           41432
+           42303
-----------------
           102557
4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
             8209
-           13930
-            9102
-            1030
-----------------
           -15853
5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimal
-104 -69 = -173
10011000 10111011 = 01010011
6.) Multipliziere die zwei Zahlen schriftlich
1638696983*36317 = 1491478235
7.) Dividiere die zwei Zahlen schriftlich
399228399/34223 = 11665
8.) Errechne x Logarithmisch mit dem Taschenrechner
45346\^x = 1271700092
david@laptop-peaq:~\$

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define WORD            (unsigned) 256 * 256
#define DOUBLE_WORD     (unsigned) WORD * WORD
#define QUAD_WORD       DOUBLE_WORD * DOUBLE_WORD

int main (void) {
    unsigned a;
    unsigned b;
    time_t t;
    int i;
    char as [17];
    char bs [17];

    srand ((unsigned) time (\&amp;t));

    a = rand () % (256*256);
    b = rand () % (256*256);

    for (i = 0;  i < 16;  i++)
        as [15-i] = '0' + ((a >> i) \&amp; 0x01);
    for (i = 0;  i < 16;  i++)
        bs [15-i] = '0' + ((b >> i) \&amp; 0x01);

    as [16] = 0;
    bs [16] = 0;
    printf ("1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung umn");
    printf ("%sb %udn", as, a);
    printf ("2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung umn");
    printf ("%u %sn", b, bs);

    unsigned long int c;
    unsigned long int d;
    unsigned long int e;
    unsigned long int f;

    printf ("3.) Addiere die drei Zahlen schriftlichn");
    d = (rand () % (WORD-1))+1;
    e = (rand () % (WORD-1))+1;
    f = (rand () % (WORD-1))+1;
    printf (" %16un", d);
    printf ("+%16un", e);
    printf ("+%16un", f);
    printf ("-----------------n");
    printf (" %16un", c + d + e);

    printf ("4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlichn");
    c = (rand () % (WORD-1))+1;
    d = (rand () % (WORD/4-1))+1;
    e = (rand () % (WORD/4-1))+1;
    f = (rand () % (WORD/4-1))+1;
    printf (" %16un", c);
    printf ("-%16un", d);
    printf ("-%16un", e);
    printf ("-%16un", f);
    printf ("-----------------n");
    printf (" %16in", c -  d - e -f);

    printf ("5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimaln");
    signed char g;
    signed char h;
    char gs [9];
    char hs [9];
    char ghs [9];

    gs [8] = 0;
    hs [8] = 0;
    ghs [8] = 0;
    g = (rand () % 256);
    h = (rand () % 128)-128;
    for (i = 0;  i < 8;  i++)
        gs [7-i] = '0' + ((g >> i) \&amp; 0x01);
    for (i = 0;  i < 8;  i++)
        hs [7-i] = '0' + ((h >> i) \&amp; 0x01);
    for (i = 0;  i < 8;  i++)
        ghs [7-i] = '0' + (((g+h) >> i) \&amp; 0x01);

    printf ("%i %i = %in", g, h, g+h);
    printf ("%s %s = %sn", gs, hs, ghs);

    printf ("6.) Multipliziere die zwei Zahlen schriftlichn");
    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;
    e = c*d;
    printf ("%u*%u = %un", c, d, e);

    printf ("7.) Dividiere die zwei Zahlen schriftlichn");
    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;
    e = c/d;
    printf ("%u/%u = %un", c, d, e);

    printf ("8.) Errechne x Logarithmisch mit dem Taschenrechnern");
    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;
    printf ("%u\^x = %un", d, c);

return 0;
}

Jetzt beginne ich.

1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung um
1110010001111101b 58493d

1 2\^15
1 2\^14
1 2\^13
0 12
0 11
1 2\^10
0 9
0 8
0 7
1 2\^6
1 2\^5
1 2\^4
1 2\^3
1 2\^2
0
1 2\^0
b

1 2\^15      8219+8192+8219+8192
1 2\^14      8219+8192
1 2\^13      8192
1 2\^10      1024
1 2\^6       64
1 2\^5       32
1 2\^4       16
1 2\^3       8
1 2\^2       4
1 2\^0       1
b

8192
8192
 1
----
16384

16384
16384
  1
-----
32768

        1 43
        4 42
        8 38    39
       16 30    1
       32 24    3
       64 22    6                    18
     1024 18    2           14       1
     8192 14    9           1        8     5
    16384 12    8           3        6     1
    32768       6 + 4       3+7      1+2   1+3
---------       -
    58493

58493d

2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
40172 1001110011101100
3.) Addiere die drei Zahlen schriftlich
            24049
+           21423
+           16602
-----------------
            45472
4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012
5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimal
-99 -5 = -104
10011101 11111011 = 10011000
6.) Multipliziere die zwei Zahlen schriftlich
88054569*19508 = 4076580948
7.) Dividiere die zwei Zahlen schriftlich
658310531/45360 = 14513
8.) Errechne x Logarithmisch mit dem Taschenrechner
50362\^x = 671495079

Das war die erste Aufgabe, jetzt weiter.

Das ging jetzt wesentlich einfacher mit der Bin"arumrechnung, keine Ahnung, was ich da vorher gemacht habe, das war wohl einfach, war ich in Gedanken wohl wo anders

2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
40172 1001110011101100

40172/2 = 20086         Rest 0
20086/2 = 10043         Rest 0
10043/2 =  5021         Rest 1
 5021/2 =  2510         Rest 1
 2510/2 =  1255         Rest 0
 1255/2 =   627         Rest 1
  627/2 =   313         Rest 1
  313/2 =   156         Rest 1
  156/2 =    78         Rest 0
   78/2 =    39         Rest 0
   39/2 =    19         Rest 1
   19/2 =     9         Rest 1
    9/2 =     4         Rest 1
    4/2 =     2         Rest 0
    2/2 =     1         Rest 0
    1/2 =     0         Rest 1

1001110011101100

So geht es richtig, kann mal passieren, der Tag war lang zu viele Automaten, das geht nat"urlich auch einfacher. Den Vorteil hat es, dass ich jetzt schriftlich dividieren kann, das war auch mal notwendig. Pech kann passieren. Schriftlich dividieren ist in jedem Fall wichtig

2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
40172 1001110011101100

40172/2 = 20086         Rest 0
20086/2 = 10043         Rest 0
10043/2 =  5021         Rest 1
 5021/2 =  2510         Rest 1
 2510/2 =  1255         Rest 0
 1255/2 =   627         Rest 1
  627/2 =   313         Rest 1
  313/2 =   156         Rest 1
  156/2 =    78         Rest 0
   78/2 =    39         Rest 0
   39/2 =    19         Rest 1
   19/2 =     9         Rest 1
    9/2 =     4         Rest 1
    4/2 =     2         Rest 0
    2/2 =     1         Rest 0
    1/2 =     0         Rest 1

1001110011101100

1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung um
1110010001111101b 58493d

1 2\^15
1 2\^14
1 2\^13
0 12
0 11
1 2\^10
0 9
0 8
0 7
1 2\^6
1 2\^5
1 2\^4
1 2\^3
1 2\^2
0
1 2\^0
b

1 2\^15      8219+8192+8219+8192
1 2\^14      8219+8192
1 2\^13      8192
1 2\^10      1024
1 2\^6       64
1 2\^5       32
1 2\^4       16
1 2\^3       8
1 2\^2       4
1 2\^0       1
b

8192
8192
 1
----
16384

16384
16384
  1
-----
32768

        1 43
        4 42
        8 38    39
       16 30    1
       32 24    3
       64 22    6                    18
     1024 18    2           14       1
     8192 14    9           1        8     5
    16384 12    8           3        6     1
    32768       6 + 4       3+7      1+2   1+3
---------       -
    58493

58493d

2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
40172 1001110011101100

40172/2 = 20086         Rest 0
20086/2 = 10043         Rest 0
10043/2 =  5021         Rest 1
 5021/2 =  2510         Rest 1
 2510/2 =  1255         Rest 0
 1255/2 =   627         Rest 1
  627/2 =   313         Rest 1
  313/2 =   156         Rest 1
  156/2 =    78         Rest 0
   78/2 =    39         Rest 0
   39/2 =    19         Rest 1
   19/2 =     9         Rest 1
    9/2 =     4         Rest 1
    4/2 =     2         Rest 0
    2/2 =     1         Rest 0
    1/2 =     0         Rest 1

1001110011101100

3.) Addiere die drei Zahlen schriftlich
            24049
+           21423
+           16602
-----------------
            45472
4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012
5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimal
-99 -5 = -104
10011101 11111011 = 10011000
6.) Multipliziere die zwei Zahlen schriftlich
88054569*19508 = 4076580948
7.) Dividiere die zwei Zahlen schriftlich
658310531/45360 = 14513
8.) Errechne x Logarithmisch mit dem Taschenrechner
50362\^x = 671495079

Das liegt wahrscheinlich daran, weil die mich so gestresst haben und - wegen dem ganzen - und da soll noch mal einer sagen, Mathematik ist nicht gut, ich wäre sonst vielleicht nicht mehr runter gekommen.

Egal, ich mache weiter.

Da ist ein Fehler, im Programm, da wurde eine Zahl nicht addiert, sonst generell richtig.

Ja, Variable falsch benannt.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define WORD            (unsigned) 256 * 256
#define DOUBLE_WORD     (unsigned) WORD * WORD
#define QUAD_WORD       DOUBLE_WORD * DOUBLE_WORD

int main (void) {
    unsigned a;
    unsigned b;
    time_t t;
    int i;
    char as [17];
    char bs [17];


    srand ((unsigned) time (\&amp;t));

    a = rand () % (256*256);
    b = rand () % (256*256);

    for (i = 0;  i < 16;  i++)
        as [15-i] = '0' + ((a >> i) \&amp; 0x01);
    for (i = 0;  i < 16;  i++)
        bs [15-i] = '0' + ((b >> i) \&amp; 0x01);

    as [16] = 0;
    bs [16] = 0;
    printf ("1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung umn");
    printf ("%sb %udn", as, a);
    printf ("2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung umn");
    printf ("%u %sn", b, bs);

    unsigned long int c;
    unsigned long int d;
    unsigned long int e;
    unsigned long int f;

    printf ("3.) Addiere die drei Zahlen schriftlichn");
    d = (rand () % (WORD-1))+1;
    e = (rand () % (WORD-1))+1;
    f = (rand () % (WORD-1))+1;
    printf (" %16un", d);
    printf ("+%16un", e);
    printf ("+%16un", f);
    printf ("-----------------n");
    printf (" %16un", d + e + f);

    printf ("4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlichn");
    c = (rand () % (WORD-1))+1;
    d = (rand () % (WORD/4-1))+1;
    e = (rand () % (WORD/4-1))+1;
    f = (rand () % (WORD/4-1))+1;
    printf (" %16un", c);
    printf ("-%16un", d);
    printf ("-%16un", e);
    printf ("-%16un", f);
    printf ("-----------------n");
    printf (" %16in", c -  d - e -f);

    printf ("5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimaln");
    signed char g;
    signed char h;
    char gs [9];
    char hs [9];
    char ghs [9];

    gs [8] = 0;
    hs [8] = 0;
    ghs [8] = 0;
    g = (rand () % 256);
    h = (rand () % 128)-128;
    for (i = 0;  i < 8;  i++)
        gs [7-i] = '0' + ((g >> i) \&amp; 0x01);
    for (i = 0;  i < 8;  i++)
        hs [7-i] = '0' + ((h >> i) \&amp; 0x01);
    for (i = 0;  i < 8;  i++)
        ghs [7-i] = '0' + (((g+h) >> i) \&amp; 0x01);

    printf ("%i %i = %in", g, h, g+h);
    printf ("%s %s = %sn", gs, hs, ghs);

    printf ("6.) Multipliziere die zwei Zahlen schriftlichn");
    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;
    e = c*d;
    printf ("%u*%u = %un", c, d, e);


    printf ("7.) Dividiere die zwei Zahlen schriftlichn");
    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;
    e = c/d;
    printf ("%u/%u = %un", c, d, e);

    printf ("8.) Errechne x Logarithmisch mit dem Taschenrechnern");
    c = (rand () % (DOUBLE_WORD-1))+1;
    d = (rand () % (WORD-1))+1;
    printf ("%u\^x = %un", d, c);

return 0;
}

1.) Rechne die Zahl in binaer Darstellung  in eine Dezimale Darstellung um
1110010001111101b 58493d

1 2\^15
1 2\^14
1 2\^13
0 12
0 11
1 2\^10
0 9
0 8
0 7
1 2\^6
1 2\^5
1 2\^4
1 2\^3
1 2\^2
0
1 2\^0
b


1 2\^15      8219+8192+8219+8192
1 2\^14      8219+8192
1 2\^13      8192
1 2\^10      1024
1 2\^6       64
1 2\^5       32
1 2\^4       16
1 2\^3       8
1 2\^2       4
1 2\^0       1
b

8192
8192
 1
----
16384

16384
16384
  1
-----
32768

        1 43
        4 42
        8 38    39
       16 30    1
       32 24    3
       64 22    6                    18
     1024 18    2           14       1
     8192 14    9           1        8     5
    16384 12    8           3        6     1
    32768       6 + 4       3+7      1+2   1+3
---------       -
    58493

58493d


2.) Rechne die Zahl in dezimal darstellung in eine Binaerdarstellung um
40172 1001110011101100

40172/2 = 20086         Rest 0
20086/2 = 10043         Rest 0
10043/2 =  5021         Rest 1
 5021/2 =  2510         Rest 1
 2510/2 =  1255         Rest 0
 1255/2 =   627         Rest 1
  627/2 =   313         Rest 1
  313/2 =   156         Rest 1
  156/2 =    78         Rest 0
   78/2 =    39         Rest 0
   39/2 =    19         Rest 1
   19/2 =     9         Rest 1
    9/2 =     4         Rest 1
    4/2 =     2         Rest 0
    2/2 =     1         Rest 0
    1/2 =     0         Rest 1

1001110011101100

3.) Addiere die drei Zahlen schriftlich
            24049
+           21423
+           16602
-----------------
            45472


            24049
+           21423
+           16602
            11 1
-----------------
            62074
4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012
5.) Rechne die Zahl ins zweier komplement um, mit 8 Bit - und subtrahiere diese zahl von der ersten und rechne das Ergebnis nach dezimal
-99 -5 = -104
10011101 11111011 = 10011000
6.) Multipliziere die zwei Zahlen schriftlich
88054569*19508 = 4076580948
7.) Dividiere die zwei Zahlen schriftlich
658310531/45360 = 14513
8.) Errechne x Logarithmisch mit dem Taschenrechner
50362\^x = 671495079

3.) Addiere die drei Zahlen schriftlich
            24049
+           21423
+           16602
-----------------
            45472


            24049
+           21423
+           16602
            11 1
-----------------
            62074

Ich habe was entdeckt

Sehr gut

4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012

            10154
-            2510
-            2050
-           15606
-----------------

+            2510
+            2050
+           15606
-----------------
            20166

            -20166

            10154
           -20166
        ----------

- (20166-10154) = - (10012)

166
 88
 1
---
  78

Also, schauen sie mal - das ist so

Wenn ich

40
-50

Dann ist  das

-(50-40)

Wenn ich

50
40

Habe ist es wie gewohnt.

Also, das ist klar, sie m"ussen aufpassen, dass die negative Zahl, also der subtrahend nicht vom betrag gr"osser ist wie der minuend

Der Subtrahend muss kleiner sein, wie der Minuend, dann k"onnen wir normal die Differenz bilden

Sonst, m"ussen wir das Prinzip umkehren und negativ machen

gut - und an der Stelle muss ich ein paar Begriffe lernen

 37
 28
 1
---
 09

28+9 = 37

 28
-37
 1
---
-09

-(37-28)
-9

Nein, irgendwas stimmt da nicht und wie ich vermutet habe, kam meine Meldung zu fr"uh. Das stimmte so nicht.

Aber, etwas stimmt nicht.

Ich weiss nicht, was das Problem ist, ich brauche kurz einen Moment, stelle das aber vor. Also

4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012

            10154
-            2510
-            2050
-           15606
-----------------

+            2510
+            2050
+           15606
-----------------
            20166

            -20166

            10154
           -20166
        ----------

- (20166-10154) = - (10012)


[code]

[code]
Wenn ich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012

Dann m"usste ich ja rechnen

14
 6
sind 8. W"urde ich sage

14
-6 sind 8 "ubertrage 1. Ich mache mal den Gegenversuch. Ich streiche mal vorne die 1 bei der 15606
            10154
-            2510
-            2050
-           5606
-----------------

Also, hier ist es offensichtlich, ich habe gerechnet, mit dem Taschenrechner, weil, ich habe die 1 weggelassen, jetzt waren wir immer noch im negativen

Ich habe gerechnet

            10154
-            1510
-            1050
-            2606
-----------------

Da kommt raus:

4988 - das deckt sich ja, mit dem was wir dachten. Die 6 erg"anzt sich "uber die 8 zur 14

Na ja, sagen wir mal so, ich habe schon recht, wenn ich

14-16 habe, dann ist das

-(16-14) = -2
Umgekehrt:
14
16
---
 08

Also, ich hatte wahrscheinlich doch recht. Der Minuend muss doch gr"osser sein, als der Subtrahend. Ich hatte wahrscheinlich recht. Wir m"ussten das auch noch beweisen

Das sind keine Aber ich hatte wahrscheinlich recht und gerade eben einen Fehler gemacht. ich mache das noch mal

Da habe ich wahrscheinlich im letzten Moment gerade scheisse gelabert. Also einen Moment

14
-16

Da bin ich zur alten Manier zur"uckgekehrt:

14
-16
----
  8
Also das stimmt nicht

Aber

16
-14

Das stimmt

Jetzt machen wir

 144
- 16
   1
-----
    128

Das stimmt. Also, ich habe wahrscheinlich wo ich gesagt, habe ich habe mich vertan, mich doch nicht vertan, sondern bin zur alten Manier zur"uckgekehrt. Ich gucke mir das noch mal an

Das ist so - dass wahrscheinlich der Substrahend kleiner sein muss wie der Minuend.

Ach, so, ja, ja, ich habe hier den dummen Fehler gemacht, dass ich normal gerechnet habe, also so wie man muss. Deswegen dachte ich kurz. Es stimmte wohl doch

Ich habe gemacht
37
 28
 1
---
 09
28+9 = 37
 28
-37
 1
---
-09
-(37-28)
-9

 28
-37
 0
----
11

Nein, jetzt ist Chaos ausgebrochen

Ach, so, ja, ja, ich habe hier den dummen Fehler gemacht, dass ich normal gerechnet habe, also so wie man muss. Deswegen dachte ich kurz. Es stimmte wohl doch

Ich habe gemacht
37
 28
 1
---
 09
28+9 = 37
 28
-37
 1
---
-09
-(37-28)
-9

 28
-37
 0
----
11

Nein, jetzt ist Chaos ausgebrochen

Trotzdem habe ich recht, das m"ussen wir untersuchen, weil: Zum Beispiel

4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012

            10154
-            2510
-            2050
-           15606
-----------------

+            2510
+            2050
+           15606
-----------------
            20166

            -20166

            10154
           -20166
        ----------

- (20166-10154) = - (10012)

[code]

[code]
Wenn ich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012

Dann m"usste ich ja rechnen

14
 6
sind 8. W"urde ich sage

14
-6 sind 8 "ubertrage 1. Ich mache mal den Gegenversuch. Ich streiche mal vorne die 1 bei der 15606
            10154
-            2510
-            2050
-           5606
-----------------

Also, hier ist es offensichtlich, ich habe gerechnet, mit dem Taschenrechner, weil, ich habe die 1 weggelassen, jetzt waren wir immer noch im negativen

Ich habe gerechnet

            10154
-            1510
-            1050
-            2606
-----------------

Da kommt raus:

4988 - das deckt sich ja, mit dem was wir dachten. Die 6 erg"anzt sich "uber die 8 zur 14

Sie sehen hier ganz klar

4.) Subtrahiere die letzten drei Zahlen schriftlich von der ersten schriftlich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012

            10154
-            2510
-            2050
-           15606
-----------------

+            2510
+            2050
+           15606
-----------------
            20166

            -20166

            10154
           -20166
        ----------

- (20166-10154) = - (10012)

[code]

[code]
Wenn ich
            10154
-            2510
-            2050
-           15606
-----------------
           -10012

Dann m"usste ich ja rechnen

14
 6
sind 8. W"urde ich sage

14
-6 sind 8 "ubertrage 1. Ich mache mal den Gegenversuch. Ich streiche mal vorne die 1 bei der 15606
            10154
-            2510
-            2050
-           5606
-----------------

Also, hier ist es offensichtlich, ich habe gerechnet, mit dem Taschenrechner, weil, ich habe die 1 weggelassen, jetzt waren wir immer noch im negativen

Ich habe gerechnet

            10154
-            1510
-            1050
-            2606
-----------------

Da kommt raus:

4988 - das deckt sich ja, mit dem was wir dachten. Die 6 erg"anzt sich "uber die 8 zur 14

10154
-            1510
-            1050
-            2606
wenn ich so w"ahle, wie gewohnt, mit einer 8 am Ende, wenn gr"osser, dann nicht. Also einen Moment.

Jetzt machen wir mal

   377
-1599
    1 11
 ------
       0778

Mein Taschenrechner sagt
377 - 1599 ist -1222

Gut, jetzt machen wir

 100377
-   1599
    1 1   11
-----------
       98778

Der Taschenrechner sagt dassselbe, Der Taschenrechner sagt

98778

38
37
---
01

  8
37
---


37-8 = 9

Und jetzt mache ich

37
 8
1
---
 29

 7
 8
---
-1

Also, es stimmt doch. Und wenn ich

37
39
---
39-37 = -2

Hier m"usste ich das umdrehen

Und wenn ich

137
 39
 1
----
   98

Hier stimmt das

Also, es sieht so aus, trotz aller wirrungen jetzt, der Subtrahend muss kleiner wie der Minuend sein

Doch jetzt man sieht das ganz klar, das war jetzt ein bisschen durcheinander. Ich habe ein Beispiel

1
-2
= 1

Und nach dem "ublichen Regeln der Subtraktion habe ich

 1
-2
1
---
  9

Gut, und jetzt mache ich aber

 11
- 2
 1
----
  09

Also, hier sieht man es ganz klar.

Ich bin jetzt wohl durch die Aufregung durcheinander gekommen. Also

1
-2

Nach der normalen Schriftlichen macht man Ergebnis 9. In jedem Fall falsch. Aber bei

11
-2

sind es 9. das ist richtig. Also, ich werde das beweisen, der Subtrahend muss kleiner dem Minuenden sein.