WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 15.03.2002, 11:33   #1
coolbininet
Hero
 
Registriert seit: 19.09.2001
Alter: 46
Beiträge: 859


coolbininet eine Nachricht über AIM schicken coolbininet eine Nachricht über Yahoo! schicken
Frage C- Programm/Struktogramm - Bin schon wieder lästig!

@All

Hi Leutz, bin leider schon wieder lästig. Brauche folgendes Programm, Struktogramm wäre besser:

Es soll ein kleines Programm geschrieben werden, dass mir beliebige Zahlen einliest und dann denn Durchschnitt und auch die Summe der beliebigen Zahlen errechnet.

Ein fröhlicher Gruß von einem lernenden und verstehenden Coolbininet
____________________________________
Wenn du eine helfende Hand brauchst, tust du gut wenn, du sie an den eigenen Armen suchst!
Website RI

Nur der Kleingeist hält Ordnung das Genie überblick das Chaos! Genie und Wahnsinn liegen dicht nebeneinander, sie können und sollen nicht getrennt werden.

|Marktorientierter Sozialist|Menschenfreund|Teamfähig|Analytiker|Logi ker|

If you want to see the Sky, fuck a Duck and learn to fly!

Mein Glück ist nicht von dieser Welt, insbesondere im Umgang mit Microsoft Produkten!

Möge die MACHT mit uns sein!
coolbininet ist offline   Mit Zitat antworten
Alt 15.03.2002, 19:48   #2
Sonic
Master
 
Registriert seit: 28.03.2000
Alter: 45
Beiträge: 691


Sonic eine Nachricht über ICQ schicken
Standard

HI!

Du solltest deine Programmieraufgaben wirklich selber lösen und nur wenn du in einem bestimmten Punkt Probleme hast solltest du das Forum fragen.
Ist nicht böse gemeint, aber so lernst du nie Programmieren. Und das ist nicht nur ein dummer spruch, beim programmieren kommt es ja haupsächlich auf die Problemlösung und nicht auf das (auswendig) lernen der Problemlösungen. Oder nur das lernen der Sprache.

lg
____________________________________
__________________
|»»»»»SONIC««««««|
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Sonic ist offline   Mit Zitat antworten
Alt 15.03.2002, 20:05   #3
pong
Inventar
 
Benutzerbild von pong
 
Registriert seit: 25.12.2000
Alter: 41
Beiträge: 9.063

Mein Computer

pong eine Nachricht über ICQ schicken
Standard

oki also programmstruktur:
[list=1][*]einlesen in string bis taste x gedrückt[*]schleife bis string ende[*]sum+ = string(i)[*]increment i[*]schleifen ende[*]avg=sum/i[/list=1]

aba langsam solltest solche wirklich simplen sachn selba können, wie wirst jemals an test/wh schaffen, wollen?
____________________________________
\"Ein Gewitter reinigt die Luft\", sagte der Mann, nachdem ein Blitz seine Frau erschlug

Nicht klicken!


Erstposteralarm/Beschwerde/Kummerkasten


Verplattet
pong ist offline   Mit Zitat antworten
Alt 15.03.2002, 20:18   #4
gaelic
nugent
 
Registriert seit: 28.08.2001
Beiträge: 2.500


Standard

wirklich. solche sachen haben doch eigentlich noch gar nichts mit programmieren zu tun. sie dienen doch nur zur einführung. und die mathematische berechnung des durchschnittswerts sollte bekannt sein.
____________________________________
kill it & grill it
gaelic ist offline   Mit Zitat antworten
Alt 15.03.2002, 23:22   #5
kikakater
Inventar
 
Registriert seit: 24.01.2001
Beiträge: 5.631


Standard

Für Struktogramme gibt es Lineale, bzw. benutzt man bestimmte Symbole, solltest eigentlich von den Kursunterlagen erfahren können *nachschlag*

Ein Programm zum Entwerfen von Struktogrammen gibt es dada: WinGESy

Außerdem hab ich ein nichtkonformes Struktogramm mit diesem Programm für Dich entworfen.
kikakater ist offline   Mit Zitat antworten
Alt 16.03.2002, 06:37   #6
hewlett
Inventar
 
Registriert seit: 08.11.2000
Alter: 42
Beiträge: 1.524


Standard

für struktogramme kannst du EasyCase verwenden. In welche Schule gehtst du? HTL oder was? Diese aufgaben sind ja nun wirklich nicht schwer, ist mir beim lernen von c auch so gegangen am anfang aber da musst du dich durchbeissen und jetzt versteh ich alle ganz gut glaube ich!
____________________________________
H.E.W.L.E.T.T.: Hydraulic Electronic Worker Limited to Exploration and Terran Troubleshooting
hewlett ist offline   Mit Zitat antworten
Alt 16.03.2002, 08:29   #7
kikakater
Inventar
 
Registriert seit: 24.01.2001
Beiträge: 5.631


Standard

Ich sag's ja: Man sollte nicht mit C beginnen.

Die NICHT apodiktisches Reihenfolge ist, so oder so ähnlich:

Basic, Modula 2 und Pascal, Cobol und dann C

Es stinkt mir aber schon, immer wieder betonen zu müssen, daß das ein Weg ist, und nicht der,die,das Weg ! *schönlangsamverzweifel* *nichtseinemeinungausdrückendarf,warumdennnicht*

Egal, es ist also mein Weg gewesen und PL I und andere Sprachen sind genauso geeignet oder ungeeignet wie eben wieder andere. Nur darf sich das alles doch nicht in gänzlicher Beliebigkeit ergehen.

Von Basic nach C über diese Zwischenstufen macht Sinn, anderes, z.B. gleich mit C zu beginnen, erscheint mir undurchführbar zu sein, manche können es schaffen, viele - meiner Meinung nach fast alle - gehen über Basic und andere Sprachen an die Sache mit der Programmierung in C heran.

Wichtig ist es die Prinzipiellheit von Basic am eigenen Leib zu erfahren. Die Abgeschlossenheit der Variablen - sprich die Angesichertheit gegen Absturz und die mangelnde Zugriffsmöglichkeit - in Basic ist die Grundlage für das Vertrauen, daß es ohne diese Abgesichertheit und nach Überwindung von Irrungen und Wirrungen bezüglich der Zugriffsmöglichkeit auf Variablen in C auch und gerade in C möglich ist konsistent und zügig und effektiv und nachhaltig und mit wenig(er) Aufwand (als in seiner eigenen C Vergangenheit und in anderen Sprachen, das sowieso) zu programmieren.

Modula 2 wiederum und auch Pascal zeigen das Wesen des Unterprogramms in perfekter Art und Weise auf, zu perfekt - leider - für C Verhältnisse fehlt die Abgefracktheit von C, das Lapidare, das Unmittelbare, das Segensreiche ... durch eben das Weglassen von Ballast. Es gibt zuviel Strukturwörter end und end. und all die netten Klauseln und was es da alles gibt.

Cobol kommt aus der Geschäftswelt und behandelt dezimale Zahlen und sonst schon überhaupt nichts. Die binären Datentypen sind zum internen Rechnen vorgesehen. Die kaufmännische Variante von Zahlen repräsentieren die BCD-Zahlen oder besser gesagt, ein Datentyp, der BCD Datentyp.

Wichtig ist es, daß 1 immer 1 bleibt, das ist in Cobol so, deswegen ist Cobol grundverschieden von anderen Sprachen. In anderen Sprachen ist 1 ab einem gewissen Punkt (Zeitpunkt, rechnerische Grenze, Begrenztheit der Darstellung von - irrationalen - Zahlen) plötzlich nur mehr 0.99999999. Ist es jetzt klar, warum ich sage, Basic Modula 2 Cobol und irgendwann vielleicht einmal C ?

In Cobol wird eine Fraktion gebildet, kaufmännisch auf eine bestimmte Stellenanzahl vor oder nach dem Komma gerundet und danach ist auch die Differenz zu dieser Fraktion - zu diesem Teil des Ganzen - zugänglich.

Nämlich so:

GESAMT = 4850

FRAKTION = 4850 / 0.11111

DIFFERENZ = GESAMT - FRAKTION

Das ist der Unterschied von Cobol zu anderen Sprachen, wo ich plötzlich für die Fraktion 0.6666666 erhalte und für die Differenz 0.333333. Das Gesamte sollte 1 sein, ist aber nun 0.999999.

Der Grund warum alles so einfach ist in Cobol bezüglich kaufmännischer Rechnungen ist die Speicherung von Werten als BCD Zahlen und die - allerdings bewußt zu initiierende - Rundung, gemeint ist die 'kaufmännische Rundung', die zur endgültigen Vermeidung von irrationalen Ergebnissen wie auch überhaupt zu Unterlaufsergebnisproblemen jenseits der definierten Anzahl an Nachkommsatellen von Rechnungen führt.

Weiters ist es klar, daß man diese Dinge in C nicht benötigt - die BCD Zahlen, also der BCD Datentyp, ist hier gemeint. Eine kaufmännische Rundung auf eine bestimmte Stellenanzahl ist ausreichend und sogar hinreichend, wenn man weiß, daß der C Datentyp float wie double und long double nach Mantisse und Exponent gespeichert werden. Es gibt Assemblerbefehle, die Rundung nach einer bestimmten Stellenanzahl effektiv durchzuführen. Das ist die Aufgabe der - korrekten, sprich aufkommensarmen - Implementation des jeweiligen C Compilers.

Ein Satz zum Thread 'angewandter Unterricht':

Das Wort dir_list als Funktionsname zum Einlesen einer Liste an Verzeichniseinträgen (nicht rekursiv) ist DESWEGEN eine Baustelle, WEIL es ein Underscore (=einen Unterstrich) enthält. Die Bedeutung kommt ganz gut hinüber, also eine Verzeichnisliste einlesen, aber ReadDir ist die endgültige Fassung, eben Verzeichnis(liste) einlesen.

Das sind Nuancen, die schon eine Tragkraft haben. Wenn der _m3 natürlich daherkommt und immer Anwürfe bringt, lasse ich einen Erklärungssatz wie "Das Wort dir_list ..." nicht heraus, weil meine Erklärung mitsamt mir selbst zerpflückt wird mit halbwegs so zu verstehenden relativ persönlich werdenden Untergriffen. Auf so etwas steht sich's wahrscheinlich keiner hier im Forum, wenn man etwas sachlich erklären will, und ich auch nicht. Punktum. Ich bin dem _m3 auch nicht gram. Ich hoffe nur, daß ab jetzt mal ein bißchen "ein Toleranzpatent" für Leute wie den _m3 Einzug halten kann.

Nix für ungut, und Entschuldigung für die eigene Ungerechtigkeit ...

<sollte hier wahrscheinlich nicht fehlen> Kikakater
kikakater ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:58 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag