Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Mein Problem ist das ich den Algorithmus der hinter den 2 For-Schleifen steckt nicht verstehe. Hoffe ich konnte mich besser ausdrücken

Zur Definition

struct EINGAENGE

{

	char	Pin[5];

	char	Bezeichnung[10];

	int		Anzahl;

	bool	TextDarstellen;


};
EINGAENGE *PosZeiger;

				PosZeiger = (EINGAENGE *) GlobalLock(Beschriftung.Eingaenge);


			// Minimum bestimmen

			for (int i = 1; i <= (*(PosZeiger)).Anzahl; i++)

				if ((*(PosZeiger + i)).Anzahl < min)

					min = (*(PosZeiger + i)).Anzahl;			


			//Wert zwischen min  finden

			for (int i = 1; i <= (*(PosZeiger)).Anzahl; i++)							

				if ((*(PosZeiger + i)).Anzahl == min)

					break;						


			if (i > (*(PosZeiger)).Anzahl)

				i = (*(PosZeiger)).Anzahl;

Kann mir jemand weiter helfen

Geschrieben

Möglicherweise wird es klarer, wenn du (*(PosZeiger)) durch PosZeiger[0] und (*(PosZeiger + i)) durch PosZeiger ersetzt. Diese Zeigerarithmetikschreibweise trägt IHMO nicht gerade zum Verständnis bei.

Geschrieben

Danke für eure Hilfe, aber ich habe immer novh Probleme den Algorithmus zu verstehen. Ich habe mal die Werte die der Debugger anzeigt aufgeschrieben (siehe Bild). Bis zu 16 Bausteinen werden die Werte in der roten Umrandung angezeigt. Beim 17. Baustein werden die Werte in grün angezeigt und die Bezeichnung wird wieder auf 1 gesetzt. Nur warum? Wie erkennt er das? Das ist der Knackpunkt, den ich bei seinen 2 Schleifen nicht erkenne.

http://www.bilder-hosting.de/show/5085C.html

Bild durch Link ersetzt [Klotzkopp]

Geschrieben

Baustein? Zeichenfenster? Bezeichnung? Wovon redest du? Was hat das mit dem Algorithmus zu tun?

Der Algorithmus nimmt den Anzahl-Wert des ersten EINGAENGE-Elements, und sucht in genau so vielen nachfolgenden Einträgen den kleinsten Anzahl-Wert, der kleiner ist als die Vorbelegung von min (die du nicht gezeigt hast).

Danach setzt er i auf den Index des ersten Eintrags, der diesen kleinsten Wert als Anzahl hat, oder eben auf den letzten, falls es keinen gab, der kleiner als die Vorbelegung von min war (das macht die letzte if-Anweisung).

Geschrieben
Ist das ein Bob-der-Baumeister-Programm? :D

@Klotzkopp: Es muß Euch eine Ehre sein im Plural angesprochen zu werden (Euer Durchlaucht)

nein nein es ist kein Bob-der-Baumeister-Programm? :D

sondern es ist ein Programm zum Programmieren von SPS´en ist, das aus Schaltlogiken Srukturierten Text macht.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...