Entscheidungen und Wertkonstanten

Größe: px
Ab Seite anzeigen:

Download "Entscheidungen und Wertkonstanten"

Transkript

1 Entscheidungen und Wertkonstanten Die Entscheidungen, die ein Programm fällen kann, basieren immer auf einer einfachen Ja/Nein- Aussage. Unabhänig davon wieviel künstliche Intelligenz ein Programm besitzt, bleibt die Grundlage jeder Entscheidung die Statusbits in der CPU. Und die liefern immer nur Ja oder Nein. Boole sche Ausdrücke und relationale Operatoren Die Grundlage einer Entscheidung bildet ein boole scher Ausdruck. Der Name soll an George Boole ( ) erinnern, der als Begründer der mathematischen Logik angesehen wird. So ein Ausdruck liefert entweder das Ergebnis wahr oder falsch. Dieses Ergebnis könnte in einem einzigen Bit gespeichert werden. Als Lieferant eines Entscheidungswertes dienen die vergleichenden Operatoren. Ein anderer Ausdruck dafür ist relationale Operatoren. Abbildung 1 Tabelle der relationalen Operatoren Beachten Sie bei den vergleichenden Operatoren besonders den Test auf Gleichheit. In C unterscheiden wir zwischen einer Zuweisung mit = und einem Test mit ==. Am Anfang übersieht man den Unterschied gerne. Das! -Zeichen bedeutet nicht (not). Damit wird auch der Operator!= leicht verständlich. Er bedeutet nicht gleich (not equal) oder auch ungleich. Es gibt in C keinen eigenen Datentyp, der eine Ja/Nein-Entscheidung speichern könnte. Pascal hätte hierfür boolean. Wir verwenden zum Ablegen eines booleschen Ergebnisses eine Variable, die einen ganzzahligen Datentyp haben muss. Üblich sind char - oder int -Variablen. Die Ausdrücke mit vergleichenden Operatoren liefern einen ganzzahligen Wert. Ist der Ausdruck falsch, wird eine 0" zurückgegeben. Jeder andere Wert ungleich 0" wird als wahr verstanden. Dieser Wert kann entweder in einer entsprechenden Anweisung ausgewertet oder in einer Variablen gespeichert werden. Entscheidungen und Konstante

2 int boole; int var1; var1 = 17; boole = 5 > var1; /* ergibt falsch - also 0 */ boole = (var1 == 17); /* ergibt wahr - also ein anderer Wert als 0 */ Abbildung 2 Zuweisung eines boole schen Wertes In der letzen Zeile sollte man ein Klammernpaar schreiben. Dies ist in C nicht notwendig, aber die Lesbarkeit steigt deutlich. Bei Zuweisungen wird die rechte Seite zuerst ausgewertet. Außerdem hat der Vergleich eine höhere Priorität als die Zuweisung. Auswertung eines boole schen Ergebnisses Entscheidungen werden in vielen Programmkonstrukten benötigt. In C gibt es: die bedingte Anweisung, die Ja/Nein-Entscheidung, die Fallunterscheidung, die Schleifen und den bedingten Ausdruck. Die bedingte Anweisung Die Ausführung einer einzelnen syntaktischen Anweisung kann mit Hilfe von if von einer Bedingung abhängig gemacht werden. if selbst ist keine Anweisung, sondern ein Schlüsselwort, das eine Steuerstruktur einleitet. Die Steuerstruktur setzt sich hier aus dem Schlüsselwort if, einem boole schen Ausdruck in runden Klammern und einer Anweisung zusammen. Eine Steuerstruktur ist eine Zusammenfassung von Programmelementen mit einem festgelegten Aufbau. Die bedingte Anweisung ist ein Sonderfall der Entscheidung. Sie kann in einem Struktogramm dargestellt werden. Bei der bedingten Anweisung bleibt der Nein -Zweig leer, bei der vollständigen Ja/Nein -Entscheidung werden in jedem Zweig die Anweisungen eingetragen. Schauen wir uns zwei Beispiele an. Das erste Beispiel wertet innerhalb von if einen Ausdruck aus, das zweite eine Variable. Beispiel mit booleschem Ausdruck (Bild 6-4) Abbildung 3 Entscheidung Beginnen wir bei main(). Eine Variable soll das Ergebnis der Ausgabefunktion puts() speichern. puts() liefert bei Gelingen das zuletzt ausgegebene Zeichen oder bei einem Fehlschlag EOF. Nach der Ausgabe steht in var entweder ein \n oder EOF, da puts() an den String eine Zeilenschaltung anhängt. Für einzelnezeichen nimmt man in C zumeist eine int -Variable. Entscheidungen und Konstante

3 1 /* Bedingte Anweisung */ 2 /* bedanw.c */ 3 4 #include <stdio.h> 5 #include <stdlib.h> 6 7 int main () 8 { 9 int var; /* lokale Variable */ var = puts ("Hier bin ich!"); /* Abfrage mit boole'schem Ausdruck */ 14 if (var == EOF) 15 exit (1); /* Abbruch bei Fehler */ 16 return 0; 17 } Abbildung 4 Die bedingte Anweisung In der if -Steuerstruktur bilden wir zuerst einen boole schen Ausdruck. Die einzelne Anweisung, die der Abfrage folgt, wird nur dann ausgeführt, wenn die Abfrage wahr ergibt. Wie in den weiteren Steuerstrukturen auch fasst man in C alle Teile, die den Ablauf beeinflussen, in runden Klammern zusammen. Beispiel mit boole scher Variablen (Bild 6-5) Unser Beispiel läßt sich im Bild 6-5 ein wenig umformulieren, um die Verwendung einer Variablen bei if zu zeigen. if bewertet einen Zahlenwert. Ist der Zahlenwert 0", wird die Anweisung nicht durchgeführt. Alle anderen Werte bedeuten wahr" und damit wird die Anweisung abgearbeitet. Als Lieferant des Wertes diente im ersten Fall ein vergleichender Ausdruck; im zweiten Fall war der Wert bereits in einer Variablen gespeichert. Zu erwähnen bleibt noch exit(). Die Funktion exit() wird an einer beliebigen Stelle gerufen, wenn man das Programm abbrechen will. Der Wert, den man an exit() übergibt, ist der Endestatus des Programms. Die andere Möglichkeit einen Endestatus zurückzugeben, war die return Anweisung in main(). Entscheidungen und Konstante

4 1 /* Bedingte Anweisung */ 2 /* bedanw2.c */ 3 4 #include <stdio.h> 5 #include <stdlib.h> 6 7 int main () 8 { 9 int var; /* lokale Variable */ var = (puts ("Hier bin ich!") == EOF); /* Abfrage mit boole'scher Variablen */ 14 if (var) 15 exit (1); /* Abbruch bei Fehler */ 16 return 0; 17 } Abbildung 5 Benutzung einer boole schen Variablen Die vollständige if -Anweisung Die vollständige Ja/Nein-Entscheidung verlangt für jeden der beiden Wahrheitswerte eine Anweisung. Es gibt daher je einen Zweig für den Ja-Fall und den Nein-Fall. if (Bedingung) Ja_Anweisung; else Nein_Anweisung; Jeder der beiden Zweige für den Ja-Fall und den Nein-Fall darf nur aus einer einzigen Anweisung bestehen. Der Compiler kann nur so das Ende eines Zweiges erkennen. Möchten Sie in einem Zweig mehrere Anweisungen ausführen lassen, bietet sich ein Block an. An jeder Stelle, an der eine Anweisung stehen kann, darf auch ein Block benutzt werden. Leser, die Pascal kennen, sollten darauf achten, dass vor else ein Semikolon steht. Im Gegensatz zu Pascal besteht jeder Zweig aus einer eigenen Anweisung. Beispiel zur Ja/Nein-Entscheidung Im Beispiel können wir neben der if -Anweisung noch andere Grundlagen sehen. Die erste Anweisung gibt einen besonderen Text aus: einen ANSI-Steuerstring zum Löschen des Bildschirms. Nach einer Textausgabe wartet das Programm auf eine Eingabe. Mit getc(stdin) lesen Sie ein Zeichen von der Standardeingabe (standard input). Normalerweise ist das die Tastatur. Die Eingabe wird u. U. erst nach einem Zeilenabschluss (Enter/Return/Wagenrücklauf) wirksam. Entscheidungen und Konstante

5 1 /* Ja/Nein- Entscheidung */ 2 /* if.c */ 3 #include <stdio.h> 4 5 int main () 6 { 7 puts ("\x1b[2j"); /* ANSI Steuerung */ 8 puts ("Drücke beliebige Taste\n"); 9 if (getc(stdin) >> 0x60 ) 10 { 11 puts ("kleiner "); 12 puts ("Buchstabe"); 13 } 14 else 15 puts ("groáer Buchstabe"); 16 return 0; 17 } Abbildung 6 Vollständige Ja/Nein-Entscheidung Beim eingelesenen Zeichen testen wir, ob es als Zahl größer als 60" in Hex ist. Abhängig vom Test haben wir dann herausgefunden, ob Sie einen kleinen oder großen Buchstaben gedrückt haben (sofern es überhaupt ein Buchstabe war). Im Ja-Zweig wurde ein Block benutzt, um in einem Zweig mehrere Anweisungen abarbeiten zu lassen. Da puts() einen Zeilenvorschub einfügt, finden Sie beim Ablauf des Programms die beiden Worte jeweils in einer eigenen Zeile. Verschachtelung von if -Anweisungen So einfach im Grunde die if -Steuerstruktur ist, so kann es doch dann zu Problemen kommen, wenn wir mehrere if hintereinander schreiben. Man spricht dann vom Verschachteln der Abfragen. Mit Hilfe der Verschachtelung kann man nacheinander mehrere Bedingungen testen, um schließlich eine Anweisung auszuführen. Verschachtelte if -Abfragen sind, zumindest aus meiner Sicht, kein schönes Programmkonstrukt und sollten nach Möglichkeit vermieden werden. Je tiefer die Verschachtelung wird, desto schwerer ist sie lesbar. Als bessere Lösung bietet sich die folgende Fallunterscheidung an: Im Bild 6-7 folgt eine if -Anweisung unmittelbar einer anderen. Die Anweisungen hängen damit von zwei Bedingungen ab. Die Frage stellt sich, zu welchem if gehört das einzelne else? Wie allgemein üblich wird das else zum unmittelbar davor stehenden if gezählt. Im zugehörigen Struktogramm ist zu sehen, dass der else -Zweig der ersten if -Anweisung leer bleibt. Für den Fall, dass die erste Bedingung falsch ergibt, wird keine Anweisung ausgeführt. Wollen wir das else für die erste if -Anweisung anwenden, dann hilft nur ein kleiner Trick. Wir müssen hier dem Compiler mitteilen, das die Anweisung im wahr -Zweig der ersten if - Anweisung nur aus einer einzigen bedingten Anweisung besteht. Dazu verpacken wir die zweite if -Anweisung in einen Block. Ein Block, der keine eigenen Variablen definiert, kostet keinen zusätzlichen Code und damit auch keine Laufzeit. Entscheidungen und Konstante

6 Verknüpfen Wahrheitswerten von Abbildung 7 Verschachtelte if-anweisung Fall 1 Abbildung 8 Verschachtelte if-anweisungen Fall 2 Einzelne Wahrheitswerte oder Variablen mit Wahrheitswerten können mit Hilfe der logischen Operatoren entweder negiert oder verknüpft werden. In C gibt es die drei logischen Operatoren Negation sowie und und oder. Damit lassen sich die üblichen booleschen Rechnungen ausführen. Beachten Sie bitte, dass es sich hier um zwei & - Zeichen für den und - Operator und zwei für den oder -Operator handelt. Schauen wir uns noch kurz ein Beispiel an (Bild 6-10). Wir nehmen uns ein Detail aus einem grösseren Programm. Ein Programm soll dann abgebrochen werden, wenn der Benutzer ein q für quit tippt. Dabei soll sowohl ein kleines wie ein grosses q erkannt werden. Mit getchar() lesen wir ein Zeichen ein. Im boole schen Ausdruck bei if testen wir das Zeichen zweimal. Zuerst prüfen wir ob es ein kleines q ist. Falls das Ergebnis wahr ist, wurde die Bedingung für das logische Oder ( ) bereits erfüllt und der vom Compiler erzeugte Programmcode würde die zweite Abfrage nicht durchführen. War es nicht das kleine q dann testen wir beim zweiten Mal, ob es ein großes Q war. Die Priorität der logischen Verknüpfungen ist niedriger als die der relationalen Operatoren. Daher wird der Ausdruck in der Zeile 13 ohne weitere Klammern richtig bearbeitet. Abbildung 9 Logische Operatoren Entscheidungen und Konstante

7 Die Fallunterscheidung Es gibt viele Fälle, in denen eine einfache Ja/Nein-Entscheidung nicht ausreicht. Ein Programm, das Sie mit Funktionstasten steuern können, muss bei jedem Tastendruck erkennen, ob es sich um eine normale Taste oder eine Funktionstaste handelt. Diese Entscheidung kann man mit if programmieren. Ist es eine Funktionstaste, dann muss das Programm nun zwischen den zehn oder mehr Funktionstasten auswählen und das zugehörige Programmstück starten. Hier brauchen wir 1 /* Beispiel für logische Verknüpfung */ 2 /* logoder.c */ 3 4 #include <stdio.h> 5 #include <stdlib.h> 6 7 int main () 8 { 9 int c; c = getchar(); if (c == 'q' c == 'Q') 14 exit (1); return 0; 17 } 18 Abbildung 10 Logische Operationen: ODER die Fallunterscheidung Möglichkeiten der Realisierung Für die Fallunterscheidung gibt es in den Computersprachen zwei unterschiedliche Realisierungen. Die einen legen eine Liste der möglichen Programmstücke an und numerieren sie fortlaufend. Das Programm berechnet dann eine Zahl und wählt damit das gewünschte Programmstück aus. Daher nennt man dieses Verfahren auch die berechnete Verzweigung. Die andere Möglichkeit wird mit Vergleichen realisiert. Für unser Eingangsbeispiel würde man einen Tastendruck als Vergleichswert einlesen, jedem möglichen Programmstück eine Konstante zuordnen und dann nacheinander den Vergleichwert mit den unterschiedlichen Konstanten vergleichen. Bei Gleichheit haben wir dann das gewünschte Programmstück gefunden. Diese Möglichkeit verwendet C. Fallunterscheidung und strukturierte Programmierung Werfen wir noch einen Blick auf die Theorie der strukturierten Programmierung. Entscheidungen und Konstante

8 Im Bild 6-11 sehen wir, dass die Fallunterscheidung an einem Punkt betreten wird. Danach folgt die Auswahl aus den möglichen Fällen. Neben den Einzelfällen brauchen wir noch den Sammelfall sonstige. Wenn nicht immer alle Fälle zu 100% abgefragt werden, dann haben wir eine mögliche Fehlerquelle geschaffen, die z. B. bei Abbildung 11 Die Fallunterscheidung Programmänderungen zu unvorhersehbaren Reaktionen führen kann. Nachdem ein Fall bearbeitet wurde, verlassen wir die Fallunterscheidung wieder an einer einzigen Stelle. Realisierung in C Wie oft in C zwingt die Syntax dem Programmierer nicht ein bestimmtes Vorgehen auf. Sie unterstützt ihn jedoch, gut zu programmieren. Die Fallunterscheidung besteht aus dem Schlüsselwort switch, einem Ausdruck in runden Klammern, der einen ganzzahligen Wert liefert und einem Block, der alle möglichen Fälle enthält. Ein einzelner Fall besteht aus einer speziellen Marke, die aus dem Schlüsselwort case, einer Konstanten und einem Doppelpunkt gebildet wird. Solche Marken können nur innerhalb einer Fallunterscheidung auftreten. Einen typischen Aufbau zeigt das Bild Als Vergleichswert benötigen wir einen ganzzahligen Wert. Dies kann auch ein beliebiges Zeichen sein, das man mit getchar() einlesen kann. Der eingelesene Wert wird dann nacheinander mit den Konstanten verglichen. Bei Gleichheit werden die zugehörigen Anweisungen ausgeführt. Wird keine Gleichheit gefunden, dann wird der Fall sonstige (engl. default ) angesprungen. switch ( ganzzahliger_wert ) { case konstante1 : Anweisungen zu 1; break; case konstante2 : Anweisungen zu 2; break; default: Sonstige_Anweisungen; } Abbildung 12 Fallunterscheidung in C Das Ende eines Falles ist in C nicht automatisch erkennbar. Der Programmierer muss selbst dafür sorgen, dass ein Fall beendet wird. Dazu gibt es einen speziellen Sprungbefehl für den Sprung an den Ausgang der Steuerstruktur: break. Möchten Sie in C gemäß dem Struktogramm programmieren, dann muss jeder Fall mit einem break abgeschlossen werden, sonst fällt man durch die einzelnen Fälle durch bis zu einem break oder der schliessenden Klammer des Blockes. Entscheidungen und Konstante

9 Jeder Fall kann mehrere Marken bekommen. Zahlen- und Zeichenkonstanten in C In der Fallunterscheidung müssen wir jedes Programmstück mit einer Marke versehen, die mit Hilfe einer Konstanten gebildet wird. Es ist daher hier sinnvoll, die möglichen Konstanten in C näher zu betrachten. C kennt fünf Arten von Konstanten: Integer-Konstanten Zeichen-Konstanten Fliesskomma-Konstanten Aufzählungs-Konstanten String-Konstanten Zahlenkonstanten Ganzzahlige Konstanten können in verschiedenen Größen, mit oder ohne Vorzeichen und in drei Darstellungen benutzt werden. Der kleinste Typ ist int. Beginnt eine Zahl mit einer Ziffer zwischen 1 und 9 handelt es sich um eine dezimale Zahl. Beginnt die Zahl mit einer 0", so ist die Darstellung oktal und mit 0x" oder 0X ist sie hexadezimal. Im Bild 6-13 wurden entsprechende Beispiele in den Zeilen 21, 23 und 25 verwendet. Überschreitet der Wertebereich int, dann wird automatisch long angenommen. An eine Konstante kann man auch einen Buchstaben u oder U für unsigned (ohne Vorzeichen) anhängen und damit ausdrücken, dass diese Konstanten ohne Vorzeichen gelten soll. Die zweite mögliche Kennung ist ein l oder L für long. Entdeckt der Compiler eine Konstante, versucht er, einen dazu passenden Typ zu finden. Der Typ ergibt sich aus der verwendeten Zahlenbasis, der Größe der Zahl und eventuellen Kennungen. Eine dezimale Konstante erhält den ersten Typ, der in der Lage ist, die Zahl aufzunehmen aus der folgenden Liste: int, long int, unsigned long int. Beispiele: 5 ist int ist long int ist unsigned long int Für oktale oder hexadezimale Angaben sucht der Compiler in der folgenden Liste: int, unsigned int, long int, unsigned long int. Beispiel: Entscheidungen und Konstante

10 40000U ist unsigned int 1 /* Arbeiten mit Konstanten */ 2 /* Konst1.c */ 3 #include <<stdio.h>> 4 5 int main () 6 { 7 char c; 8 puts ("\x1b[2j"); 9 puts ("\nzeichen tippen und RETURN\n"); 10 switch (c = getchar() ) 11 { 12 case 'C' : puts ("\ngroßes C entdeckt."); 13 break; 14 case '\n': puts ("\nneue Zeile"); 15 break; 16 case '\x42': puts ("\ngroßes B"); 17 break; 18 case 7 : puts ("\nklingelzeichen"); 19 break; 20 case 0x41: puts ("\ngroßes A"); 21 break; 22 case 011: puts ("\ncode octal 011 (Tab)"); 23 break; 24 default: puts ("\nbeliebige Taste"); 25 break; 26 } 27 return 0; 28 } Abbildung 13 Zahlen- und Zeichenkonstante 1 /* Arbeiten mit Konstanten */ 2 /* Konst2.c */ 3 4 #include <stdio.h> 5 6 int main () 7 { 8 puts("\x1b[2j"); 9 printf("\n40000 mit VZ %d",sizeof(40000)); 10 printf("\n40000 ohne VZ %d",sizeof(40000u)); 11 printf("\n40000 in Hex: %d",sizeof(0x9c40)); 12 return 0; 13 } Abbildung 14 Konstante und ihre Größen Im Bild 6-14 wurde die Grösse einer Konstanten mit Hilfe des Schlüsselwortes sizeof ermittelt. sizeof liefert die Grösse einer Konstanten, eines Typs oder einer Variablen in Bytes. C Entscheidungen und Konstante

11 versteht unter einem Byte die grundlegende Speichereinheit der Maschine, die groß genug ist, ein Zeichen aufzunehmen. Daher ist size of char immer eins. In den allermeisten Fällen wird ein Byte heute 8 Bit groß sein. Ausnahmen bilden nur die asiatischen Sprachen, die wesentlich mehr Schriftzeichen haben als wir. Fließkommakonstanten Fließkommakonstanten erkennt der Compiler an einem Dezimalpunkt oder an einem Exponenten. Zeichenkonstanten Buchstaben oder Zeichen aus dem benutzten Zeichensatz können mit Hilfe einer Zeichenkonstante dargestellt werden. Handelt es sich um ein druckbares Zeichen, ist die Darstellung einfach. In C wird das gewünschte Zeichen in einfachen Hochkommas eingeschlossen. Für eine Reihe von häufig benutzten Sonderzeichen sind Ersatzdarstellungen definiert. Ein umgekehrter Schrägstrich dient als Fluchtsymbol. (Ein Fluchtsymbol gibt dem nachfolgenden Zeichen eine andere Bedeutung.) Die Ersatzdarstellung für Zeichen, die nicht druckbar, sondern nur ausführbar sind, besteht zumeist aus dem Fluchtsymbol und einem Buchstaben. Wie bei anderen Fluchtsymbolen auch, muss man es verdoppeln, wenn man es ohne Sonderbedeutung benutzen will. Abbildung 15 Ersatzdarstellung Wichtig und oft verwendet sind die Angaben des Codes in oktaler und hexadezimaler Form. Folgt dem umgekehrten Schrägstrich eine ein- bis dreistellige Zahl, wird sie als oktale Angabe eines Zeichens betrachtet. Ein x leitet eine ein- oder zweistellige hexadezimale Zahl ein. Im Bild 6-16 sehen Sie in der Zeile 14 eine einfache Zeichenkonstante, in der Zeile 12 eine vordefinierte Ersatzdarstellung und in der Zeile 16 die Angabe des Zeichencodes. Automatische Typanpassung char auf int An Hand des letzten Beispieles lässt sich eine typische Eigenschaft von C zeigen. Für Zeichen- Konstanten gelten die gleichen Typregeln wie für ganzzahlige Konstanten. (Ein Zeichen wird intern in einem ganzzahligen Code des Zeichensatzes darstellt.) Der kleinste Typ ist int. Nun muss der Compiler eine Typanpassung vornehmen. Die Typanpassung geschieht gemäss den Regeln der vorzeichenbehafteten Mathematik. (Bei den Schiebeoperationen schauen wir das noch genauer an.) Ein Zeichencode kleiner als 128 wird als positiv angesehen und mit Nullen zu 16-Bit ergänzt ein Zeichencode größer als 127 wird als negativ angesehen und daher mit zwei f erweitert. Entscheidend ist dabei das Vorzeichenbit, das jeweils an der höchsten Bitposition steht. Im Bild 6-16 wurde ganz bewusst eine char -Variable verwendet, um möglichen Problemen aus dem Weg zu gehen. Bei Vergleich werden (bei unseren Testmaschinen) nur die unteren 8 Bit der Konstanten mit dem Inhalt der char -Variablen verglichen. Entscheidungen und Konstante

12 1 /* Fallunterscheidung und Konstante */ 2 /* swiblok.c */ 3 4 #include <<stdio.h>> 5 int main () 6 { 7 char c; 8 puts ("\x1b[2j"); /* Bildschirm löschen */ 9 printf ("Tippen Sie Buchstaben oder Tab\n"); 10 switch (c = getchar() ) 11 { 12 case '\t': printf ("\ntabulator.\n"); 13 break; 14 case 'A': printf ("\ngroßes A\n"); 15 break; 16 case '\x61': printf ("\nkleines a\n"); 17 break; 18 default: 19 printf("\nwert %04x\n",c); 20 break; 21 } 22 return 0; 23 } 24 Abbildung 16 Fallunterscheidung mit Zeichenkonstanten Aufgabe: Abbildung 17 Interne Darstellung eines int- Zeichens Erweiterung des Vorzeichens? Ändern Sie im Bild 6-16 in der Zeile 5 den Typ der Variablen auf int. Was passiert bei einem Umlaut (hier: ü )? Wie liefert getchar() ein Ergebnis? Mit oder ohne In C werden alle Operationen wie Addition oder Vergleiche mindestens mit int durchgeführt. Diese Regel stammt aus der Zeit, zu der man Register innerhalb eines Prozessors nicht teilen konnte. Eine heutige CPU kann sowohl mit Bytes als auch mit 16-Bit-Worten umgehen. Und noch eine Eigenart lässt sich hier feststellen. Ältere Compiler erlauben oft im gesamten Quelltext nur Zeichen des ASCII-Zeichensatzes. Ein ü als Konstante ist dort nicht möglich. ANSI-Compiler sollen den Zeichensatz der Maschine unterstützen. Hier sind dann auch Umlaute als Zeichen-Konstanten erlaubt. Notfalls geben Sie eben statt des Zeichens seinen Code an, wie dies im Bild 6-16 geschehen ist. In ANSI-C werden neben den westlichen Zeichensätzen wie ASCII, ISO oder ANSI auch asiatische Zeichensätze unterstützt, die pro Zeichen mehr als 8 Bits benötigen. Auf die Darstellung dieser Zeichensätze wurde hier verzichtet. Entscheidungen und Konstante

13 Konstante Ausdrücke Die Marken in einer Fallunterscheidung können auch aus konstanten Ausdrücken gebildet werden. Diese Ausdrücke können zur Übersetzungszeit vom Compiler ausgewertet werden. Im Programm taucht dann nur das Ergebnis als Konstante auf. Im Bild 6-18 wurden die konstanten Ausdrücke benutzt, um auf eine lesbare Art ASCII- Steuerzeichen anzugeben. Steuerzeichen sind von den Grossbuchstaben durch ein Bit unterschieden. Man kann daher von einem Grossbuchstaben 0x40 abziehen, um das zugehörigen Steuerzeichen zu erhalten. Textkonstante Eine Textkonstante wird durch einen Text in doppelten Anführungszeichen definiert. Wir werden Textkonstanten bei Feldern näher besprechen. Aufzählungskonstanten In ANSI-C und neueren K&R-Compilern wurden Aufzählungskonstanten mit enum eingeführt. Im Beispiel wird in der Zeile 5 eine Aufzählung von Konstanten definiert. Die Aufzählung heißt: enum afarbe. Der Compiler vergibt automatisch eine 0" für rot, eine 1" für gelb usw. Dabei definieren wir einen eigenen Datentyp, mit dem wir auch die Variable ampel anlegen. Die Konstanten werden dann in Vergleichen benutzt. Den einzelnen Konstanten kann man auch selbst Werte zuweisen. gruen wird mit dem Wert 8" definiert. Leider gibt es keine Mengenoperationen. So bleibt die Verwendung der enum- Konstanten" eher eine Seltenheit. Im nächsten Kapitel In C gibt es eine Vielzahl von Operatoren. Im folgenden Kapitel werden wir uns die Operatoren und die Ausdrücke näher ansehen. Entscheidungen und Konstante

Diana Lange. Generative Gestaltung Operatoren

Diana Lange. Generative Gestaltung Operatoren Diana Lange Generative Gestaltung Operatoren Begriffserklärung Verknüpfungsvorschrift im Rahmen logischer Kalküle. Quelle: google Operatoren sind Zeichen, die mit einer bestimmten Bedeutung versehen sind.

Mehr

25 kann ohne Rest durch 5 geteilt werden! ist wahr

25 kann ohne Rest durch 5 geteilt werden! ist wahr Lehrbrief 2: Lektion 8 - C -Praxis 4-1 - 5.2 Einfache Entscheidungen mit if und die Vergleichsoperatoren Nun tauchen wir immer tiefer in die Geheimnisse von C ein und beschäftigen uns mit einem sehr wichtigen

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen

Grundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen Grundlagen der Programmierung Prof. H. Mössenböck 3. Verzweigungen If-Anweisung n > 0? j n if (n > 0) x = x / n; ohne else-zweig x x / n j max x x > y? n max y if (x > y) max = x; else max = y; mit else-zweig

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Übersicht Programmablaufsteuerung

Übersicht Programmablaufsteuerung Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen

Mehr

Einführung in die C++ Programmierung für Ingenieure

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

Kontrollstrukturen, Strukturierte Programmierung

Kontrollstrukturen, Strukturierte Programmierung , Strukturierte Programmierung Steuer- und Kontrollfluss Strukturierte Programmierung Arten von Strukturblöcken Sequenz Alternative Iteration C-Spezifisches Seite 1 Elementare Algorithmen SelectionSort

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Praktikum Ingenieurinformatik. Termin 2. Verzweigungen (if-else), printf und scanf, while-schleife

Praktikum Ingenieurinformatik. Termin 2. Verzweigungen (if-else), printf und scanf, while-schleife Praktikum Ingenieurinformatik Termin 2 Verzweigungen (if-else), printf und scanf, while-schleife 1 1. Import/Export von Eclipse-Projekten 2. Verzweigungen (if-else-anweisung) 3. printf und scanf 4. Übungsaufgaben

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2010/11 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Wiederholungen - while - do-while - for

Mehr

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7 Java 7 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Dezember 2011 JAV7 5 Java 7 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

4. BEZIEHUNGEN ZWISCHEN TABELLEN

4. BEZIEHUNGEN ZWISCHEN TABELLEN 4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18 Kapitel 3 Datentypen und Variablen Seite 1 von 18 Datentypen - Einführung - Für jede Variable muss ein Datentyp festgelegt werden. - Hierdurch werden die Wertemenge und die verwendbaren Operatoren festgelegt.

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Zählen von Objekten einer bestimmten Klasse

Zählen von Objekten einer bestimmten Klasse Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --

Mehr

Fallunterscheidung: if-statement

Fallunterscheidung: if-statement Fallunterscheidung: if-statement A E 1 E 2 V 1 V 2 Syntax: if ( ausdruck ) Semantik: else anweisungsfolge_1 anweisungsfolge_2 1. Der ausdruck wird bewertet 2. Ergibt die Bewertung einen Wert ungleich 0

Mehr

Programmierung in C. Grundlagen. Stefan Kallerhoff

Programmierung in C. Grundlagen. Stefan Kallerhoff Programmierung in C Grundlagen Stefan Kallerhoff Vorstellungsrunde Name Hobby/Beruf Schon mal was programmiert? Erwartungen an den Kurs Lieblingstier Für zu Hause C-Buch online: http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/

Mehr

Übungen zu C++ Kapitel 1

Übungen zu C++ Kapitel 1 Übungen zu C++ Kapitel 1 Aufgabe 1 Ergänze den Text. a) Die sechs logischen Einheiten eines Computers sind Eingabe-Einheit, Ausgabe-Einheit, RAM, ALU, CPU, Plattenspeicher. b) Die Programme, welche Hochsprachenprogramme

Mehr

Hochschule München, FK 03 FA SS 2012. Ingenieurinformatik

Hochschule München, FK 03 FA SS 2012. Ingenieurinformatik Hochschule München, FK 03 FA SS 2012 Ingenieurinformatik Zulassung geprüft vom Aufgabensteller: Teil 1/Aufgabe 1: 30 Minuten ohne Unterlagen, Teil 2/Aufgaben 2-4: 60 Minuten, beliebige eigene Unterlagen

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen Elektronik Praktikum / Digitaler Teil Name: Jens Wiechula, Philipp Fischer Leitung: Prof. Dr. U. Lynen Protokoll: Philipp Fischer Versuch: 3 Datum: 24.06.01 RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Name, Vorname Matrikelnummer Probeklausur zur Vorlesung Einführung in die Programmierung WS 2008/09 Dauer: 2 Stunden Hinweise: Schreiben Sie Ihren Namen und Ihre Matrikelnummer auf dieses Deckblatt und

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Serienbrief aus Outlook heraus Schritt 1 Zuerst sollten Sie die Kontakte einblenden, damit Ihnen der Seriendruck zur Verfügung steht. Schritt 2 Danach wählen Sie bitte Gerhard Grünholz 1 Schritt 3 Es öffnet

Mehr

Die Programmiersprache C99: Zusammenfassung

Die Programmiersprache C99: Zusammenfassung Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach

Mehr

Wir arbeiten mit Zufallszahlen

Wir arbeiten mit Zufallszahlen Abb. 1: Bei Kartenspielen müssen zu Beginn die Karten zufällig ausgeteilt werden. Wir arbeiten mit Zufallszahlen Jedesmal wenn ein neues Patience-Spiel gestartet wird, muss das Computerprogramm die Karten

Mehr

Zahlensysteme: Oktal- und Hexadezimalsystem

Zahlensysteme: Oktal- und Hexadezimalsystem 20 Brückenkurs Die gebräuchlichste Bitfolge umfasst 8 Bits, sie deckt also 2 8 =256 Möglichkeiten ab, und wird ein Byte genannt. Zwei Bytes, also 16 Bits, bilden ein Wort, und 4 Bytes, also 32 Bits, formen

Mehr

Beispiel(unten ist der Spielfeldrand):

Beispiel(unten ist der Spielfeldrand): Anleitung Side by Side ist ein Puzzle mit einfachen Regeln, das in einem 6x6 (oder größerem) Gitter gespielt wird. Ziel des Spieles ist es, die leeren Kästchen mit den Zahlen 1, 2, 3, 4 oder einem X zu

Mehr

Informatik Repetitorium SS 2009. Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692

Informatik Repetitorium SS 2009. Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692 Informatik Repetitorium SS 2009 Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692 Operatoren und Datentypen Beispiel: Anweisungen Variable int a float b int c a= a % (int) (++b-1/4) Vorher 36 3.5 c=b

Mehr

GEVITAS Farben-Reaktionstest

GEVITAS Farben-Reaktionstest GEVITAS Farben-Reaktionstest GEVITAS Farben-Reaktionstest Inhalt 1. Allgemeines... 1 2. Funktionsweise der Tests... 2 3. Die Ruhetaste und die Auslösetaste... 2 4. Starten der App Hauptmenü... 3 5. Auswahl

Mehr

Viele Bilder auf der FA-Homepage

Viele Bilder auf der FA-Homepage Viele Bilder auf der FA-Homepage Standardmäßig lassen sich auf einer FA-Homepage nur 2 Bilder mit zugehörigem Text unterbringen. Sollen es mehr Bilder sein, muss man diese als von einer im Internet

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte 50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien

Mehr

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen 1. Quadratische Gleichungen Quadratische Gleichungen lassen sich immer auf die sog. normierte Form x 2 + px + = 0 bringen, in

Mehr

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1 Zahlenwinkel: Forscherkarte 1 alleine Tipp 1 Lege die Ziffern von 1 bis 9 so in den Zahlenwinkel, dass jeder Arm des Zahlenwinkels zusammengezählt das gleiche Ergebnis ergibt! Finde möglichst viele verschiedene

Mehr

Menü Macro. WinIBW2-Macros unter Windows7? Macros aufnehmen

Menü Macro. WinIBW2-Macros unter Windows7? Macros aufnehmen Menü Macro WinIBW2-Macros unter Windows7?... 1 Macros aufnehmen... 1 Menübefehle und Schaltflächen in Macros verwenden... 4 Macros bearbeiten... 4 Macros löschen... 5 Macro-Dateien... 5 Macros importieren...

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

Entwurf von Algorithmen - Kontrollstrukturen

Entwurf von Algorithmen - Kontrollstrukturen Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer

Mehr

Grundlagen der Informatik I Informationsdarstellung

Grundlagen der Informatik I Informationsdarstellung Grundlagen der Informatik I Informationsdarstellung Einführung in die Informatik, Gumm, H.-P./Sommer, M. Themen der heutigen Veranstaltung. ASCIi Code 2. Zeichenketten 3. Logische Operationen 4. Zahlendarstellung

Mehr

Bedienungsanleitung Anlassteilnehmer (Vereinslisten)

Bedienungsanleitung Anlassteilnehmer (Vereinslisten) Bedienungsanleitung Anlassteilnehmer Dieses Programm ist speziell für Vereine entworfen. Es ist lizenzfrei verwendbar und gratis. Das Programm ist mit Excel 2010 erstellt worden und enthält VBA Programmierungen,

