C-Uebung

Aufgabe "Arithmetik"

HonorCode | | Logik

a) Welchen Dezimalwert haben die Variablen nach der Initialisierung mit den folgenden Zahlenwerten:

char a=10;
char b=010;
int c='2';
int d=0x2;
int e=0x21;
unsigned char f=-10; /* hint: two's complement */

Nehmen Sie nur ein Blatt Papier zuhilfe!

b) Welchen Wert hat die Variable x am Ende des folgenden Programms:

#include <stdio.h>

int main()
{
   int x;

   x = 1;
   x = x+2*x;
   x = x-(x<<1);
   x = x+x/3;

   return(0);
}

Nehmen Sie wieder nur ein Blatt Papier zuhilfe!

c) Geben Sie zu dem folgenden mathematischen Ausdruck den entsprechenden C-Ausdruck an. Geben Sie die entsprechende Zahl mit dem printf Befehl und dem %d Platzhalter aus.

$\displaystyle{ \frac{4-10+\frac{100+100-40+80}{5\cdot2\cdot4}+36}{\frac{90-30}{10-5}} }$

Nun ist der Rechner als Hilfsmittel erlaubt!

d) Berechnen Sie die Zahl Pi ($\Pi$) näherungsweise mit Hilfe der Kettenbruchdarstellung von Lambert:

$\displaystyle{ \frac{4}{\Pi} = 1 + \frac{1^2}{3 + \frac{2^2}{5 + \frac{3^2}{7 + \frac{4^2}{9 + \frac{5^2}{11 + ...}}}}} }$

Berechnen Sie das Ergebnis obiger Darstellung mit 5 Brüchen. Geben Sie den Zahlwert als Fließkommazahl mit dem printf Befehl und dem %g Platzhalter aus.

HonorCode | | Logik

Options: