{"id":2722,"date":"2025-11-20T08:00:00","date_gmt":"2025-11-20T07:00:00","guid":{"rendered":"https:\/\/www.fuhselab.de\/?p=2722"},"modified":"2025-11-05T09:48:48","modified_gmt":"2025-11-05T08:48:48","slug":"c-und-strukturen","status":"publish","type":"post","link":"https:\/\/www.fuhselab.de\/index.php\/2025\/11\/20\/c-und-strukturen\/","title":{"rendered":"C++ und Strukturen"},"content":{"rendered":"\n<p><br>Wir lernen jetzt Strukturen in C++ kennen und dieser Artikel zeigt ein erstes kleines Beispiel. Es wird aber auch das Vektorprogramm weiterentwickelt&#8230;<\/p>\n\n\n\n<!--more-->\n\n\n\n<p><br><strong>Strukturen in C++:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;iostream>\n#include &lt;string>\n\nstruct konto\n{\nstd::string kundenname;\nint kontonummer;\ndouble kontostand;\nint kredit;\n};\n\nint main()\n{\nkonto meinKonto;\nmeinKonto.kundenname = \"Hans Mustermann\";\nmeinKonto.kontonummer = 1234567 ;\nmeinKonto.kontostand = 5000;\nmeinKonto.kredit = 1000;\n\nstd::cout \n&lt;&lt; \"Konto von \"\n&lt;&lt; meinKonto.kundenname\n&lt;&lt; std::endl\n&lt;&lt; std::endl;\nstd::cout\n&lt;&lt; \"\\tKontonummer:             \"\n&lt;&lt; meinKonto.kontonummer\n&lt;&lt; std::endl;\nstd::cout\n&lt;&lt; \"\\tKontostand:              \"\n&lt;&lt; meinKonto.kontostand\n&lt;&lt; std::endl;\nstd::cout\n&lt;&lt; \"\\tUeberziehungskredit:      \"\n&lt;&lt; meinKonto.kredit\n&lt;&lt; std::endl;\nstd::cout\n&lt;&lt; std::endl;\n\nreturn 0;\n}<\/code><\/pre>\n\n\n\n<p><strong>Das Vektorprogramm vom 11.09.2025:<\/strong><\/p>\n\n\n\n<p>Das erste Vektorprogramm vom 11.09.2025 erzeugte wirklich nur das Men\u00fc und nun wird es um die notwendigen mathematischen Formeln erg\u00e4nzt.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;iostream>\n#include &lt;cmath>\n#include &lt;cstdio>\n\nstruct vektor\n{\ndouble x;\ndouble y;\n};\n\n\/\/ Die Funktionen\n\nvektor v_einlesen()\n{\nvektor ergebnis;\n\nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" x: \";\nstd::cin >> ergebnis.x;\nstd::cout &lt;&lt; \" y: \";\nstd::cin >> ergebnis.y;\nstd::cout &lt;&lt; std::endl;\n\nreturn ergebnis;\n}\n\nvektor v_addieren(vektor v1, vektor v2)\n{\nvektor ergebnis;\n\nergebnis.x = v1.x + v2.x;\nergebnis.y = v1.y + v2.y;\n\nreturn ergebnis;\n}\n\nvektor v_subtrahieren(vektor v1, vektor v2)\n{\nvektor ergebnis;\nergebnis.x = v1.x - v2.x;\nergebnis.y = v1.y - v2.y;\n\nreturn ergebnis;\n}\n\nvektor v_skalarprodukt(vektor v, double n)\n{\nvektor ergebnis;\n\nergebnis.x = n*v.x;\nergebnis.y = n*v.y;\n\nreturn ergebnis;\n}\n\ndouble v_vektorprodukt(vektor v1, vektor v2)\n{\ndouble ergebnis;\nergebnis = (v1.x * v2.y) - (v1.y * v2.y);\n\nreturn fabs(ergebnis);\n}\n\ndouble v_laenge(vektor v)\n{\ndouble ergebnis;\n\nergebnis = sqrt(v.x*v.x + v.y*v.y);\n\nreturn ergebnis;\n}\n\nvoid v_ausgeben(vektor v)\n{\nstd::cout &lt;&lt; \"(\" &lt;&lt; v.x &lt;&lt; \",\" &lt;&lt; v.y &lt;&lt;\")\";\n}\n\nint main ()\n{\nvektor vekt1;\nvektor vekt2;\ndouble faktor;\nvektor ergebnis;\ndouble betrag;\n\nvekt1.x = 0;\nvekt1.y = 0;\n\nint befehl = -1;\n\nwhile(befehl != 0)\n{\nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Menue \" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Vektoren eingeben\t&lt;1>\" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Vektoren addieren\t&lt;2>\" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Vektoren subtrahieren\t&lt;3>\" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Skalarprodukt\t\t&lt;4>\" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Vektorprodukt\t\t&lt;5>\" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Laenge berechnen\t&lt;6>\" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Programm beenden\t&lt;0>\" &lt;&lt; std::endl;\n\nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Ihre Eingabe : \";\nstd::cin >> befehl;\n\n\/\/ Schritt 6 switch-Anweisung\n\nswitch(befehl)\n{\ncase 0: \nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"Programm beenden\" &lt;&lt;std::endl;\nbreak;\n\ncase 1: \nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"Vektor eingeben\" &lt;&lt;std::endl;\nvekt1 = v_einlesen();\nbreak;\n\ncase 2: \nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"Vektor addieren\" &lt;&lt;std::endl;\nstd::cout &lt;&lt; \" 2. Vektor eingeben\" &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"   x: \";\nstd::cin >> vekt2.x;\nstd::cout &lt;&lt; \"   y: \";\nstd::cin >> vekt2.y;\nstd::cout &lt;&lt; std::endl;\n\nergebnis = v_addieren(vekt1, vekt2);\nv_ausgeben(vekt1);\nstd::cout &lt;&lt; \" + \";\nv_ausgeben(vekt2);\nstd::cout &lt;&lt; \" = \";\nv_ausgeben(ergebnis);\nstd::cout &lt;&lt; std::endl;\nbreak;\n\ncase 3: \nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"Vektor subtrahieren\" &lt;&lt;std::endl;\nbreak;\n\ncase 4: \nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"Skalarprodukt\" &lt;&lt;std::endl;\nbreak;\n\ncase 5: \nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"Vektorprodukt\" &lt;&lt;std::endl;\nbreak;\n\ncase 6: \nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \"Laenge des Vektors\" &lt;&lt;std::endl;\nbreak;\n\ndefault:\nstd::cout &lt;&lt; std::endl;\nstd::cout &lt;&lt; \" Ungueltige Eingabe\" &lt;&lt; std::endl;\nbreak;\n\n} \/\/ Ende der switch-Anweisung\n\n\/\/ Schritt 7: Warten bis Anwender die Return-Taste dr\u00fcckt\nfflush(stdin);\ngetchar();\n} \/\/ Ende der while-Schleife\n\nreturn 0;\n}\n<\/code><\/pre>\n\n\n\n<p>Der Code ist zwar noch nicht vollst\u00e4ndig und muss in der switch-Anweisung noch erg\u00e4nzt werden, doch trotzdem sollte der Code bereits lauff\u00e4hig sein.<\/p>\n\n\n\n<p>Viel wichtiger an diesem Code ist aber: Das Programm k\u00f6nnte die Grundlage f\u00fcr viele kleine eigene Codes sein, bei denen sich das Terminal nicht automatisch schlie\u00dft.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wir lernen jetzt Strukturen in C++ kennen und dieser Artikel zeigt ein erstes kleines Beispiel. Es wird aber auch das Vektorprogramm weiterentwickelt&#8230;<\/p>\n","protected":false},"author":1,"featured_media":543,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33],"tags":[32],"class_list":["post-2722","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-coding-club","tag-coding-club-peine"],"_links":{"self":[{"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/posts\/2722","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/comments?post=2722"}],"version-history":[{"count":2,"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/posts\/2722\/revisions"}],"predecessor-version":[{"id":2912,"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/posts\/2722\/revisions\/2912"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/media\/543"}],"wp:attachment":[{"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/media?parent=2722"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/categories?post=2722"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fuhselab.de\/index.php\/wp-json\/wp\/v2\/tags?post=2722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}