Wie programmiert man ? Kann mir das mal jemand zeigen?
Ich kenne mich am PC perfekt aus!DochProgrammieren ist für mich ein Fremdwort.Nun wollte ich mal schauen ob hier irgendjemand so nett ist und es mir zeigen kann.
Aber bitte in kleinen Schritten.Ganz unten anfangen!Was hat es mit Variablen auf sich?
Ich möchte wenigstens einen Rechner mit plus und minus programmieren können.
Wenn ich das kann, arbeite ich mich schon alleine in die Welt des Programmierens vor.
Ich bin nähmlich ein Blitzkneiser!(Scherz)
Aber bitte helft mir,ich interessiere mich wirklich sehr dafür und möchte es auch einmal beherschen!
Bitte, bitte helft mir!!!!!
Beim Programmieren geht es darum, dem Rechner Anweisungen zu geben, die er interpretieren kann. In der Regel schreibt man seinen Kram in einer Programmiersprache, die man über einen Compiler (Übersetzer) in Maschinencode (das, was der Rechner verarbeitet) übersetzt.
Variablen sind exakt das, was sie in der Mathematik auch sind: Platzhalter für Werte. In der Programmierung können Variablen mehr enthalten als nur Zahlen, aber sie funktionieren ansonsten wie in der Mathematik.
Der Akt des Programmierens setzt sich aus zwei Tätigkeiten zusammen: Du arbeitest einen Algorithmus (Liste von Anweisungen, wie man das Problem löst) aus und formulierst sie in der Programmiersprache.
Eines der bekanntesten Programme überhaupt ist "Hello World". Es gibt einfach den Text "Hello World" aus. Der Algorithmus ist schlicht: Gib' den Text 'Hello World' aus.
In C++ würde das so aussehen:
In Java so:
Oder in Python:
Am Besten ist es wohl, wenn du dir eine Sprache suchst und ein paar Tutorials durcharbeitest. Bei der Wahl der Sprache und des Tutorials können die User hier dir sicher helfen. (Die Basic-Fraktion hat sich jetzt angesprochen zu fühlen.)
Das Semikolen braucht man nicht zwingend. In Python wird das Ende eines Befehls normalerweise durch einen Zeilenumbruch definiert, mehrere durch Semikolons getrennte Befehle in eine Zeile zu schreiben ist die unüblichere Methode.[/klugshice]
Python ist imo auch als Einstiegssprache geeignet, du kannst es dir ja mal angucken, wenn du willst. Ich finde diese und dieses Tutorial ganz brauchbar (wobei letzteres etwas komplexer zu lesen ist, wenn man bisher noch nicht programmiert hat).
Evtl. ne dumme idee aber so habe ich es gemacht/mache ich es
Angefangen habe ich mit Makeupsprachen HTML , VRML usw.
Danach geht maqn zu Scriptsprachen über meisst PHP kann aber auch ASP oder Perl oder (weiss nett ob das richtig ist) Python sein.
Danach haus du 2 Wissen
1,Wie es um die umschreibung von Objekten geht
2,Wie man Scriptet/Programm Code Baut
Mit hilfe der Script sprachen lernt man mti Variablen umzugehn und zu lernen das 0 und 1 (true und false) einer der wichtigsten dinge der welt sind ^^
Dann würde ich zu einer Programmier Sprache gehn die vom Prinzip einer der bessten ist JAVA
Kompertibel , Schnell , GUT , gratis (nett so wie Delphie) und extrem aktuel
Natürlich kannst du auch anderre wege gehn aber einen Tip gebe ich dir Lern KEIN Pascal das teil bringt dich voll durcheinander >.< und erwarte von C/C++ nicht zuviel in gewissen sachen z.B. Variablen umgang sind mir Script sprachen lieber die sind die Variablen etwas Flexibler aber wer einen idee hat finden einen weg
Angefangen habe ich mit Makeupsprachen HTML , VRML usw.
...
MarkUp. MakeUp ist so der weiberkram udn ich weis ja net ob die virtual reality modelign language so wirklich ne markuplanguage ist
Zitat von dadie
Danach geht maqn zu Scriptsprachen über meisst PHP kann aber auch ASP oder Perl oder (weiss nett ob das richtig ist) Python sein.
...
perl ist wirklich das beste beispiel für ne scriptsprache. besonders für einen anfänger....
da blickt er 100% durch
Zitat von dadie
Mit hilfe der Script sprachen lernt man mti Variablen umzugehn und zu lernen das 0 und 1 (true und false) einer der wichtigsten dinge der welt sind ^^
...
naja man sollte aber nicht nur booleans lernen sondern auch die anderen variablen udnd erne zusammenhang. z.b strings bestehen aus chars
Zitat von dadie
Dann würde ich zu einer Programmier Sprache gehn die vom Prinzip einer der bessten ist JAVA
...
es gibt KEINE beste sprache
jede sprache hat vor und nachteile
Zitat von dadie
Kompertibel , Schnell , GUT , gratis (nett so wie Delphie) und extrem aktuel
...
gratis naja, greift man auf ne gratis pascalversion zurück :P und naja würd eher denken delphi ist schneller :P
Zitat von dadie
Natürlich kannst du auch anderre wege gehn aber einen Tip gebe ich dir Lern KEIN Pascal das teil bringt dich voll durcheinander >.< und erwarte von C/C++ nicht zuviel in gewissen sachen z.B. Variablen umgang sind mir Script sprachen lieber die sind die Variablen etwas Flexibler aber wer einen idee hat finden einen weg
...
und nun zum hauptteil den ich ausdiskutieren wollte
wieso kein pascal?
ich finds relativ einfach
so durcheinander bringt es einen garnicht
java find ich um einiges schlimmer in der hinsicht (wenn mans zum ertsne mal sieht)
und vairablen umgehen ist echt schlimemr in delphi/pascal hast recht
hast n ARRAY namens TEXTARRAY und willst einen array machste TEXTARRAY[X] willste nun noch ein ebsitmmtes zeichen TEXTARRAY[X][Y] naja hat ne gewisse ähnlichkeit mit na sriptsprache wie php :P
MarkUp. MakeUp ist so der weiberkram udn ich weis ja net ob die virtual reality modelign language so wirklich ne markuplanguage ist
...
Man fängt unten and und arbeitet sich nach oben darum finde ich Makeup sprachen sidn wichtig
Zitat
perl ist wirklich das beste beispiel für ne scriptsprache. besonders für einen anfänger....
da blickt er 100% durch
...
Beispiel ? Auserdem ist Perl das besste da hast du recht weil es einer Programmier Sprache am nähesten kommt.Meines wissens arbeitet es mehr mit dem System zusammen als PHP
vondaher
Zitat
naja man sollte aber nicht nur booleans lernen sondern auch die anderen variablen udnd erne zusammenhang. z.b strings bestehen aus chars
...
ich weiss auf was das ne anspielung ist -.- aber währe es so schlimm wenn man zuanfang nur 1 Variablen Typ kennen lernt ich meine eile mit weile nicht gleich mit der Tür ins haus fallen
Zitat
es gibt KEINE beste sprache
jede sprache hat vor und nachteile
...
So du hast recht keine frage doch Prinzipiel ist Java eine Top Sprache mit der nur wennige mithalten können.
Zitat
gratis naja, greift man auf ne gratis pascalversion zurück :P und naja würd eher denken delphi ist schneller :P
...
Sicher das du schonmal mit Java gerarbeitet hast ? Also bei mir Merkt man kaum einen unterschied zwischen Java C und Delphie klar gibt es 1 , 2 sachen wo Sprache X besser ist aber das JAVA Langsamm ist , ist ein Gerücht !
Zitat
und nun zum hauptteil den ich ausdiskutieren wollte
wieso kein pascal?
ich finds relativ einfach
so durcheinander bringt es einen garnicht
java find ich um einiges schlimmer in der hinsicht (wenn mans zum ertsne mal sieht)
und vairablen umgehen ist echt schlimemr in delphi/pascal hast recht
hast n ARRAY namens TEXTARRAY und willst einen array machste TEXTARRAY[X] willste nun noch ein ebsitmmtes zeichen TEXTARRAY[X][Y] naja hat ne gewisse ähnlichkeit mit na sriptsprache wie php :P
[tippfehler waren absicht...]
...
k
Dann löse folgenden PHP code in C/C++ und sage mir das , das einfach für anfänger sein soll
(kann fehler enthalten )
Aufjeden fall könnte ich das so einfach nicht in C Lösen weil der Variablen umgang dort zu unflexibel ist , mit Java müsste es auch so einfach gehn
Obwohl ich kein PHP kann:
Bin mir nicht sicher ob die Headerdatei "string" oder "string.h" ist, aber so in etwa sieht das aus. Nicht wirklich kompliziert..
In der Programmierung können Variablen mehr enthalten als nur Zahlen
...
Genaugenommen können nur Zahlenwerte gespeichert werden. Da gibt es zwar Ausnahmen, wie der Compiler diese umsetzt, aber gerechnet wird mit Zahlen und nicht etwa mit Buchstaben. Und Strings sind ja auch nur Zahlenketten.
Selbst wenn man in C dann einen char mit dem Wert 'A' in der IDE erstellt, wird er intern als Variable mit dem Wert 65 angelegt. (Da dies ja der ASCII Code für den Buchstaben "A" ist.)
Zitat
So du hast recht keine frage doch Prinzipiel ist Java eine Top Sprache mit der nur wennige mithalten können.
...
Auf mich machst du den Eindruck, als wenn du bisher recht wenig mit Programmierung am Hut gehabt hättest. Ok, ein wenig Html und von mir aus auch ne Menge PHP und jetzt (neuerdings) Java, aber kennst du wirklich die anderen Hochsprachen alle? Es gibt verdammt viele und die mögen alle ihre Vor- und Nachteileim Vergleich zu Java haben. Nicht das ich behaupten möchte, ich kenne sie alle oder nur Ansatzweise aber dir traue ich auch nicht zu, darüber urteilen zu können, was besser oder schlechter als Java ist, nur weil du gerade mal diese Sprache nun lernst.
C/C++ find ich persönlich sehr schön, sieht nett aus und ist kompatibel mit APIs wie der WinAPI (sämtliche offizielle Beispiele sind in C geschrieben), DirectX, OpenGL... Passt alles wunderbar dazu, warum was anderes nehmen, wenn's für mich passt?
Zitat
und erwarte von C/C++ nicht zuviel in gewissen sachen z.B. Variablen umgang sind mir Script sprachen lieber die sind die Variablen etwas Flexibler aber wer einen idee hat finden einen weg
...
Hast du da ein konkretes Beispiel? Wo ist an C die Handhabung der Variablen schwieriger als in anderen Sprachen. Doch wohl nicht, dass man sie vorher zu deklarieren hat, oder? Oder, dass sie im gleichen Scope liegen müssen, um lokal verfügbar zu sein?
@oliver.sobe:
Wenn es wirklich Programmieren sein soll, empfehle ich direkt eine Hochsprache und nicht, wie manch' Vorredner, PHP oder HTML. Es sollte schon Pascal, Delphi, Visual Basic, Pure Basic, C, C++, Java oder soetwas in der Art sein.
Persönlich als optimaler Einstieg würd ich Pure Basic empfehlen, auch wenn ich mich dem mittlerweile losgesannt habe und nur noch in C/C++ programmiere. Aber zum Üben und Kennenlernen ist es optimal, wenig Aufwand, schnelle und sofort sichtbare Ergebnisse.
@MagicMagor: Das ist aber C++, oder worauf war der Satz mit dem PHP bezogen?
So ganz lässt sich der Code auch nicht kompilieren, da der Typ String etwas anders initialisiert wird. Ich habs mal etwas umgeschrieben:
Nur noch ein String, dafür ein simples Hello World mit String anstelle direkter Ausgabe.
Nichts leichter als das:
Jeder nutzt eben die Methode die er für richtig hält. Bei euch mag man die Variablennamen ändern können (da Java nunmal eine Interpreter-Sprache ist), bei uns gehts eben über Arrays, aber es geht genauso einfach zu handhaben.
(In jeder compilierten Hochsprache wird AFAIK die Variablen so durch ihre Werte ersetzt, dass es nicht möglich ist, die Namen der Variablen zu ändern, wie in einer Interpretersprache. Allerdings haben Interpretersprachen dafür Geschwindigkeitsdefizite. Demnach kann man nicht sagen, C/C++ hätte eine umständliche Handhabung in Variablen da diese afaik in jeder compilierten Hochsprache so ist. Bei Interpretern, wie gesagt, mag es anders sein. Da haben die unterschiedlichen Sprachen eben wieder ihre Vorteile und Nachteile. Z.B. ist Operatorenüberladung afaik nicht in Delphi möglich, weiß nicht, ob es das in PHP oder Java gibt.)
Noch was, variable++ ist nicht so schnell wie ++variable.
@Sunny
Ich hab auch ein Array und keinen einzelnen String initilasiert.. aber k, hab schon was länger nicht mehr mit C++ gearbeitet. Das mit PHP war darauf bezogen, das ich ohne PHP-Kentnisse dadies code lesen konnte =).
@dadie:
Kennst du Arrays? Für sowas sind die da..
Variante 2:
Erzeugt denselben output...
Nur weil du nur PHP kennst/kannst, kannst du eine Sprache nicht deswegen verurteilen weil sie NICHT wie PHP ist. Das ist eine beschränkte, primitive Sichtweise. Ansonsten kann ich auch sagen, PHP sei schlecht, weil sie keine Mehrfachvererbung kann..
1,Ich habe NIX von Arrarys gesagt beim 2 Code sondern nur von 3 Strings
2,Seid ihr euch eigentlich irgentwie einig ?
Mir wurde gesagt das es nru Über Arrarys geht
Zitat von MagicMagor
Zitat
So etwas habe ich schon geahnt -.- wie speicher ich sie den _1 _2 usw. ab ? mit "" kann ixh nix machen das bringt nur errors -.-
...
C++ ist kein PHP, schon mal was von Arrays gehört?
...
Zitat von masterquest
Afaik gar nicht. C++ ist zum einen kompiliert und zum anderen älter als Php, da ist deutlich weniger Flexibilität drin.
Du solltest dir mal klarmachen, dass C++ und Php zwei völlig unterschiedliche Dinge sind. Gleiche Syntax != gleiche/ähnliche Sprache
Jetzt darf ich mal Ganz Kurz fragen : Könnt ihr euch mal einigen ?
Zuanfang sagt ihr es geht nicht , ich finde mich mti ab.
Nun behauptet ihr es geht obwohl ihr schon behauptet habt es geht nicht >.<
Edit:
Zitat
Andererseits kann man dadies Code sowieso nicht nachbauen, da er nicht mal syntaktisch korrekt ist... => ist kein Operator. >= wäre korrekt.
...
*nach denk* in welcher script sprache ist diese schreibweisse nochmal überlich *nach denk* >.< das passiert wenn man 4 wochen nicht Scriptet >.< verdammte axt kann es Sql sein o.O oder *kratz* aus welcher sprache haben ich den Syntax nur ?
Ich finde, daß PHP eine gute Einsteigersprache ist, weil sie einerseits einen großen Funktionsumfang hat (= man kann relativ komplexe Algorithmen einfach umsetzen), andererseits aber sehr einsteigerfreundlich ist, besonders durch die typenlosen Variabeln.
Java ist für Einsteiger absolut ungeeignet. Erstens wird auf Typsicherheit so sehr Wert gelegt, daß selbst Umrechnungen, bei denen potentiell Präzision verloren gehen könnte, einen Compilerfehler verursachen. Zweitens baut Java sehr stark auf dem Konzept der objektorientierten Programmierung auf, womit man absolute Anfänger nicht sofort konfrontieren sollte.
BTW, dadie will C sehen und kein C++. Letztenendes ist sein Argument nicht sehr stark, weil ein Einsteiger sowieso eher C++ nehmen würde, aber ihr habt noch keinen C-Code gepostet...
Ihr müßtet das Array als Array von Zeichenarrays (char*) machen, was den Einsatz von malloc() voraussetzt, IIRC. Außerdem braucht ihr die C-Ausgabefunktion, die ich nicht kenne.
Andererseits kann man dadies Code sowieso nicht nachbauen, da er nicht mal syntaktisch korrekt ist... => ist kein Operator. >= wäre korrekt.
1,Ich habe NIX von Arrarys gesagt beim 2 Code sondern nur von 3 Strings
...
Ein Array ist nix weiter als eine komfortable Möglichkeit, mehrere gleiche Typen zu erstellen. Demnach erstelle ich hier 3 Strings welche auch als drei einzelne Strings im Speicher liegen. Nur eben hintereinander, was ja wohl nicht verboten sein sollte.
Was die C anstatt C++ Sache betrifft, ich bin gerade zu müde um mich da jetzt nochmal ran zu machen. Morgen schau ich mal, ob ich da noch ein passendes Beispiel erstellen kann, welches Dadies Code mit C-Strings zeigt.
EDIT:
Ich konnt's nicht lassen und habs nochmal eben schnell hingeschmiert:
Ist zwar C und C++ gemischt, dennoch sind Stringoperationen jetzt mit den alten C-Strings realisiert worden und nicht mit der String-Klasse. So ähnlich könnte man es machen, da es eben in 7 Minuten gemacht wurde, möge man mir kleine Fehlerchen verzeihen oder nicht darauf beharren, dass dies die einzig korrekte oder schnellstmögliche Methode sei.
EDIT2: Methode 2, welche ein mehrdimensionales Array verwendet und demnach keine malloc-Funktion:
Und ja, ich seh schon, man könnte dein Speicher vor Beenden des Programms noch wieder freigeben, ich seh aber durchaus Windows dazu in der Lage, für dieses kleine Testprogramm, das mal zu übernehmen.
Natürlich kannst du auch anderre wege gehn aber einen Tip gebe ich dir Lern KEIN Pascal das teil bringt dich voll durcheinander
...
Ich persönlich habe vor knapp 18 Jahren mit BASIC und vor 15 Jahren mit Pascal (genauer: Turbo Pascal) angefangen. Ich wüsste nicht, dass ich deswegen durcheinandergebracht wurde. Im Gegenteil ... dass ich heute in der Softwarebranche grosse Projekte in C++ bearbeiten kann oder fähig bin, mich innerhalb von zwei Wochen in HTML/JavaScript einzuarbeiten oder einem Mitarbeiter bei seinen C#-Projekten zu helfen, obwohl ich diese Sprache vorher nicht kannte... das habe ich einzig und allein dem Spass am Lernen und Programmieren mit Borland's Turbo Pascal zu verdanken. Die Version 7.0 (die letzte DOS-Version mit dem schnellsten Compiler der Welt) habe ich auch heute noch auf meinem Rechner und ab und an starte ich die (für damalige Verhältnisse fantastische) IDE und schreibe ein kurzes Programm. Also vielleicht ist ja PASCAL doch nit so schlecht?
Abgesehen davon verstehe ich nicht, warum jemand deine PHP-Skripte in C nachbauen sollte? PHP wurde für einen ganz anderen Anwendungsbereich entwickelt als C. Niemand würde Quake in PHP coden (ausser zum Spass) und niemand würde Boardsoftware in C/C++ coden (ausser zum Spass).
@Jesus:
Komplettes Agree zum Thema Java und damit anfangen.
Bezüglich PHP: Durchaus möglich, dass PHP als Einsteigersprache eine gute Wahl wäre. Allerdings halte ich für Anfänger ein fehlendes Typensystem für eher nachteilig. Weil es dadurch später schwieriger wird, ihnen ein solches noch nachträglich beizubringen. Andererseits ist Typenlosigkeit vielleicht die Zukunft und dann wäre es dumm, den jungen Leuten das Zeug noch ins Hirn zu hämmern.
@Ynnus:
Um deinen Code in reines (und altes) C umzuwandeln, fehlt gar nicht mehr viel:
1) #include <iostream> und using namespace std; müssen weg, dafür mit #include <stdio.h> die standard input/output header datei der Laufzeitbibo einbinden.
2) Warum die Stringinitialisierung so kompliziert? Auch C kennt bereits initialisierte Strings. Also das Array ganz normal deklarieren und initialisieren. Wenn du unbedingt mit allokiertem Speicher arbeiten willst, dann solltest du allerdings nicht mit memcpy sondern mit strcpy arbeiten (diese Funktion ist in string.h definiert ... und für C benutzbar).
3) cout gibts natürlich nicht, dafür ein einfaches printf(textpointer); für das Zeilenende gibt es natürlich kein endl, sondern dafür tut es ein einfaches printf("\n");
Wie gesagt Feenstaub ich kann nur aus eigener erfahrung Sprechen und der umstieg von pascal auf C# war ein schlimmer und schwerer umstieg (und ja C# nicht C oder C++ -.-')
Zumindest hatte ich einige Probleme das Grösste Problem was ich extrem Spüre nach Einiger Zeit pascal und Scriptsprachen kriegt man leichte Probs mit Objektorientieren Coden (vorallem bei Pascal >.< da schreibt man sich tot für 1 Window)
PHP und sogar mehr oder weniger funktionsfähiges. Allerdings ist die 5. Zeile (Leerzeilen nicht mitgezählt) aus zwei Gründen nicht ganz richtig.
1. Den Vergleichsoperator => gibt es nicht. Das wäre wenn überhaupt >= und der is in dem Fall auch falsch, weil er immer false gäbe ($i ist nie größer oder gleich 3). Richtig wäre hier <
2. Es ist unsinnig Zahlen als Strings zu schreiben. In PHP geht das zwar, aber es ist eine schlechte Angewohnheit, die Rechenzeit zum Umwandeln braucht und in anderen Sprachen verursacht sie meistens Fehler.
Richtig wäre demnachDass man Variablen in Variablennamen verwenden kann, ist übrigens richtig und manchmal sogar nützlich, wenn man keine assoziativen Arrays verwenden will, was ja durchaus seine Gründe haben kann.