• Keine Ergebnisse gefunden

./bsort Es gibt mehr als 10 Zahlen in der Eingabe

N/A
N/A
Protected

Academic year: 2021

Aktie "./bsort Es gibt mehr als 10 Zahlen in der Eingabe"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

WolfgangKaier/MihaelMattes Blatt3

A

Systemnahe Software I

im Wintersemester 2009/2010

Abgabetermin:bis03.November2009

9 Zahlen sortieren (16 Punkte)

ShreibenSieeinProgrammbsort.,welhesvonderStandardeingabeint-Ganzzahleneinliest

(biszueinerüberdasMakroMAXNUMBERSvonIhnendeniertenMaximalanzahl),siemitHilfe

desBubblesort-AlgorithmussortiertunddannaufderStandardausgabeinaufsteigendsortierter

Reihenfolgeausgibt.

IhrProgrammsollinderLagesein,zweiFehlerzuständezuerkennen:Erstenskannessein,

dasseinBenutzer statteinerZahletwasandereseingibtunddasEinlesensomitfehlshlägt.

Zweitenssollerkanntwerden,wennmehralsMAXNUMBERSZahleneingebenwurden.Inbeiden

FällensolldasProgrammeineFehlermeldungaufderStandardfehlerausgabeausgebenundsih

beenden.

Werten Sie das Ergebnisder zum Einlesenverwendeten Funktion sanf mitHilfeeiner

swith-Anweisungaus.

ImErfolgsfallsolldasProgrammaufderStandardfehlerausgabe dieAnzahlderdurhge-

führtenVertaushungenausgeben.

Beispielehierzu(MAXNUMBERShatdadenWert10):

$ ./bsort

4 3 1 2

1 2 3 4

Fertig. Es wurden 5 Vertaushungen gemaht.

$ ./bsort

1 2 3 4 5 6 7 8 9 10 11

Es gibt mehr als 10 Zahlen in der Eingabe!

$ ./bsort

1 2 3 a 5

Es wurde etwas anderes als eine Zahl gelesen!

Hinweis1:SpeihernSiedieZahlenineinemArrayderGröÿeMAXNUMBERS(ähnlihzuJava;

RükgabewertsderFunktionsanferkennen.Siekönnendiesenbeispielsweisemit

int gelesen = sanf(...); speihern.BeiErfolgliefertsanfdieAnzahlderVariablenzu-

weisungenzurük,beiMisserfolgistdieZahlalsokleineralserwartet.WenndieEingabe zu

Endeist,hatderRükgabewertdenWertdesMakrosEOF(endofle).

Hinweis3:SiekönnendieZahlenjedesMalvonHandeingeben(Strg-DaufeinerneuenZeile

beendetdieEingabe)oderSiekönnensihdieEingabeumlenkungderShellmitHilfedesOpe-

rators<zunutzemahen.LegenSiehierzueineneueDatei(mitdergewünshtenEingabeals

Inhalt)anundführenSiedasProgrammwiefolgtaus:./programmname <eingabedateiname

Hinweis4: EineBeshreibungvonBubblesort ndenSiebeispielsweisein der Wikipedia

(hierausshnittsweisekopiert):

DieReihewirdinaufsteigenderRihtungdurhlaufen.Dabeiwerdenimmerzweibenah-

barte Elemente betrahtet.WennsieinfalsherOrdnungstehen,werdensievertausht.Am

Endestehtdasgröÿteoderdaskleinste(jenahSortierung)ElementamEndederReihe.

DerobigeShrittwirdsolangewiederholt,bisdieReihekomplettsortiertist.Dabeimuss

dasletzteElementdesvorherigenDurhlaufsabernihtmehrbetrahtetwerden,daesseine

endgültigePositionshongefundenhat.

Jenahdem,obauf-oderabsteigendsortiertwird,steigendiegröÿerenoderkleinerenEle-

mentewieBlasenimWasser(daherderName)immerweiternahoben,dasheiÿt,andasEnde

derReihe.AuhwerdenimmerzweiZahlenmiteinanderinBubblesvertausht.

VielErfolg!

Referenzen

ÄHNLICHE DOKUMENTE

Danach sollen die Ausgaben der Kassen für die qualifi- zierte ehrenamtliche Sterbebegleitung im Rahmen ambulanter Hospizdienste im Jahr 2002 für jeden Versicherten 0,15

Das kannst du lernen: den Zirkel genau einstellen, mit dem Zirkel sauber zeichnen Du brauchst: Lineal, Zirkel, Papier, Farbkasten.. Lege das Blatt quer

Ziffern schreiben, Zahlzerlegung von 9, Geldbeträge mit Mü nzen und Scheinen zeichnen.

athe an Stationen SPEZIAL: Zahlen kennenlernen AP Lehrerfachverlage GmbH, Donauwörth. Station

Die Wurliwürmer haben sich mit Farbe bekleckert und einige ihrer Zahlen können nicht mehr

Fazit: Rohstoffbasierte Entwicklung ist möglich, bleibt aber auch in der heutigen Zeit eine beson- dere Herausforderung für Entwicklungsländer. Hieraus ergibt sich auch eine Agenda

Nach dem GKV-Wettbewerbsstärkungsge- setz von 2007 kann eine Kranken- kasse die Zuzahlung für solche Arz- neimittel um die Hälfte reduzieren oder ganz erlassen, für die durch

Vors.: Anneliese Franz, geb. November, 15 Uhr, Treffen im Vereinshaus, I. Stock in Erbach. Manfred Seidenberg zeigt seinen Videofüm „Herbst inMasuren. Gäste sind zu diesem