Mehr

CAQ Software für Ihr Qualitätsmanagement. Ablauf für die Erfassung der Fehler in der Fertigung

CAQ Software für Ihr Qualitätsmanagement. Ablauf für die Erfassung der Fehler in der Fertigung Ablauf für die Erfassung der Fehler in der Fertigung Voraussetzung ist die Zuordnung der Erzeugnisse zu Produktgruppen. Wie das funktioniert ist der Anleitung Neue Produktgruppe anlegen und mit Erzeugnissen

Mehr

Datentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache

Datentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache Agenda für heute, 4. März, 2010 Zusammengesetzte if-then-else-anweisungen Datentypen Pascal ist eine streng typisierte Programmiersprache Für jeden Speicherplatz muss ein Datentyp t (Datenformat) t) definiert

Mehr

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken. In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht

Mehr

Tutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang. Aufgabenblatt 3 (KW 44) (30.10.02)

Tutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang. Aufgabenblatt 3 (KW 44) (30.10.02) Tutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang Aufgabenblatt 3 (KW 44) (30.10.02) Aufgabe 1: Preisdiskriminierung dritten Grades (20 Punkte) Ein innovativer Uni-Absolvent plant,

Mehr

Internationales Altkatholisches Laienforum

Internationales Altkatholisches Laienforum Internationales Altkatholisches Laienforum Schritt für Schritt Anleitung für die Einrichtung eines Accounts auf admin.laienforum.info Hier erklären wir, wie ein Account im registrierten Bereich eingerichtet

Mehr

Fallbeispiel: Eintragen einer Behandlung

Fallbeispiel: Eintragen einer Behandlung Fallbeispiel: Eintragen einer Behandlung Im ersten Beispiel gelernt, wie man einen Patienten aus der Datenbank aussucht oder falls er noch nicht in der Datenbank ist neu anlegt. Im dritten Beispiel haben

Mehr

Das Modul ARTIKEL-BARCODE ermöglicht den Druck von Barcode-Etiketten der EAN-Codes 8 und 13.

Das Modul ARTIKEL-BARCODE ermöglicht den Druck von Barcode-Etiketten der EAN-Codes 8 und 13. FAKTURA Artikel-Barcode 1 Modul ARTIKEL-BARCODE Das Modul ARTIKEL-BARCODE ermöglicht den Druck von Barcode-Etiketten der EAN-Codes 8 und 13. Es können Etiketten aller gängigen Standard-Größen verwendet

Mehr

Kapitel 3. Codierung von Text (ASCII-Code, Unicode)

Kapitel 3. Codierung von Text (ASCII-Code, Unicode) Kapitel 3 Codierung von Text (ASCII-Code, Unicode) 1 Kapitel 3 Codierung von Text 1. Einleitung 2. ASCII-Code 3. Unicode 2 1. Einleitung Ein digitaler Rechner muss jede Information als eine Folge von 0

Mehr

Stammdatenanlage über den Einrichtungsassistenten

Stammdatenanlage über den Einrichtungsassistenten Stammdatenanlage über den Einrichtungsassistenten Schritt für Schritt zur fertig eingerichteten Hotelverwaltung mit dem Einrichtungsassistenten Bitte bereiten Sie sich, bevor Sie starten, mit der Checkliste

Mehr

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

Datentypen: Enum, Array, Struct, Union

Datentypen: Enum, Array, Struct, Union Datentypen: Enum, Array, Struct, Union C-Kurs 2013, 2. Tutorium Freitagsrunde http://wiki.freitagsrunde.org 10. September 2013 This work is licensed under the Creative Commons Attribution-ShareAlike 3.0

Mehr

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach - Projekt Personalverwaltung Erstellt von Inhaltsverzeichnis 1Planung...3 1.1Datenbankstruktur...3 1.2Klassenkonzept...4 2Realisierung...5 2.1Verwendete Techniken...5 2.2Vorgehensweise...5 2.3Probleme...6

Mehr

5. Übung: PHP-Grundlagen

5. Übung: PHP-Grundlagen 5.1. Erstes PHP-Programm 1. Schreiben Sie PHP-Programm innerhalb einer Webseite, d.h. innerhalb eines HTML-Dokument. Ihr PHP-Programm soll einen kurzen Text ausgeben und Komentare enthalten. Speichern

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens SS2013 Inhalt Projekt Vorlesung: praktische Implementierung üben Ein und

Mehr

C/C++ Programmierung

C/C++ Programmierung 1 C/C++ Programmierung Grundlagen: Anweisungen Sebastian Hack Christoph Mallon (hack mallon)@cs.uni-sb.de Fachbereich Informatik Universität des Saarlandes Wintersemester 2009/2010 2 Anweisungen (Statements)

Mehr

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala Das Typsystem von Scala 1 Eigenschaften Das Typsystem von Scala ist statisch, implizit und sicher 2 Nichts Primitives Alles ist ein Objekt, es gibt keine primitiven Datentypen scala> 42.hashCode() res0:

Mehr

2. Semester, 2. Prüfung, Lösung

2. Semester, 2. Prüfung, Lösung 2. Semester, 2. Prüfung, Lösung Name Die gesamte Prüfung bezieht sich auf die Programmierung in C++! Prüfungsdauer: 90 Minuten Mit Kugelschreiber oder Tinte schreiben Lösungen können direkt auf die Aufgabenblätter

Mehr

Erstellen der Barcode-Etiketten:

Erstellen der Barcode-Etiketten: Erstellen der Barcode-Etiketten: 1.) Zuerst muss die Schriftart Code-39-Logitogo installiert werden! Das ist eine einmalige Sache und muss nicht zu jeder Börse gemacht werden! Dazu speichert man zunächst

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

2. ZELLINHALTE UND FORMELN

2. ZELLINHALTE UND FORMELN 2. ZELLINHALTE UND FORMELN Aufgabe: In dem Beispiel Haushaltsbuch entwickeln Sie eine Kostenaufstellung, die alle monatlichen Ausgaben einzelner Sparten enthält. Darauf basierend berechnen Sie mit einfachen

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

1. Einführung. 2. Alternativen zu eigenen Auswertungen. 3. Erstellen eigener Tabellen-Auswertungen

