Skip to content
Snippets Groups Projects
Commit 5206630c authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Skript und Übersichtsdatei (README.md)

parent c88d1473
Branches
No related tags found
No related merge requests found
Showing with 6406 additions and 0 deletions
File added
This diff is collapsed.
File added
% hp-slides-title-2020ws.pdf - Title Page for Lecture Slides on Low-Level Programming
% Copyright (C) 2018, 2019, 2020 Peter Gerwinski
%
% This document is free software: you can redistribute it and/or
% modify it either under the terms of the Creative Commons
% Attribution-ShareAlike 3.0 License, or under the terms of the
% GNU General Public License as published by the Free Software
% Foundation, either version 3 of the License, or (at your option)
% any later version.
%
% This document is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with this document. If not, see <http://www.gnu.org/licenses/>.
%
% You should have received a copy of the Creative Commons
% Attribution-ShareAlike 3.0 Unported License along with this
% document. If not, see <http://creativecommons.org/licenses/>.
\documentclass[10pt,t]{beamer}
\usepackage{pgslides}
\setlength{\parskip}{\medskipamount}
\title{Hardwarenahe Programmierung}
\author{Prof.\ Dr.\ rer.\ nat.\ Peter Gerwinski}
\date{Wintersemester 2020/21}
\begin{document}
\maketitleframe
\nosectionnonumber{Wichtiger Hinweis}
\begin{frame}[plain]
\vfill
\shownosectionnonumber
\vspace*{-\medskipamount}
Diese Vortragsfolien dienen dazu, den Vortrag der/des Lehrenden zu unter-\\stützen.
Sie enthalten \textbf{nur einen Teil} der Lerninhalte.
Wie groß dieser Teil ist, hängt von den konkreten Lerninhalten ab
und kann von "`praktisch alles"' bis "`praktisch gar nichts"' schwanken.
Diese Folien alleine sind daher
\textbf{nicht für ein Selbststudium geeignet!}
Hierfür sei auf das Skript verwiesen,
in dem allerdings keine tagesaktuellen Änderungen enthalten sind.
Mindestens genauso wichtig wie die Vortragsfolien sind die Beispiel-Programme,
die vor Ihren Augen in den Vorlesungen erarbeitet werden.
Diese sind im Git-Repository
(\url{https://gitlab.cvh-server.de/pgerwinski/hp.git})
mit allen Zwischenschritten enthalten und befinden sich
in den zu den jeweiligen Kalenderdaten gehörenden Verzeichnissen
(z.\,B.\ für den 10.\kern0.5pt10.\,2020 unter
\url{https://gitlab.cvh-server.de/pgerwinski/hp/tree/master/20201105/}\kern1pt).
Wenn Sie die Übungsaufgaben bearbeiten, nutzen Sie die Gelegenheit,
Ihre Lösungen in den Übungen überprüfen zu lassen.
Wer nach Vergleich mit der Musterlösung zu dem Schluß kommt,
alles richtig gelöst zu haben, erlebt sonst in der Klausur oft eine
unangenehme Überraschung.
\strut\hfill In jedem Fall: \emph{Viel Erfolg!}
\end{frame}
\end{document}
#include <stdio.h>
int main (void)
{
int a, b;
printf ("Bitte a eingeben: ");
scanf ("%d", &a);
printf ("Bitte b eingeben: ");
scanf ("%d", &b);
printf ("a geteilt durch b ist: %d\n", a / b);
return 0;
}
#include <stdio.h>
int main (void)
{
int a, b;
printf ("Bitte a eingeben: ");
scanf ("%d", &a);
printf ("Bitte b eingeben: ");
scanf ("%d", &b);
if (b != 0)
printf ("a geteilt durch b ist: %d\n", a / b);
return 0;
}
#include <stdio.h>
int main (void)
{
int a, b;
printf ("Bitte a eingeben: ");
scanf ("%d", &a);
printf ("Bitte b eingeben: ");
scanf ("%d", &b);
if (b != 0)
printf ("a geteilt durch b ist: %d\n", a / b);
else
printf ("Bitte nicht durch 0 teilen!\n");
return 0;
}
#include <stdio.h>
int main (void)
{
int a, b;
printf ("Bitte a eingeben: ");
scanf ("%d", &a);
printf ("Bitte b eingeben: ");
scanf ("%d", &b);
if (b != 0)
printf ("a geteilt durch b ist: %d\n", a / b);
else
printf ("Bitte nicht durch 0 teilen!\n");
printf ("Das tut man nicht.\n");
return 0;
}
#include <stdio.h>
int main (void)
{
int a, b;
printf ("Bitte a eingeben: ");
scanf ("%d", &a);
printf ("Bitte b eingeben: ");
scanf ("%d", &b);
if (b != 0)
printf ("a geteilt durch b ist: %d\n", a / b);
else
{
printf ("Bitte nicht durch 0 teilen!\n");
printf ("Das tut man nicht.\n");
}
return 0;
}
#include<stdio.h>
int main(void){int a,b;printf("Bitte a eingeben: ");scanf("%d",&a);
printf("Bitte b eingeben: ");scanf("%d",&b);if(b!=0)printf(
"a geteilt durch b ist: %d\n",a/b);else{printf("Bitte nicht durch 0 teilen!\n");
printf("Das tut man nicht.\n");}return 0;}
#include <stdio.h>
int main (void)
{
int b;
printf ("Bitte b eingeben: ");
scanf ("%d", &b);
printf ("Der Ausdruck b != 0 hat den Wert %d\n", b != 0);
printf ("Der Ausdruck b == 0 hat den Wert %d\n", b == 0);
printf ("Der Ausdruck b = 23 hat den Wert %d\n", b = 23);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 31;
d->month = 1;
d->year = 2012;
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 31;
d->month = 1;
d->year = 2012;
}
void inc_date (date *d)
{
d->day++; /* FIXME */
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 31;
d->month = 1;
d->year = 2012;
}
void inc_date (date *d)
{
d->day++;
if (d->day > 31) /* FIXME */
{
d->month++; /* FIXME */
d->day = 1;
}
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 31;
d->month = 12;
d->year = 2012;
}
void inc_date (date *d)
{
d->day++;
if (d->day > 31) /* FIXME */
{
d->month++;
d->day = 1;
if (d->month > 12)
{
d->year++;
d->month = 1;
}
}
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 30;
d->month = 4;
d->year = 2012;
}
void inc_date (date *d)
{
d->day++;
int days_in_month = 31; /* FIXME */
if (d->day > days_in_month)
{
d->month++;
d->day = 1;
if (d->month > 12)
{
d->year++;
d->month = 1;
}
}
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 30;
d->month = 4;
d->year = 2012;
}
void inc_date (date *d)
{
d->day++;
int days_in_month = 31;
if (d->month == 2)
days_in_month = 28; /* FIXME */
else if (d->month == 4 || d->month == 6 || d->month == 9 || d->month == 11)
days_in_month = 30;
if (d->day > days_in_month)
{
d->month++;
d->day = 1;
if (d->month > 12)
{
d->year++;
d->month = 1;
}
}
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 28;
d->month = 2;
d->year = 2012;
}
void inc_date (date *d)
{
d->day++;
int days_in_month = 31;
if (d->month == 2)
{
int is_leap_year = 1; /* FIXME */
if (is_leap_year)
days_in_month = 29;
else
days_in_month = 28;
}
else if (d->month == 4 || d->month == 6 || d->month == 9 || d->month == 11)
days_in_month = 30;
if (d->day > days_in_month)
{
d->month++;
d->day = 1;
if (d->month > 12)
{
d->year++;
d->month = 1;
}
}
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 28;
d->month = 2;
d->year = 2012;
}
void inc_date (date *d)
{
d->day++;
int days_in_month = 31;
if (d->month == 2)
{
int is_leap_year = 0;
if (d->year % 4 == 0)
is_leap_year = 1; /* FIXME */
if (is_leap_year)
days_in_month = 29;
else
days_in_month = 28;
}
else if (d->month == 4 || d->month == 6 || d->month == 9 || d->month == 11)
days_in_month = 30;
if (d->day > days_in_month)
{
d->month++;
d->day = 1;
if (d->month > 12)
{
d->year++;
d->month = 1;
}
}
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
#include <stdio.h>
typedef struct
{
char day, month;
int year;
}
date;
void set_date (date *d)
{
d->day = 28;
d->month = 2;
d->year = 2100;
}
void inc_date (date *d)
{
d->day++;
int days_in_month = 31;
if (d->month == 2)
{
int is_leap_year = 0;
if (d->year % 4 == 0)
is_leap_year = 1; /* FIXME */
if (is_leap_year)
days_in_month = 29;
else
days_in_month = 28;
}
else if (d->month == 4 || d->month == 6 || d->month == 9 || d->month == 11)
days_in_month = 30;
if (d->day > days_in_month)
{
d->month++;
d->day = 1;
if (d->month > 12)
{
d->year++;
d->month = 1;
}
}
}
int main (void)
{
date today;
set_date (&today);
inc_date (&today);
printf ("%d.%d.%d\n", today.day, today.month, today.year);
return 0;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment