Informatik

Informatik 1 & 2 Basisjahr ETH

Informatik 1 & 2 Basisjahr ETH


F. W.
Diese Lernkarten bieten einen Überblick über grundlegende Konzepte der Informatik auf Universitätsniveau. Sie behandeln Operatoren, ihre Präzedenz und Assoziativität, sowie die Verwendung von Variablen und Ausdrücken in der Programmierung. Themen wie bedingte Ausführung, Schleifen und Datentypen werden ebenfalls abgedeckt. Ideal für Studierende, die ihr Verständnis von grundlegenden Programmierkonzepten vertiefen möchten.
Flashcards
31
Students
1
Language
German
Category
Computer Science
Level
University
Created / Updated
07.10.2016 / 08.10.2016

Flashcards

Datentyp für ganze Zahlen

int a = 1;

Eingabe via Terminal (z.B. Tastatureingabe)

std : : cin >>

Ausgabe in das Terminal

std : : cout <<

Zuweisungsoperator. Weist einem L-Wert einen neuen Wert zu.

=

Multiplikation von zwei R-Werten

*

Datentyp für natürliche Zahlen  (inklusive 0)

unsigned int b = 1

Schreibzugriff auf Variable verbieten.

Gemeint ist naturlich der Schreibzugriff ¨ nach der Initialisierung

const

 

Division

/ Präzedenz: 14 und Assoziativität: links

Modulo

 

%

Rest der Ganzzahldivision

Prä-Inkrement.

Erhöht den Wert der Variablen und gibt den neuen Wert zuruck.

++a

Post-Inkrement. Erhöht den Wert der Variablen und gibt den alten Wert zuruck.

a++

Addiert den rechten Operanden zum linken Operanden.

+=

int a = 4;

a += 5; // a gets value 9

Subtrahiert den rechten Operanden zum linken Operanden.

a = 10;

a - = 3; //a get's new value 7

Multipliziert den rechten Operanden zum linken Operanden.

a =3;

a *= 5; //a get's new value of 15

Dividiert den rechten Operanden zum linken Operanden.

a =6;

a /= 2; //a get's new value of 3

Datentyp für Wahrheitswerte

bool;

for (bool another = true; another;) {
int a;
std::cin >> a; if (a < 3) // Note: a < 3 is of type bool another = false;
}

Logisches UND

&&

Kurzschluss-Auswertung: && wertet immer den linken Operanden zuerst aus. Ergibt dieser false, so wird der rechte Operand nicht mehr ausgewertet

if (3 > 2 && 10 > 11) // no short circuit evaluation
std::cout << "Of course not!\n";

Logisches ODER

| | 

Kurzschluss-Auswertung: || wertet auch immer den linken Operanden zuerst aus. Ergibt dieser true, so wird der rechte Operand nicht mehr ausgewertet

int a = 3;
if (3 < 8 || ++a < 2) // short circuit evaluation
std::cout << "Yes!\n";

std::cout << a << "\n"; // Output: 3

Logisches NICHT

!

Präzedenz: 16 und Assoziativität: rechts

int a,b,c;
std::cin >> a >> b >> c;
if ( ! (a < b && c < b) )
std::cout << "b is not max!" << "\n";

Strikt kleiner

<

Präzedenz: 11 und Assoziativität: links

strikt grösser

>

Präzedenz: 11 und Assoziativität: links

kleiner gleich

<=

Präzedenz: 11 und Assoziativität: links

gröser gleich

>=

Präzedenz: 11 und Assoziativität: links

exakt gleich

==

Präzedenz: 10 und Assoziativität: links

ungleich

!=

Präzedenz: 10 und Assoziativität: links

bedingtes Ausführen von Codes

if - else

int a,b;
std::cin >> a >> b;


// if a < b then output "Ja"; otherwise output "Nein"
if (a < b)
{ std::cout << "Ja\n";
} else {
std::cout << "Nein\n";
}

sofortiges Stoppen des Programms zu Testzwecken

assert

Erfordert: #include <cassert>

int a,b;
std::cin >> a >> b;
assert(b != 0); // prevent division by 0
std::cout << a / b << "\n";

for Schleife

for (...) {...}

Wenn man eine leere Condition als Abbruchbedingung angibt, so wird diese als true interpretiert.

unsigned int sum = 0; 
for (unsigned int i = 1; i <= n; ++i) { 
sum += i;
std::cout << "Intermediate result: " << sum << "\n";

variabeln mit unverändertem Wert

const

Konstante
const vor integer

const int speed_of_light = 299792458;

L-Wert

Definiert als Wert des Objekts an seiner Adresse. Er schreibt jedem Objekt einen Wert zu und ermöglicht dem Program die Variabel im späteren Verlauf aufzurufen. 

R-Wert

Alles was kein L-Wert ist. (Bedeutet meistens, dass der R-Wert nur auf seinen Wert bezogen wird.)

Lernen