Zum Inhalt springen

RB-Softarticle

Mitglieder
  • Gesamte Inhalte

    8
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von RB-Softarticle

  1. Mach es einfach. Das ist doch eine schöne Aufgabe in meinen Augen. Und mach es mit einem Lächeln. Wenn ich beim Bund eine Mistaufgabe machen musste, weil ich mal wieder negativ aufgefallen bin, habe ich den Ausbilder dabei noch angegrinst. Das hat ihm am meisten genervt, obwohl mir der Käse richtig auf die Nerven ging, lass es Dir aber nicht anmerken. „Das ist zu einfach, Drill Sargent“. Und siehe es mal so, sei froh das Du da mal rauskommst. Und wie schon oben gesagt, lass das Ding mal richtig durchgucken. Gruß
  2. Sieht gut aus. Nur als Tipp, schreibe den Code so wie unten, ist Übersichtlicher. Nimm die Klammern runter und gewöhne Dir an, bei einer Schleife die nur eine Befehlszeile hat, die Befehlszeile in Geschweiften-Klammern einzuschließen. #include "stdafx.h" using namespace System; ref struct listenelement { String ^daten; listenelement ^next; }; listenelement ^einfuegen(String ^datenneu, listenelement ^listenende) { listenende->next = gcnew listenelement; listenende = listenende->next; listenende->daten=datenneu; return listenende; } void ausgeben(listenelement ^listenanfang) { listenelement ^hilfsHandle = listenanfang; Console::WriteLine("{0}",hilfsHandle->daten); while (hilfsHandle->next != nullptr) { hilfsHandle = hilfsHandle->next; Console::WriteLine("{0}",hilfsHandle->daten) ; } } int main(array<System::String ^> ^args) { listenelement ^listenanfang = gcnew listenelement; listenelement ^listenende = listenanfang; listenanfang->daten = "Element 0"; for (Int32 schleife=1;schleife<3;schleife++) { listenende = einfuegen("Element "+schleife,listenende); } ausgeben(listenanfang); return 0; }
  3. Moin jugiii, das Listenende übergibst Du ja nach jedem einfügen an die main(). Aber Du übergibst noch immer den Listenanfang als Argument beim einfügen. Und gesht somit durch die ganze Liste, bis hilfsHandle->next != nullptr ist. In next steht der letzte Eintrag, nur so als Tipp. Gruß, René
  4. Warum willst Du da mit der Bank sprechen, was soll Dir die Bank anbieten können? Erkläre bitte mal genau was Du von der Bank erwartest. Ich habe viel Zeit mit OCR verbracht. Damals waren das Rechnungen von Krankenkassen und Krankenhäuser. Dir Rechnungen wurden eingescannt und dann durch die OCR zugeordnet und in einer Datenbank gespeichert. Damit wurden offene Posten ermittelt. Bau doch in den Verwendungszweck eine Rechnungsnummer ein, die z.B. mit RE beginnt, dann suchst Du per OCR nach RE und die Nummer danach ist die Rechungsnummer. Sollte funzen und die Bank kann Dir da bestimmt nicht helfen. In vielen Fällen kannst Du die Kontoauszüge auch als PDF downloaden. Denk mal drüber nach. Gruß René
  5. Hallo Lars M Ich würde Dir C++/CLI empfehlen. Auf sicher ist der Einstieg in C++ alles andere als leicht, aber abgerechnet wird später. Es kommt auch immer darauf an was man machen möchte, aber die Möglichkeiten in VB sind doch eher eingeschränkt, leider. Ich persönlich arbeite mit C++/CLI. Ich gebe Dir mal ein Link zu C++ Open Books. Galileo Computing :: C von A bis Z Ich bin noch nie an die Grenzen von C++ gestoßen. Der Vorteil von C++ 2005 liegt auch klar auf der Hand, man kann managend und unmanagend Code (in ein und dem selben Projekt) schreiben.:uli Wenn Du die Visual C++ 2005 Express Edition noch nicht hast, lade Sie Dir doch bei Microsoft kostenlose runter.:mail Gruß René
  6. Hallo Neuling5 Komm lass uns das Ding jetzt Durchziehen. Glaub mir das ist nicht so schwer. Ich gebe Dir jetzt die Funktion einfügen. Das ist echt nicht schwer, wenn man in die richtige Richtung denkt. //neues Element am Ende der Liste einfügen void einfuegen(String^ datenneu, listenelement^ listenanfang) { //ein Hilfshandle zum Wandern in der Liste listenelement^ hilfsHandle = listenanfang; //ein Hilfshandle zum speichern der vorgänger Adresse listenelement^ previousAddress; //Durch die Liste gehen, bis das letzte Element erreicht ist while (hilfsHandle->next != nullptr) { hilfsHandle = hilfsHandle->next; } //die Aktuelle Adresse im Hilfshandle zwischenspeichern previousAddress = hilfsHandle; //neues Element erstellen hilfsHandle->next = gcnew listenelement; //Hilfshandel auf das neue Element setzen hilfsHandle = hilfsHandle->next; //Die vorgängeradresse im neuen Handle speichern hilfsHandle->previous = previousAddress; //Zeichenkette im neuen Element eintragen hilfsHandle->daten = datenneu; //nullptr wird automatisch zugewiesen! } Wir können den Code gerne durchgehen, dass ist wichtig damit Du weißt was da passiert. Gruß René
  7. Hallo Neuling 5 Ein Handle (Zeiger) das auf das Ende zeigt brauchst Du in diesem Sinne nicht. Da ja das Ende der Liste schon im Handle ->next gespeichert ist. Die Ausgabe ist in diesem Sinne auch recht einfach. Du brauchst nur eine Schleife die vom Ende der Liste zum ->previous geht, bis previous = nullptr hat. Das was sehr wichtig ist... In der Funktion Einfügen, musst Du den previous zuvor speichern dann erst einen neuen Datensatz mit gcnew anlegen und danach den previous im neuen Datensatz speichern. Solltest Du das nicht machen, hast Du einen previous der immer auf sich selber zeigt. Das ist in Deiner Ausgabe gut zusehen. Dann spricht man von einer Rekursion. Gruß René
  8. Wie weit bist Du mit Deiner Liste? Helfe Dir da aufs Pferd. :upps Ich vermisse in Deiner ref struct das Handle auf den vorigen Datensatz. Die ref struct kann so nur eine einfach verkette Liste aufnehmen. ref struct listenelement { String^ daten; listenelement^ next; listenelement^ previous;//Speichert die Vorgängeradresse }; Gruß René

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...