• Keine Ergebnisse gefunden

"Hallo &#34

N/A
N/A
Protected

Academic year: 2021

Aktie ""Hallo &#34"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

WolfgangKaier/MihaelMattes Blatt5

A

Systemnahe Software I

im Wintersemester 2009/2010

Abgabetermin:bis17.November2009

12 Stringfunktionen (6 Punkte)

ShreibenSieeinProgrammstrfun.,inwelhemSiedieFunktionsweiseundRükgabewerte

der String-Funktionen strlen(), strmp() und strpy() auswerten. Eine Beispielausgabe

sehenSiebeidernähstenAufgabe.

13 Eigene Implementierung (12 Punkte)

ImplementierenSiedanaheigeneVariantenderdreiFunktionen,dieSiemitdemPräxmy_

kennzeihnen.SosollIhreVariantevonstrlen()einfahmy_strlen() heissen.Ausser dem

NamensollenSiedieSignaturderFunktionenunverändertübernehmen.

DieAusgabeIhresProgrammssollteetwasoaussehen:

$ ./strfun

strlen("Hallo Welt!") = 11

strpy(buffer1, "Hallo ") = "Hallo "

strpy(buffer2, "Welt!") = "Welt!"

strmp(buffer1, buffer2) = -15

strmp(buffer1, "Hallo ") = 0

my_strlen("Hallo Welt!") = 11

my_strpy(buffer1, "Hurra ") = "Hurra "

my_strpy(buffer2, "Wirt!") = "Wirt!"

my_strmp(buffer1, buffer2) = -15

my_strmp(buffer1, "Hurra ") = 0

Hinweis:DieSignaturenkönnenSiedenManpagesderFunktionenentnehmen

(z.B.man -s3 strpybzw.man 3 strpy).

14 Geldanlagensuher (24 Punkte)

ShreibenSieeinProgrammgeld.,welhes vershiedeneGeldanlageneinliestunddannan-

handderBenutzereingabendiebesteverfügbareGeldanlage(inklusivederGeldsummeamEnde

derLaufzeit)ausgibt.

VerwendenSiefürdieVerwaltungderGeldanlageneinArrayvongeldanlage-Verbünden.

DasArraydarfkeineglobaleVariablesein!DieDenitiondesArraysistwiefolgtvorgegeben:

#define MAXANLAGEN (100)

typedef strut _geldanlage {

int nummer; // Eine frei waehlbare Nummer

float anfangszinssatz; // Zinssatz (in % p.a.) der ersten zwei Jahre

float restzinssatz; // Zinssatz danah

int mindesteinlage; // Mindesteinlage in Zehntel-Cents

} geldanlage;

int main() {

geldanlage anlagen[MAXANLAGEN℄;

// weiter

}

Die vomBenutzer abzufragenden Eingaben bestehen ausderAnlagesummein Euround

derLaufzeitinJahren.LagernSiedasEinlesenderGeldanlagensowiederBenutzereingaben

ineigeneFunktionenaus.DieSignaturderAnlagen-Einlesefunktionkönntewiefolgtaussehen:

// Liest bis zu maxAnlagen Geldanlagen von der Standardeingabe

// und liefert die Anzahl der Anlagen zuruek

int anlagenEinlesen(geldanlage *anlagen, int maxAnlagen);

Hinweis:Rehnen Sieinternin Zehntel-Cent, aber geben SiedieBeträgeentgenauund

abgerundetaus.

Beispiele:

$ ./geld

Freie Nummer der Anlage (-1 beendet Einlesen): 1

Zinssatz der ersten zwei Jahre in % p.a.: 5.2

Zinssatz danah: 1.8

Mindesteinlage in Euro: 500

Freie Nummer der Anlage (-1 beendet Einlesen): -1

Habe 1 Geldanlagen eingelesen.

Anlagesumme in Euro: 500

Laufzeit in Jahren: 3

Fuer eine Summe von 500.00 Euro ist Anlage 1 die beste.

(2)

Freie Nummer der Anlage (-1 beendet Einlesen): -1

Habe 0 Geldanlagen eingelesen.

Anlagesumme in Euro: 100

Laufzeit in Jahren: 1

Es wurde keine passende Anlage gefunden!

$ ./geld

Freie Nummer der Anlage (-1 beendet Einlesen): 42

Zinssatz der ersten zwei Jahre in % p.a.: 2

Zinssatz danah: 2

Mindesteinlage in Euro: 1000

Freie Nummer der Anlage (-1 beendet Einlesen): -1

Habe 1 Geldanlagen eingelesen.

Anlagesumme in Euro: 999

Laufzeit in Jahren: 10

Es wurde keine passende Anlage gefunden!

# Mit Hilfe der Beispieldatei anlagen.txt

$ ./geld <anlagen.txt

[... Eingabeprompts ...℄

Fuer eine Summe von 3200.00 Euro ist Anlage 3 die beste.

Nah 6 Jahren betraegt das Guthaben 3711.01 Euro.

# Nahdem die Laufzeit in der Datei auf 4 Jahre reduziert wurde:

$ ./geld <anlagen.txt

[... Eingabeprompts ...℄

Fuer eine Summe von 3200.00 Euro ist Anlage 2 die beste.

Nah 4 Jahren betraegt das Guthaben 3561.67 Euro.

Referenzen

ÄHNLICHE DOKUMENTE

Um diese Fragen zu beantworten werden die Rinnen und ihre Ränder - mit Multi-Corer für die Oberflächen, mit Schwerelot für die tiefer reichenden Abfolgen - beprobt; erstere

Setzen Sie schließlich Ihr individuelles Copyright als Formular-Beschriftung (Form Caption) beim Programmstart ein und schicken Sie bitte die Dateien dieses Projektes (*.exe,

nimmt, daß es sie zerbricht oder zerschmettert. Gar nicht einleuchtend aber ist es, wenn auch ürmibhib plnvamänab sich auf das „rötliche Roß&#34;. beziehen soll. Oij)enbebo's

Stelle dich auf deinen Stuhl!. Sag &#34;Hallo&#34; zur

&#34;Ich möchte Dich nicht verwunde(r)n mit einer Behauptung und doch kann ich sie nicht vermeiden: Ich glaube es Euch nimmermehr, selbst wenn ihr es glaubt, daß die Kindermärchen

[r]

Wenn gewisse Überlegungen hier sehr knapp dargestellt sind, sei hier auf diese größere Arbeit verwiesen, wo viele der hier nur allgemein angetönten Aspekte genauer behandelt

(In dü-ekter Weiterführung des im vorhergehenden Vers ausgedrückten Gedankens, läßt sich dieser Vers so verstehen, daß durch die Vielfältigkeit der dichterischen Gedanken