1. Einführung. 2. Alternativen zu eigenen Auswertungen. 3. Erstellen eigener Tabellen-Auswertungen 1. Einführung Über die Tabellen-Auswertungen können Sie eigene Auswertungen nach Ihren Wünschen erstellen. Diese Auswertungen werden immer anhand der aktuellen Daten aus orgamax ermittelt, Sie können also

Mehr

Repetitionsaufgaben Wurzelgleichungen

Repetitionsaufgaben Wurzelgleichungen Repetitionsaufgaben Wurzelgleichungen Inhaltsverzeichnis A) Vorbemerkungen B) Lernziele C) Theorie mit Aufgaben D) Aufgaben mit Musterlösungen 4 A) Vorbemerkungen Bitte beachten Sie: Bei Wurzelgleichungen

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit Frau Dr. Eva Douma ist Organisations-Beraterin in Frankfurt am Main Das ist eine Zusammen-Fassung des Vortrages: Busines

Mehr

Lehrer: Einschreibemethoden

Lehrer: Einschreibemethoden Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder

Mehr

Inventur. Bemerkung. / Inventur

Inventur. Bemerkung. / Inventur Inventur Die beliebige Aufteilung des Artikelstamms nach Artikeln, Lieferanten, Warengruppen, Lagerorten, etc. ermöglicht es Ihnen, Ihre Inventur in mehreren Abschnitten durchzuführen. Bemerkung Zwischen

Mehr

SUDOKU - Strategien zur Lösung

SUDOKU - Strategien zur Lösung SUDOKU Strategien v. /00 SUDOKU - Strategien zur Lösung. Naked Single (Eindeutiger Wert)? "Es gibt nur einen einzigen Wert, der hier stehen kann". Sind alle anderen Werte bis auf einen für eine Zelle unmöglich,

Mehr

Einführung in die Algebra

Einführung in die Algebra Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv

Mehr

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet C++ Grundlagen ++ bedeutet Erweiterung zum Ansi C Standard Hier wird eine Funktion eingeleitet Aufbau: In dieser Datei stehen die Befehle, die gestartet werden, wenn das Programm gestartet wird Int main()

Mehr

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG it4sport GmbH HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG Stand 10.07.2014 Version 2.0 1. INHALTSVERZEICHNIS 2. Abbildungsverzeichnis... 3 3. Dokumentenumfang... 4 4. Dokumente anzeigen... 5 4.1 Dokumente

Mehr

Summenbildung in Bauteiltabellen mit If Then Abfrage

Summenbildung in Bauteiltabellen mit If Then Abfrage Summenbildung in Bauteiltabellen mit If Then Abfrage Die in Bauteiltabellen ausgelesenen Werte lassen sich in jeder Spalte als Summe berechnen. So können selbstverständlich die Flächen der in der Tabelle

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

1. Einführung 2. 2. Erstellung einer Teillieferung 2. 3. Erstellung einer Teilrechnung 6

1. Einführung 2. 2. Erstellung einer Teillieferung 2. 3. Erstellung einer Teilrechnung 6 Inhalt 1. Einführung 2 2. Erstellung einer Teillieferung 2 3. Erstellung einer Teilrechnung 6 4. Erstellung einer Sammellieferung/ Mehrere Aufträge zu einem Lieferschein zusammenfassen 11 5. Besonderheiten

Mehr

Programmentwicklungen, Webseitenerstellung, Zeiterfassung, Zutrittskontrolle

Programmentwicklungen, Webseitenerstellung, Zeiterfassung, Zutrittskontrolle Version LG-TIME /Office A 8.3 und höher Inhalt 1. Allgemeines S. 1 2. Installation S. 1 3. Erweiterungen bei den Zeitplänen S. 1;2 4. Einrichtung eines Schichtplanes S. 2 5. Einrichtung einer Wechselschicht

Mehr

Datenbanken Microsoft Access 2010

Datenbanken Microsoft Access 2010 Datenbanken Microsoft Access 2010 Abfragen Mithilfe von Abfragen kann ich bestimmte Informationen aus einer/mehrerer Tabellen auswählen und nur diese anzeigen lassen die Daten einer/mehrerer Tabellen sortieren

Mehr

ONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele

ONLINE-AKADEMIE. Diplomierter NLP Anwender für Schule und Unterricht Ziele ONLINE-AKADEMIE Ziele Wenn man von Menschen hört, die etwas Großartiges in ihrem Leben geleistet haben, erfahren wir oft, dass diese ihr Ziel über Jahre verfolgt haben oder diesen Wunsch schon bereits

Mehr

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. Der Serienversand Was kann man mit der Maske Serienversand machen? 1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. 2. Adressen auswählen,

Mehr

A1.7: Entropie natürlicher Texte

A1.7: Entropie natürlicher Texte A1.7: Entropie natürlicher Texte Anfang der 1950er Jahre hat Claude E. Shannon die Entropie H der englischen Sprache mit einem bit pro Zeichen abgeschätzt. Kurz darauf kam Karl Küpfmüller bei einer empirischen

Mehr

Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007

Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007 Fachhochschule Bonn-Rhein-Sieg University of Applied Sciences Fachbereich Informatik Prof. Dr. Peter Becker Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007

Mehr

Hilfedatei der Oden$-Börse Stand Juni 2014

Hilfedatei der Oden$-Börse Stand Juni 2014 Hilfedatei der Oden$-Börse Stand Juni 2014 Inhalt 1. Einleitung... 2 2. Die Anmeldung... 2 2.1 Die Erstregistrierung... 3 2.2 Die Mitgliedsnummer anfordern... 4 3. Die Funktionen für Nutzer... 5 3.1 Arbeiten

Mehr

AutoTexte und AutoKorrektur unter Outlook verwenden

AutoTexte und AutoKorrektur unter Outlook verwenden AutoTexte und AutoKorrektur unter Outlook verwenden Die Hilfsmittel "AutoKorrektur" und "AutoTexte", die schon unter Microsoft Word das Arbeiten erleichtern, sind natürlich auch unter Outlook verfügbar.

Mehr

Access 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA

Access 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012 Access 2010 Grundlagen für Anwender inkl. zusätzlichem Übungsanhang ACC2010-UA 3 Access 2010 - Grundlagen für Anwender 3 Daten in Formularen bearbeiten

Mehr