• Keine Ergebnisse gefunden

¨Ubungspaket 7 Angemessenes Formatieren von C-Programmen

N/A
N/A
Protected

Academic year: 2021

Aktie "¨Ubungspaket 7 Angemessenes Formatieren von C-Programmen"

Copied!
8
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Ubungspaket 7 ¨

Angemessenes Formatieren von C-Programmen

Ubungsziele: ¨

1. Gute Layout-Struktur durch Einr¨ ucken 2. Richtiges Verwenden von Kommentaren Skript:

Kapitel: 19 Semester:

Wintersemester 2021/22 Betreuer:

Thomas, Tim und Ralf Synopsis:

Das Kodieren eines Algorithmus in ein C-Programm und das Eintip- pen in den Rechner ist eigentlich gar nicht so problematisch. Schwierig wird’s nur bei der Fehlersuche, wenn das Programm nicht das macht, was es machen soll. Noch schwieriger wird es, wenn dann der Betreuer

” mal eben“ den Fehler finden soll. Hier helfen Kommentare und ange-

messenes Einr¨ ucken, was wir hier ein wenig ¨ uben wollen.

(2)

Teil I: Stoffwiederholung

Aufgabe 1: Kommentare

In der Programmiersprache C gibt es zwei M¨oglichkeiten, Kommentare zu verwenden.

Erkl¨are kurz die Syntax und zeige ein Beispiel.

M¨oglichkeit 1:

Syntax

Beispiel

M¨oglichkeit 2:

Syntax

Beispiel

Aufgabe 2: Geschachtelte Kommentare

Erkl¨are kurz, wie man Kommentare schachteln kann und was dabei passiert.

(3)

Aufgabe 3: Angemessenes Einr¨ ucken

Erkl¨are kurz in eigenen Worten, warum wir als Lehrpersonal so sehr auf eine angemessene Form des Einr¨uckens Wert legen.

Aufgabe 4: Recherche

Recherchiere etwa f¨unf bis zehn Minuten im Web zum Thema

”Einr¨ucken in C“ und notiere deine zwei Favoriten. M¨ogliche Schlagw¨orter sind: einruecken c programm

7-2 Wintersemester 2021/22, Einf¨uhrung in die Praktische Informatik

(4)

Teil II: Quiz

Aufgabe 1: Finden von Kommentaren

Im folgenden (recht sinnfreien) Text befinden sich einige Kommentare. Schaue dir die Texte an und unterstreiche alle Kommentare einschließlich der

”Kommentarklammern“. Dabei ist jede Zeile f¨ur sich zu behandeln, d.h. eventuell noch nicht abgeschlossene Kommentare aus vorherigen Zeilen haben keinen Einfluss. Korrigiere die Kommentare, sofern dir dies sinnvoll, logisch oder naheliegend erscheint.

1 h e u t e ist ein /* s c h o e n e r */ tag

2 g e s t e r n s c h i e n die s o n n e // den g a n z e n tag

3 /* das */ l e r n e n der /* p r o g r a m m i e r s p r a c h e C */ ist a n s t r e n g e n d

4 // ich w u e n s c h t e , das s t u d i u m w a e r e s c h o n f e r t i g 5 ich h a b e /* s e h r /* n e t t e */ */ k o m m i l i t o n e n

6 b e i m h o c h s c h u l s p o r t f i n d e t man v i e l e /** g u t e */ k u r s e 7 im s o m m e r ist es warm , im w i n t e r /* n i c h t **/ i m m e r

8 m a t h e ist /* oft * / a n s t r e n g e n d , /* p h y s i k */ l e i d e r a u c h 9 das l e r n e n /* in der // g r u p p e */ m a c h t s p a s s

10 schoen , // b a l d */ ist w o c h e n e n d e

11 k o m m e n t a r e s i n d /* s e h r * / b l o e d // f i n d e ich

(5)

Teil III: Fehlersuche

Aufgabe 1: Fehlerhafte Kommentare finden

Im folgenden Programm befinden sich f¨ur seine Gr¨oße recht viele Kommentare. Leider hat der Programmierer hier und dort den einen oder anderen Fehler gemacht.

Fehlerhaftes Programm:

1 # i n c l u d e < s t d i o . h > /* k o m m e n t a r 2

3 int m a i n ( int argc , k o m m e n t a r c h a r ** a r g v ) 4 // h i e r ist g a n z /* v i e l

5 k o m m e n t a r s o g a r u e b e r */

6 // d r e i z e i l e n

