C++ Stunde 1 - Seite 3

Seite 3 von 4 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/c_stunde_1_64927/page_3 - zur Vollversion wechseln!


Vivo schrieb am 30.01.2003 um 20:13

Zitat von atrox
freut euch auf implizites und explizites typecasting :)
Naja ... da isses wohl schwerer einem absoluten Neuling Pointeraritmethik beizubringen ... :fresserettich:


Obermotz schrieb am 30.01.2003 um 20:25

Ich würde Datentypen und Typecasting in ein Kapital zusammenfassen...


wodie schrieb am 31.01.2003 um 00:32

@ all: danke für die aufklärung :)

@topic: ich fänds leiwand, wenn du die beispiele so wählst, dass man sie selber "erweitern" kann. zb hab ich beim letzten (das soll keine selbstrühmung sein) das prog so erweitert, dass man beide variabeln einliest. zudem wird anfangs ein text angeführt, dass addiert wird.

ps: ich hab keine ahnung wovon ihr (oper8tor, atrox und vivo) da redets, aber ich bitte beim kurs...ans nochm ondan :)


moidaschl schrieb am 31.01.2003 um 15:43

Zitat von wodie
@ all: danke für die aufklärung :)

@topic: ich fänds leiwand, wenn du die beispiele so wählst, dass man sie selber "erweitern" kann. zb hab ich beim letzten (das soll keine selbstrühmung sein) das prog so erweitert, dass man beide variabeln einliest. zudem wird anfangs ein text angeführt, dass addiert wird.

ps: ich hab keine ahnung wovon ihr (oper8tor, atrox und vivo) da redets, aber ich bitte beim kurs...ans nochm ondan :)
k also passts eh wenn ma des selbständig machen kann!
du kannst auch mehrere variablen einlesen!
nächste stunde dann in verbindung wird die eingabe kontrolliert also mit if ( eingabe>0&&eingabe<1000) zb!


Ringding schrieb am 02.02.2003 um 20:08

Man kann ruhig mit IO anfangen, das schlaegt auch C++ Gott Stroustrup so vor.

Aber ein paar Sachen bitte:

Wir sind im 21. Jahrhundert, daher brauchen wir nicht mehr iostream.h, sondern iostream. Ersteres ist deprecated.

conio.h ist aeusserst proprietaer und daher am besten zu ignorieren. Statt dem getch() kann man auch ein cin >> ch machen, wobei ch vom Typ char ist.

Ein endl am Ende der Ausgabe waere auch nicht schlecht, es ist ueblich, das zu tun.


moidaschl schrieb am 04.02.2003 um 21:02

Zitat von Ringding
Man kann ruhig mit IO anfangen, das schlaegt auch C++ Gott Stroustrup so vor.

Aber ein paar Sachen bitte:

Wir sind im 21. Jahrhundert, daher brauchen wir nicht mehr iostream.h, sondern iostream. Ersteres ist deprecated.

conio.h ist aeusserst proprietaer und daher am besten zu ignorieren. Statt dem getch() kann man auch ein cin >> ch machen, wobei ch vom Typ char ist.

Ein endl am Ende der Ausgabe waere auch nicht schlecht, es ist ueblich, das zu tun.
hallo! erste stunde!
na sicher geht
auch
do{

var=getche();
toupper(var);
}while(var==Y);
oder so ähnlich bin scho müd :D


Wannabe2k schrieb am 05.02.2003 um 15:29

wieso machst die ganzen ausgaben bzw. eingaben mit cout bzw cin?
printf und scanf wären für anfang sicher einfacher(zumindest lernens wir in da schule so) wir haben jetzt(3te Htl) mit objektorientierter Programmierung angefangen.


watchout schrieb am 05.02.2003 um 20:01

ich weiss nicht, ich als neuling kann da ja nicht so viel sagen, aber gehts einfacher als
cout<<Ergebnis;
?

btw: was is eigentlich die genaue bedeutung von << und >> ?


atrox schrieb am 05.02.2003 um 20:09

<< und >> sind binäre schift-operationen. (also zb 00000001 << 1 wird 00000010)
allerdings kann man in C++ die operatoren 'überschreiben' und eigene funktionen ausführen lassen. das kann vieles sehr schön vereinfachen (tb rechenop. auf komplexen zahlen, operationen mit mengen), kann aber auch zu total un-intuitiven verhalten und syntax führen.
bei cin und cout, haben sich die programmierer gedacht, das sieht aus wie ein pfeil, und hat die operatoren dementsprechend verändert.

in java hat man sich zb bewußt dagagen entschiedn (obwohl man dann gleichzeitig eine ausnahme für + und strings gemacht hat)


Vivo schrieb am 05.02.2003 um 23:09

Zitat von watchout
btw: was is eigentlich die genaue bedeutung von << und >> ?
Kurz gesagt :
Der '<<' bzw. '>>' ist so überladen dass er in Kombination mit der Funktion cout bzw. cin die Funktion mit dem entsprechendem Parameter aufgerufen wird ...
Das ermöglicht zusätzlich noch dass man mehrere Werte ohne andauerndes cin/cout eingeben ein/ausgeben kann ...

bsp.: cout << testvar1 << "\n" << testvar2 << "\n";

:: Achja ... ich finds auch einfacher am Anfang mit cin/cout ... Wenn man das Prinzip von c kapiert hat, ist printf/scanf auch kein Problem mehr ...


watchout schrieb am 05.02.2003 um 23:58

thx @ atrox & vivo :)


leezenz schrieb am 06.02.2003 um 10:08

ich fand die erklärungen von "void" bisher net so doll - void = nichts.
Also:
void main(...) - liefert nichts zurück.
und
int main(void) - erwartet keine Parameter und liefert einen Wert zurück.


was anderes:
und der returnwert von main kann unter dos ebenfalls abgefangen werden... aber wer macht das schon bzw. ist lange her :)

ansonsten weiter so.


atrox schrieb am 06.02.2003 um 12:17

1) ich begrüße lerning-by-doing aktivitäten
http://www.williamson-labs.com/imag...erscone-605.gif
(die ersten 3 punkte (hören, lesen, sehen) sind evt. bei manchen leuten verschoben, es geht um die großen zusammenhänge)
Tutorials wie dieses zielen genau in diese richtung.

2) bevor sich alle zu sehr _nur_ auf die syntax von c/c++ stürzen und den selben fehler machen, der in vielen schulen gemacht wird: natürlich kommt man ohne den grundlagen der syntax der jeweiligen programmiersprache nicht weit, aber ähnlich wichtig (nach vielleicht 2 einführungsstunden über die syntax) ist das problemlösen und -umsetzen in programmiersprachen der 3ten generation. wenn jemand das beherrscht, kommt er/sie binnen kürzester zeit mit einer anderen (ähnlichen) programmiersprache zurecht.
3) daher wird es imho wichtig sein, zuerst mit einem minimal-gerüst erste programme zu schreiben, und nicht zu sehr auf details zu versteifen.


watchout schrieb am 06.02.2003 um 18:58

Zitat von atrox
1) ich begrüße lerning-by-doing aktivitäten
[img-removed :P]http://www.williamson-labs.com/images/Felderscone-605.gif[/img]
(die ersten 3 punkte (hören, lesen, sehen) sind evt. bei manchen leuten verschoben, es geht um die großen zusammenhänge)
Tutorials wie dieses zielen genau in diese richtung.

2) bevor sich alle zu sehr _nur_ auf die syntax von c/c++ stürzen und den selben fehler machen, der in vielen schulen gemacht wird: natürlich kommt man ohne den grundlagen der syntax der jeweiligen programmiersprache nicht weit, aber ähnlich wichtig (nach vielleicht 2 einführungsstunden über die syntax) ist das problemlösen und -umsetzen in programmiersprachen der 3ten generation. wenn jemand das beherrscht, kommt er/sie binnen kürzester zeit mit einer anderen (ähnlichen) programmiersprache zurecht.
3) daher wird es imho wichtig sein, zuerst mit einem minimal-gerüst erste programme zu schreiben, und nicht zu sehr auf details zu versteifen.
oh, da bleibt mir nur noch eins zu sagen.... full ack! :)

nur das mit der 3. generation... 3. generation? was' das?
1. straight
2. funktionen
3. objekte
oder wie?


atrox schrieb am 06.02.2003 um 19:16

Quelle: http://www.ik.fh-hannover.de/person...uebersicht.html
-----------
Die fünf Generationen der Programmiersprache

1. Generation: Maschinensprache
Auf der untersten Ebene der Programmiersprachen arbeitet man nur mit Zahlen. Dementsprechend sind die Programme völlig unleserlich und schwer zu erstellen. Die Programme sind sehr schnell.

2. Generation: Assembler Sprachen
Die Assembler Sprachen orientieren sich an den Maschinenbefehlen des jeweiligen Prozessors. Diese Befehle kann man sich besser merken als den Zahlencode der Maschinensprache. Komfortable Compiler beherrschen zudem Schleifen, Sprungmarken und Unterprogramme. Damit wurde die Lesbarkeit des Quellcodes erhöht.

3. Generation: Höhere Programmiersprachen
Sprachen wie BASIC, PASCAL, C oder C++ sind schon an die menschlichen Denkweisen angepasst. Sie ermöglichen den Austausch des Quellcodes zwischen verschiedenen Betriebssystemen und Prozessoren, wenn der Programmierer sich an den Standard hält

4. Generation: Nichtprozedurale Programmiersprachen
Mit dieser Technik wird nicht mehr beschrieben, WIE ein Problem gelöst werden soll, sondern nur noch WELCHES zu lösen ist. Diese Programmiersprachen sind natürlich nur für ganz spezielle Probleme konzipiert worden. Hierzu zählt beispielsweise SQL.

5. Generation: Programmiersprachen der Künstlichen Intelligenz
Mit diesen Programmiersprachen werden Lösungen mit Hilfe von bestimmten Regeln erarbeitet. Hierzu sind ausgefeilte Mechanismen zu implementieren, die bei Problemen selbstständig aus diesen herausfinden. Leider sind diese Sprachen noch etwas langsam. Hierzu zählen LISP (EMACS), PROLOG und SMALLTALK.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025