forked from paulusja/info1_uebungen
Add assignments
This commit is contained in:
parent
aaef71d8e4
commit
ffdaf12535
11
01/binaerUmrechnung.c
Normal file
11
01/binaerUmrechnung.c
Normal file
@ -0,0 +1,11 @@
|
||||
/***********************************************************************************
|
||||
* Aufgabe *
|
||||
* Schreiben Sie ein Programm, das eine ganze Zahl einliest und die Rechenschritte *
|
||||
* anzeigt, um die letzten vier Bits der entsprechenden Binaerzahl zu ermitteln. *
|
||||
* *
|
||||
* Ausgabebeispiel mit 21: *
|
||||
* 21 / 2 = 10, Rest: 1 *
|
||||
* 10 / 2 = 5, Rest: 0 *
|
||||
* 5 / 2 = 2, Rest: 1 *
|
||||
* 2 / 2 = 1, Rest: 0 *
|
||||
***********************************************************************************/
|
||||
23
01/binaerZahl.c
Normal file
23
01/binaerZahl.c
Normal file
@ -0,0 +1,23 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
// Hinweis: bit4 ist das hoechstwertige Bit, bit1 das niederwertigste Bit
|
||||
unsigned int bit4 = 1;
|
||||
unsigned int bit3 = 0;
|
||||
unsigned int bit2 = 1;
|
||||
unsigned int bit1 = 0;
|
||||
|
||||
unsigned int zahl = 0;
|
||||
|
||||
// Todo: a) Benutzen Sie nur Shift- und Bit-Operatoren, um die obige Binaerzahl in der Variable zahl zu speichern.
|
||||
// b) Kommentieren Sie Teilaufgabe a) aus und nutzen Sie nun nur logische und arithmetische Operatoren sowie
|
||||
// Bitoperatoren, um die obige Binaerzahl in der Variable zahl zu speichern.
|
||||
// Geben Sie am Ende jeder Teilaufgabe die entsprechenden Bits der Variable zahl aus.
|
||||
|
||||
printf("Zielwert: %u%u%u%u\n", bit4, bit3, bit2, bit1);
|
||||
|
||||
// Ausgabe der Variable zahl
|
||||
|
||||
return 0;
|
||||
}
|
||||
33
01/bit_shift_operatoren.c
Normal file
33
01/bit_shift_operatoren.c
Normal file
@ -0,0 +1,33 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
int wert = -5;
|
||||
unsigned int istZwischen0und255 = 0;
|
||||
unsigned int istGerade = 0;
|
||||
int malMinusEins = 0;
|
||||
int malAcht = 0;
|
||||
|
||||
// Todo: Pruefen Sie nur mit Bitoperatoren und dem !-Operator, ob in der Variable wert ein Wert im Interval [0; 255] gespeichert ist.
|
||||
istZwischen0und255 = 0; // Hier Ausdruck anstelle von 0 einfuegen.
|
||||
|
||||
printf("Liegt die Variable wert im Intervall [0; 255]? %u\n", istZwischen0und255);
|
||||
|
||||
// Todo: Pruefen Sie nur mit Bitoperatoren, ob in der Variable wert ein gerader Wert gespeichert ist.
|
||||
istGerade = 0; // Hier Ausdruck anstelle von 0 einfuegen.
|
||||
|
||||
printf("Ist der Wert der Variablen wert gerade? %u\n", istGerade!=0);
|
||||
|
||||
// Todo: Rechnen Sie den in der Variablen wert gespeicherten Wert mal -1 und verwenden Sie dabei nur Bitoperatoren und den +-Operator.
|
||||
malMinusEins = 0; // Hier Ausdruck anstelle von 0 einfuegen.
|
||||
|
||||
printf("%d * -1 = %d\n", wert, malMinusEins);
|
||||
|
||||
// Todo: Rechnen Sie den in der Variablen wert gespeicherten Wert mal 8 und verwenden Sie dabei keine arithmetischen Operatoren.
|
||||
malAcht = 0; // Hier Ausdruck anstelle von 0 einfuegen.
|
||||
|
||||
printf("%d * 8 = %d\n", wert, malAcht);
|
||||
|
||||
return 0;
|
||||
}
|
||||
4
01/bmi.c
Normal file
4
01/bmi.c
Normal file
@ -0,0 +1,4 @@
|
||||
/*************************************************************************************************
|
||||
* Schreiben Sie ein Programm, das das Gewicht in kg und die Groesse in cm einliest und dann den *
|
||||
* Body Mass Index mit zwei Nachkommastellen ausgibt (bmi = gewicht / (groesse in m)²). *
|
||||
*************************************************************************************************/
|
||||
18
01/division.c
Normal file
18
01/division.c
Normal file
@ -0,0 +1,18 @@
|
||||
/********************************************************************************
|
||||
* Aufgabe *
|
||||
* Welche Ausgabe liefert folgendes Programm? Erst ueberlegen, dann ausfuehren! *
|
||||
********************************************************************************/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
int zahl1 = 1, zahl2 = 2;
|
||||
double erg;
|
||||
|
||||
erg = zahl1 / zahl2;
|
||||
|
||||
printf("%d / %d = %lf", zahl1, zahl2, erg);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user