7 { /* s c h o n w i e d e r ein /* e i n f a c h e r */ k o m m e n t a r */

8 int // k o m m e n t a r m i t t e n i ; d r i n

9 if ( i == 2 )

10 h i e r a u c h p r i n t f ( " t r u e \ n " ) ;

11 e l s e p r i n t f ( " f a l s e \ n " ) ; /* und j e t z t ist a b e r s c h l u s s

12 }

Viele dieser Kommentare sind v¨ollig sinnfrei. Aber dennoch, finde und korrigiere sie. Be- denke, dass es immer mehrere M¨oglichkeiten gibt, die Fehler zu korrigieren. Entscheide dich jeweils f¨ur eine. Bei richtig gesetzten Kommentaren sollte der Compiler folgendes Programm sehen, sofern er selbige entfernt hat:

Programm, wie es ohne Kommentare sein sollte:

1 # i n c l u d e < s t d i o . h >

2

3 int m a i n ( int argc , c h a r ** a r g v )

4 {

5 int i ;

6 if ( i == 2 )

7 p r i n t f ( " t r u e \ n " ) ; 8 e l s e p r i n t f ( " f a l s e \ n " ) ;

9 }

Die Richtigkeit der durchgef¨uhrten Korrekturen l¨asst sich sehr einfach feststellen. Einfach mal das Kommandocpp <datei.c>ausf¨uhren, wobei<datei.c>nat¨urlich durch den rich- tigen Dateinamen zu ersetzen ist. Am Anfang steht sehr viel, das alles mit stdio.hzu tun hat. Am Ende jedoch sollte das Programm richtig erscheinen (unter Umst¨anden sind aber die Zeilen ein wenig verrutscht). Statt cppkann nat¨urlich auchgcc -Everwendet werden.

7-4 Wintersemester 2021/22, Einf¨uhrung in die Praktische Informatik

(6)

Teil IV: Anwendungen

In diesem Aufgabenteil sollt ihr schlecht formatierte Programme durch Verwenden von Leerzeichen und Zeilenumbr¨uchen so umwandeln, dass derenStruktur sofort erkennbar ist.

Aufgabe 1: Ein erstes, einfaches Programm

1 # include < s t d i o . h >

2

3 int m a i n ( int argc , c h a r ** a r g v ) 4 {

5 int i , j ; 6 if ( i < j )

7 for ( i =0; i < 1 0 ; i = i +1) 8 p r i n t f ( " ha ha \ n " ) ; 9 e l s e

10 if ( i == j )

11 for ( i =0; i <3; i = i +1) 12 for ( j =0; j < 1 0 ; j = j +1) 13 p r i n t f ( " ho ho \ n " ) ; 14 e l s e

15 p r i n t f ( " t o t a l b l o e d \ n " ) ; 16 }

Neue Formatierung:

(7)

Aufgabe 2: Ein zweites, einfaches Programm

1 # include < s t d i o . h >

2

3 int m a i n ( int argc , c h a r ** a r g v ) 4 {

5 int i , j ; 6 if ( i < j )

7 for ( i =0; i < 1 0 ; i = i +1) 8 if ( i = = 3 )

9 for ( j =0; j <3; j = j +1) 10 p r i n t f ( " ha ha \ n " ) ; 11 e l s e

12 p r i n t f ( " ho ho \ n " ) ; 13 e l s e

14 p r i n t f ( " t o t a l b l o e d \ n " ) ; 15 }

Neue Formatierung:

7-6 Wintersemester 2021/22, Einf¨uhrung in die Praktische Informatik

(8)

Aufgabe 3: Ein drittes, einfaches Programm

1 # i n c l u d e /* e i n g a b e */ < s t d i o . h >

2

3 int m a i n ( int argc , c h a r ** a r g v )

4 {

5 int i

6 ; if ( i

7 == 2 ) p r i n t f ( " t r u e \ n " ) ; e l s e p r i n t f 8 ( " f a l s e \ n " ) ;

9

10 }

Neue Formatierung:

Referenzen

ÄHNLICHE DOKUMENTE

tern und Kindern sowie um Hygiene- und Gesundheits- beratung für Dorfbewohne- rInnen“, fasst Frater Yanka Sharma, der Provinzial der Indischen Ordensprovinz der Barmherzigen

Wir, die CDU im Landkreis Lüneburg und ihre Kandidatinnen und Kandidaten, wollen unseren Landkreis und unsere Gemeinden voran bringen und modern aufstellen: mit einem

Teil II: Ganz schön verwirrend: Körperliche Veränderungen und erste

„Das neue Reis“ über die Entwicklungen des Chores und der Laienspieler, den Dirigentin- nen und Dirigenten und all den Aktivitäten und Ehrungen, die dem Verein in seiner Ge-

Klicken Sie auf Rechtsbündig ausrichten, damit der Text am rechten Rand ausgerichtet ist.. Rechtsbündig ausrichten wird für kurze

Überlege dir Satz für Satz, welche Schlüsselwörter eine wichtige Information über den Kontinent enthalten, und markiere diese Wörter.. Formatiere den Text so, dass man ihn

Überlege dir Satz für Satz, welche Schlüsselwörter eine wichtige Information über den Kontinent enthalten, und markiere diese Wörter.. Formatiere den Text so, dass man ihn

Herr Baé setzt sich durch seine Arbeit und seine Präsenz in sozialen Netzwerken für eine alternative Be- richterstattung über „den“ Islam und Muslim_innen ein.. Die Fragen an die