Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  Aufgabe für Hobby-Macro-Programmierer

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO
Autor Thema:   Aufgabe für Hobby-Macro-Programmierer (7516 mal gelesen)
seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 27. Feb. 2006 08:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,
ich versuche gerade ein Macro für folgende Aufgabenstellung zu schreiben:
Ich habe eine LTAB mit zwei Spalten. In der ersten Spalte steht die Zeichnungsnummer, in der Zweiten eine Länge L. Die Tabelle kann 1 bis n Zeilen haben (bei meiner Anwendung ca. 20-30). Nun möchte ich eine Länge angeben und das Macro soll mir alle möglichen Kombinationen auswerfen mit denen ich, mit den Längen aus der Tabelle, die von mir gewünschte Länge zusammensetzen kann. Klingt einfach, aber bei den ganzen Schleifen verliert man schnell den Überblick. Eine Formel wird´s hierfür wohl nicht geben?
Muß ich wirklich 50 oder mehr  Schleifen ineinander verschachteln oder gibt´s einen einfacheren Weg?
Für Tipps wäre ich sehr dankbar.
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 27. Feb. 2006 08:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Klingt wie ein Spezialfall des Rucksackproblems,naemlich die "Untermengensumme". Wikipedia gibt dazu einige Hinweise unter http://en.wikipedia.org/wiki/Subset_sum_problem (einen deutschen Eintrag gibt es auch, aber der ist recht knapp). Googlen nach "Untermengensumme" oder der englischen Entsprechung "subset sum" wird Dich hoffentlich zu einem passenden Algorithmus fuehren.

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 27. Feb. 2006 08:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Claus,
hab´s mir durchgelesen und ein bischen gegoogelt. Verstehe nur Bahnhof.
Wäre die Aufgabe einfacher zu lösen, wenn ich sage ich nehmme max. 30 Zeilen und die gesuchten Summen sollen aus max. 5 Zahlen zusammengesetzt werden? Bleibt es dann bei dem Rucksackproblem?
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 27. Feb. 2006 09:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Wenn ich deine Aufgabenstellung richtig verstanden habe, ist es ja "nur" das Untermengensummenproblem, nicht das weiter gefasste Rucksackproblem. Das Rucksackproblem kam anno dunnemals bei uns im Studium vor, und natuerlich habe ich so ziemlich alles darueber vergessen; mit dem Untermengensummenproblem habe ich mich noch nie so genau befasst. Aber das bisschen, was ich im englischen Wikipedia-Artikel dazu gelesen habe, deutete meiner Meinung nach darauf hin, dass das Problem ganz schon mal einfacher wird, wenn die gewuenschte Summe GENAU erreicht werden soll, was ja bei Dir der Fall ist.

Generell kannst Du die theoretischen Vorarbeiten und existierenden Algorithmen zum Problem auch einfach ignorieren und nach der Brute-Force-Methode die Summen halt alle ausrechnen. Aber das hast Du ja schon ansatzweise probiert (nehme ich an) und dabei festgestellt, dass das schnell unuebersichtlich wird. Nun ja, vielleicht braucht's halt doch ausnahmsweise etwas mehr als einen Hobbyprogrammierer 

Claus

PS: http://mathworld.wolfram.com/SubsetSumProblem.html  sieht auch nach einer guten Quelle aus.

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

[Diese Nachricht wurde von clausb am 27. Feb. 2006 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Michael Kahle
Mitglied
Programmierer


Sehen Sie sich das Profil von Michael Kahle an!   Senden Sie eine Private Message an Michael Kahle  Schreiben Sie einen Gästebucheintrag für Michael Kahle

Beiträge: 75
Registriert: 10.05.2002

erstellt am: 27. Feb. 2006 12:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Vielleicht gibt es ja sogar noch zusaetzliche Randbedingungen, die
dass ganze Problem weiter vereinfachen?

Wie z.B. dass sich die groesseren Laengen immer aus kleineren
zusammensetzten lassen? Dann wird es mehr zu einem Wechselgeld-Problem?

Vielleicht kannst du noch ein bischen was zum Hintergrund schreiben,
und ob wirklich beliebige Laengen moeglich sind oder nur ganz
bestimmte 'Staffelungen'...

------------------
Viele Gruesse,
Michael

--
Spam goes SPAM@CoCreate.com and spam@postini.com ;-)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Michael Kahle
Mitglied
Programmierer


Sehen Sie sich das Profil von Michael Kahle an!   Senden Sie eine Private Message an Michael Kahle  Schreiben Sie einen Gästebucheintrag für Michael Kahle

Beiträge: 75
Registriert: 10.05.2002

erstellt am: 27. Feb. 2006 12:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Interessant waere auch noch, ob die Standard-Laengen
auch mehrfach verbaut werden duerfen...

------------------
Viele Gruesse,
Michael

--
Spam goes SPAM@CoCreate.com and spam@postini.com ;-)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

Direct Drafting 18.1
Direct Modeling 18.1
ModelManager 18.1
SimufactForming
Win7
HP Z420

erstellt am: 27. Feb. 2006 13:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Matrizenzsb.jpg

 
Hallo,
ich habe mal ein Werkzeug angehängt um das es geht.
Es handelt sich hierbei um eine Matrizenzusammenstellung mit der eine Schraube im Kaltpreßverfahren hergestellt wird. Das Macro brauch ich für die glatten Matrizen im Schaftbereich. Von diesen Matrizen haben wir ca. 2000 Stck. im Magazin liegen. Mit unterschiedlichen Innen-ø und Längen.
Sollte sich die Schraubenlänge ändern, muß ich die Matrizen im Schaftbereich neu zusammensetzen. D.h. der ø-Bereich von ...- bis ... steht fest. Wenn dann noch ca. 30 Matrizen mit unterschiedlichen Längen übrig bleiben geht immer die puzzelei los.
Einzelne Matrizen sind auch mehrfach vorhanden, das sollte in dem Macro jedoch nicht berücksichtigt werden da es sonst zu umfangreich wird.
Ich hoffe das reicht als kurze Erklärung
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 27. Feb. 2006 22:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Unter http://www.scs.ryerson.ca/~ikokkari/ccps209/SubsetSum.java habe ich jetzt ein Java-Programm gefunden (geschrieben von Ilkka Kokkarinen), das wohl in etwa die Aufgabenstellung erfuellt. Ich hab's gerade auch mal nach C# konvertiert und in dieser Version angetestet; sah auf den ersten Blick ganz gut aus. Das Testprogramm erzeugt sich sein Test-Array von Integerzahlen gleich selbst, und zwar per Zufallsgenerator (Funktion main()). Hier muss man natuerlich stattdessen die echten Eingabewerte substituieren.

Wenn ich Dich recht verstanden habe, soll die fertige Loesung in der OSDD-Makrosprache verfasst sein. Fuer eine solche Uebersetzung bin ich aber eher der Falsche, da waeren die OSDD-Makroprofis im Forum gefragt.

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 28. Feb. 2006 07:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Claus
Zitat:
Unter http://www.scs.ryerson.ca/~ikokkari/ccps209/SubsetSum.java habe ich jetzt ein Java-Programm gefunden (geschrieben von Ilkka Kokkarinen), das wohl in etwa die Aufgabenstellung erfuellt. Ich hab's gerade auch mal nach C# konvertiert und in dieser Version angetestet

Klingt gut, kann ich das auch irgendwie testen? Habe von Java und C# keinen blassen Schimmer. Vielleicht gibt es ja auch eine Excel-Lösung.

Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 28. Feb. 2006 08:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von seistandhaft:
Klingt gut, kann ich das auch irgendwie testen? Habe von Java und C# keinen blassen Schimmer. Vielleicht gibt es ja auch eine Excel-Lösung.

Um den Code zu testen, uebersetze ihn mit einem Java-Compiler und lasse ihn laufen. Die Umsetzung nach C# und/oder nach VB.NET und dann nach VBA (Excel) ist nicht so schwer, aber wenigstens eine dieser Sprachen sollte man einigermassen verstehen.

Offenbar gehoert der Code zu einer Vorlesungsreihe (http://www.scs.ryerson.ca/~ikokkari/ccps209.htm). Bevor man also irgendwas damit macht, muesste zunaechst einmal geklaert werden, ob man ihn ueberhaupt frei verwenden darf.

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 28. Feb. 2006 08:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Amuesant: Offenbar laeuft in Frankreich bereits seit Jahrzehnten eine Quizshow namens "Des Chiffres et Des Lettres", in der eine Variante des Untermengensummenproblems als Spiel vorkommt ("le compte est bon").

Unter http://docvb.free.fr/prog/vbscript.php gibt es eine Umsetzung des Spiels in VBscript (tut nur in Internet Explorer).

  Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 28. Feb. 2006 11:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Taete es vielleicht auch eine Implementierung in Lisp?

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 28. Feb. 2006 11:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Claus,
es sollte schon ein OSDD-Macro werden. Die Zeichnung zu den Längen ist als Parametrikzeichnung hinterlegt und wird direkt als Einzelteil in den Zusammenbau geladen. Der SolidDesigner wird bei uns eher selten eingesetzt (leider).
Gruß
Jörg
Muß jetzt los, hab ´nen halben Tag Urlaub.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 28. Feb. 2006 12:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von seistandhaft:
es sollte schon ein OSDD-Macro werden.

Hmmm... wieso haette es dann auch eine Excel-Version getan?

  Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 01. Mrz. 2006 07:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Morgen Claus,
Ein OSDD-Macro wäre natürlich optimal, da ich es mit unserem Parametrik-Macro verknüpfen könnte. Ein Excel-Macro wäre i.O., da ich auch auf Nicht-CAD-Rechnern die Werkzeuge zusammenstellen könnte. Dann müsste die cls-Datei natürlich immer auf den neuesten Stand sein. Für ein LISP-Macro müsste ich den SolidDesigner starten. Da wir nur eine Wechsel-Licens haben wäre diese nicht immer verfügbar.
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 01. Mrz. 2006 08:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Um Lisp-Code wie den fuer so einen Algorithmus auszufuehren, reicht im Prinzip jede beliebige Implementierung von Common Lisp, OSDM wird in diesem Fall dazu nicht unbedingt gebraucht. Lisp-Implementierungen gibt es zuhauf, sowohl kommerzielle als auch freie. Ein Beispiel fuer eine Open-Source-Implementierung ist CLISP ( http://clisp.cons.org/ ).

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 01. Mrz. 2006 08:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
mit LISP habe ich mich bis jetzt noch nicht befasst. Darum habe ich auch keine Ahnung wovon du sprichst.
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 01. Mrz. 2006 08:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von seistandhaft:
Hallo,
mit LISP habe ich mich bis jetzt noch nicht befasst. Darum habe ich auch keine Ahnung wovon du sprichst.
Jörg

Hmmm.... war das so schwierig? Also nochmal: OSDM beinhaltet zwar einen Lisp-Compiler und Lisp-Interpreter und kann daher benutzt werden, um Lisp-Code auszufuehren. Es gibt aber da draussen beliebig viele Lisp-Interpreter, viele davon sogar frei, und die kann man genausogut verwenden, um Lisp-Code auszufuehren, jedenfalls solange er keine Funktionalitaet verwendet, die OSDM-spezifisch ist. Das waere bei einem Algorithmus fuer das Untermengenproblem der Fall; dafuer braucht man nichts OSDM-spezifisches.

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cartoonhero
Mitglied



Sehen Sie sich das Profil von cartoonhero an!   Senden Sie eine Private Message an cartoonhero  Schreiben Sie einen Gästebucheintrag für cartoonhero

Beiträge: 245
Registriert: 21.04.2004

erstellt am: 01. Mrz. 2006 09:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Hallo zusammen,

werden alle möglichen Kombinationen gebraucht, oder würde eine (die erste) passende reichen ...

damit wäre der Rechenaufwand in vielen Fällen zu minimieren ...

und um die verschachtelten Schleifen zu umgehen würde ich eine Endrekursion vorschlagen ... Abbruchbedingung: "passendes Ergebnis gefunden oder alle Kombinationen erfolglos geprüft"

bei 20 - 30 Zeilen sollte die Laufzeit auch mit exponentiellem Ansatz im Rahmen bleiben.

allerdings weiss ich nicht ob das in excel/vba bzw. osdd möglich ist.

... und mehrfach vorhandene Matrizen könnte man durch mehrfach Einträge in der Liste berücksichtigen ... allerdings steigt dabei die Laufzeit.

Gruss
cartoonhero

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

Direct Drafting 18.1
Direct Modeling 18.1
ModelManager 18.1
SimufactForming
Win7
HP Z420

erstellt am: 01. Mrz. 2006 09:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

D.h. wenn ich mir einen Lisp-Interpreter herunterladen würde, könnte ich ein Lisp-Macro starten?

Zitat:
Taete es vielleicht auch eine Implementierung in Lisp?

Wäre das ohne viel Aufwand möglich? Was würde das Macro machen?

Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 01. Mrz. 2006 09:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
es müssten alle möglichen Kombinationen berechnet werden, da ich danach anhand der zugehörigen Durchmesser die optimale Werkzeugzusammensetzung aussuchen muss. Da die Längenunterschiede aber relativ groß sind gehe ich von nicht mehr als max. 10 passenden Kombinationen aus. Matrizen die mehrfach vorhanden sind, sind in der Datenbank nicht hinterlegt, sollten somit auch nicht berücksichtigt werden.
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 01. Mrz. 2006 10:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von seistandhaft:
D.h. wenn ich mir einen Lisp-Interpreter herunterladen würde, könnte ich ein Lisp-Macro starten?

Genau so ist das.

Ich konnte mich dann doch nicht beherrschen und habe ein bisschen herumgelispelt. Das Ergebnis gibt es jetzt in meinem Software-Blog: Siehe http://www.clausbrod.de/Blog/BlogOnSoftware .

Ich habe fuer meine Tests CLISP verwendet ( http://clisp.cons.org ). Prima Lisp-Implementierung, Open Source, beinhaltet einen Compiler.

Viel Erfolg!

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 01. Mrz. 2006 12:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo CLAUS,

Welchen CLISP muß ich mir für Windows XP runterladen?

Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 01. Mrz. 2006 13:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Naja, die Version fuer Windows eben (also das Paket mit "win32" im Namen).

Es gibt auch noch eine Version, die fuer die Cygwin-Umgebung ( http://www.cygwin.com ) gedacht ist und im Zusammenspiel mit Cygwin auch unter Windows laeuft. Wuerde ich aber nur verwenden, wenn Du ohnehin schon Cygwin einsetzt.

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 01. Mrz. 2006 15:01    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

So, CLISP habe ich jetzt installiert. Habe jedoch keine Ahnung, wie ich damit ein LISP-Macro starte.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

Direct Drafting 18.1
Direct Modeling 18.1
ModelManager 18.1
SimufactForming
Win7
HP Z420

erstellt am: 09. Mrz. 2006 11:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
so wie es aussieht gibt es wohl keine einfachere Lösung für meine Aufgabenstellung. Dann werd ich mich mal ranmachen Schleife für Schleife zu programmieren.
Danke für die Mühe, die mich jedoch nicht weitergebracht hat.
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 09. Mrz. 2006 12:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von seistandhaft:
So, CLISP habe ich jetzt installiert. Habe jedoch keine Ahnung, wie ich damit ein LISP-Macro starte.

Ziemlich genauso wie in OSDM auch. Unter der Annahme, dass Du meinen Untermengensummen-Code in eine Datei namens subsetsum.lsp abspeicherst, kannst Du ihn wie folgt testen:


  • clisp.exe starten
  • (load "/wo/auch/immer/subsetsum.lsp")
  • (subset-sum-test 15)

Wenn Du aber schon daran scheiterst, sieht es wirklich so aus, dass Du auch die Aufgabe, den vorgefertigten Code an Deine konkreten Beduerfnisse (sprich: Eingabedaten) anzupassen, nicht bewaeltigen wirst.

Es gibt aber allenthalben sehr gute Einfuehrungen in Lisp und ins Programmieren allgemein. Mit der IKIT-Dokumentation liefern wir beispielsweise "The ME Macro Programmer's Introduction to Lisp" aus (siehe auch http://www.xandorra.com/doc/13/osdm/integration_kit/contrib/me2lisp.html  ). Das ist fuer jemanden, der schon ein paar OSDD-Makros gesehen hat, ein relativ schmerzfreier Weg, sich mit Lisp anzufreunden.

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

[Diese Nachricht wurde von clausb am 09. Mrz. 2006 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 09. Mrz. 2006 13:01    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Claus,
LISP-Macro läuft, erkenne auch was es tut, kriege es aber nicht hin es anzupassen. Um mich in LISP einzuarbeiten fehlt die Zeit. Für "The ME Macro Programmer's Introduction to Lisp" müsste ich wohl erst einmal Englisch-Untericht nehmen. Also werde ich wohl bei dem OSSD-Macro bleiben und Schleife für Schleife zu programmieren.
Trotzdem Danke für deine Mühe
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 09. Mrz. 2006 13:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Wo ein Wille ist, ist auch ein Weg. Deutsche Einfuehrungen gibt es ebenfalls zuhauf. Beispiele:

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 13. Mrz. 2006 21:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von seistandhaft:
Also werde ich wohl bei dem OSSD-Macro bleiben und Schleife für Schleife zu programmieren.

In der Tat, Schleife fuer Schleife, denn aus meiner rekursiven Loesung muesstest Du fuer die OSDD-Makrosprache wegen deren Beschraenkungen erst eine iterative Loesung machen. Moeglicherweise nicht so ganz einfach.

Oder aber Du schaust mal unter http://www.clausbrod.de/Osdm/MacroSubsetSum nach und laesst Dich ueberraschen...

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 14. Mrz. 2006 09:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


SubsetSum.zip

 
Hallo Claus,
habe mir das VBA-Macro angeschaut und getestet. Ich würde es natürlich gerne mit einer aus unserer Datenbank erstellten Excel-Liste testen und habe deshalb mal eine Beispielliste angehängt. Vielleich gibt es ja hier auch einige Excel-/VBA-Spezialisten die mir da weiterhelfen können. In der 1. Spalte steht die Zeichnungsnummer, in der 2. der Werkzeugaussendurchmesser, in der 3. und 4. der Bohrungsdurchmesser und in der 5. die Länge.
Oder sollte ich mit der Aufgabenstellung gleich ins Excel-Forum gehen?
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 14. Mrz. 2006 09:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Welche der Spalten die richtige ist, um in das Feld 'numbers' in meinem Code ueberfuehrt zu werden, das musst Du schon selbst wissen. Sobald Du es weisst, musst Du die betreffende Spalte nur noch auslesen.

Diesen Teil Deiner Hausaufgaben ueberlasse ich aber gerne Dir selbst 

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 14. Mrz. 2006 12:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Dazu müsste ich mich aber VBA auskennen, was jedoch nicht der Fall ist.
Habe schon 2 Stunden im Internet gestöbert, aber keine Anleitung gefunden wie man Excel mit VBA-Macros verbindet oder Daten übergibt.
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 14. Mrz. 2006 12:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Nichts fuer ungut, aber diese Information kann man in 20 Sekunden finden. Beispiel: http://www.excel-inside.de/vba/101_zellen_bereiche/101073.htm

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 14. Mrz. 2006 13:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Auf dieser Seite war ich auch und habe mir einige macros angeschaut. Aber was nützt es mir wenn ich nicht einmal weiß was ich in excel eingeben muß um das macro zu starten und ob ich dein macro richtig eingebunden habe. Ich habe heute zum erstenmal den VBA-Editor gestartet und weiß nicht wie er funktioniert. Auch für Excel bin ich kein Fachmann.
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 14. Mrz. 2006 13:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Ein bisschen wirst Du auch selbst mitarbeiten muessen. Immerhin hast Du Dir ja schon die Problemanalyse gespart, und Beispielcode in mehreren Sprachen hast Du nun auch von mir bekommen. Alles in allem war ich damit zwei Tage beschaeftigt - jemandem auch noch von der Pike auf das Programmieren beizubringen, dafuer reicht mein Zeitbudget nicht, sorry.

Aber es gibt ja zum Glueck genuegend andere Wege, um sich die paar Handgriffe anzueignen: Buecher, Kurse, Tutorien, allerlei Websites, Foren. Vielleicht gibt es ja im VBA-Forum Leute, die Dir auch die letzten fehlenden Handgriffe abnehmen koennen und wollen. Ob das ratsam ist, ist eine andere Frage: Immerhin wirst Du den Code vermutlich fuer Eure Firma pflegen muessen; dafuer sollte man ihn auch einigermassen verstehen. Aber vielleicht gibt es ja auch in Eurer Firma Leute, die programmieren koennen?

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 14. Mrz. 2006 14:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Und genau das ist der Grund, warum ich ein OSDD-Macro schreiben wollte. Da hat mann ein wenig Ahnung. Natürlich würde ich mich auch gerne mit VBA befassen aber da ist halt die fehlende Zeit. Mal sehen ob ich Zuhause dazu komme. Wäre ja Schade wenn deine Bemühungen umsonst gewesen wären.
Also nochmals Vielen Dank Claus
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 14. Mrz. 2006 16:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von seistandhaft:
Und genau das ist der Grund, warum ich ein OSDD-Macro schreiben wollte.

Geht aber wegen der Limitationen der OSDD-Makrosprache vermutlich nur dann, wenn Du in der Lage waerest, meine Loesung von einer rekursiven in eine iterative Loesung zu verwandeln. Wozu es dann wieder allgemeine Erfahrung mit Algorithmen und mit dem Programmieren braucht.

Wie Du Dich also drehst und wendest, wirst Du halt was lernen muessen!

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

H.annes
Mitglied
CAD-Pfriemler


Sehen Sie sich das Profil von H.annes an!   Senden Sie eine Private Message an H.annes  Schreiben Sie einen Gästebucheintrag für H.annes

Beiträge: 482
Registriert: 02.07.2001

OSDD 8.7 - 13.20 ; OSDM 13.00

erstellt am: 15. Mrz. 2006 07:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Morgen!

Interessant ist, dass Rekursion im Makro prinzipiell funktioniert - bzw. funktioniert hat.
Irgendwann tritt halt ein "Makro-Stapelregisterüberlauf" auf.

Das Blöde dran ist, dass dieses Stapelregister ab der Version 13 mit 2500 begrenzt wurde - warum auch immer.

Probiert mal diese Sequenz in OSDD 14, 13 und 12 aus:

Code:
LET Ii 0

DEFINE Rekursiv
  LET Ii (Ii+1)
  DISPLAY_NO_WAIT Ii Rekursiv
END_DEFINE

Rekursiv


In OSDD 13 & 14 ist bei genau 2499 Schluss, in OSDD 12 hab ich das Makro bei 5000000 abgebrochen.
Damit werden rekursive Makros ab der Version 13 praktisch verhindert.
Schade!

Hannes

------------------
schön langsam.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 15. Mrz. 2006 09:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Interessante Beobachtung!

Man betrachte aber nun folgendes Makro:

Code:

DEFINE Foo
  PARAMETER N
  DISPLAY_NO_WAIT N
  IF (N>0)
    Foo (N-1)
  END_IF
END_DEFINE

In OSDD 11.6 ist bei etwa 'Foo 1250' Schicht im Schacht. In aktuellen Versionen kommt man so etwa bis 'Foo 832'.

Das ist zwar immer noch ein Unterschied, aber nicht mehr ein so prinzipiell erscheinender wie bei Deinem Makro.

Unterschiede zwischen unseren Makros: Ich verwende Uebergabeparameter und ein IF. Beides koennte Einfluss auf die Stapeltiefe haben. Ich werde mich mal intern schlau machen, was es damit auf sich hat.

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 15. Mrz. 2006 22:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von H.annes:
Das Blöde dran ist, dass dieses Stapelregister ab der Version 13 mit 2500 begrenzt wurde - warum auch immer.

Ich habe nachgehakt - die maximale Stapeltiefe hat sich nicht geaendert; die war schon frueher begrenzt. Was sich eventuell geaendert hat, ist die Art, wie der Stapel beim Ablauf von Makros verwendet wird. Offenbar verbrauchen bestimmte Operationen inzwischen also mehr Speicher auf dem Stapel als frueher. Details weiss ich noch nicht.

Die Nachforschungen haben mich dann noch einmal inspiriert, mich mit der Makrosprache zu beschaeftigen. Das Ergebnis ist nun unter http://www.clausbrod.de/Osdm/MacroSubsetSum zu begutachten. Vielleicht kann seistandhaft damit ja nun etwas anfangen... 

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 16. Mrz. 2006 07:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von clausb:
Das Ergebnis ist nun unter http://www.clausbrod.de/Osdm/MacroSubsetSum  zu begutachten. Vielleicht kann seistandhaft damit ja nun etwas anfangen...   

In der ersten Version, die bis gerade eben (etwa 7:20 Uhr) auf meiner Website stand, war noch ein Fehler, den ich gerade korrigiert habe; er fuehrte dazu, dass Ergebnisse mehrfach ausgegeben wurden. Falls sich also jemand den Code bereits vorher geholt haben sollte, dann sollte er das jetzt nochmal tun.

Claus


------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

[Diese Nachricht wurde von clausb am 16. Mrz. 2006 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

seistandhaft
Mitglied
Zeichner, Konstr., Admin.


Sehen Sie sich das Profil von seistandhaft an!   Senden Sie eine Private Message an seistandhaft  Schreiben Sie einen Gästebucheintrag für seistandhaft

Beiträge: 192
Registriert: 20.08.2004

erstellt am: 16. Mrz. 2006 12:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Claus,
habe gerade Dein OSDD-Macro mit aktuellen Daten aus unserer Datenbank gefüttert. 21 Zeilen mit Werten von 1,5 bis 114. Als Target habe ich 150 eingeben. Habe mit ca. 5-6 passenden Kombinationen gerechnet. Gefunden wurden jedoch 16 mögliche Kombinationen. Das ist einfach SUUUPER. Ich möchte Dir hiermit noch mal recht herzlich für Deine Mühe danken.
Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 16. Mrz. 2006 13:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Freut mich, dass der Code nun Anwendung findet!

Was ich noch anmerken wollte: Mein Beispielcode geht von ganzzahligen Werten aus. Bei Fliesskommawerten, wie sie in Deinem konkreten Beispiel vorkommen, sollte man mit Epsilontik arbeiten, um nicht gueltige Loesungen zu verpassen. Naeheres dazu beispielsweise unter http://www.clausbrod.de/Osdm/OsdmFaqLisp#RoundingErrors .

Beispiel fuer eine Anpassung: Statt "IF Target == 0" schreibt man bei Fliesskommazahlen besser "IF (ABS(Target) < Epsilon)", wobei "Epsilon" ein kleiner, nach der gewuenschten Genauigkeit gewaehlter Wert ist, also beispielsweise 0.001. Es kommen noch ein paar weitere Vergleiche im Code vor, die sinngemaess angepasst werden sollten.

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2905
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 17. Mrz. 2006 12:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von H.annes:

Code:
LET Ii 0

DEFINE Rekursiv
  LET Ii (Ii+1)
  DISPLAY_NO_WAIT Ii Rekursiv
END_DEFINE

Rekursiv


In OSDD 13 & 14 ist bei genau 2499 Schluss


Ich habe das uebrigens weitergegeben, und siehe da, es stellte sich heraus, dass das nicht von einer prinzipiellen Umstellung herruehrt, sondern schlicht von einem Fehler, der ab OSDD 2005 zuschlaegt. Danke nochmals fuer die Meldung und das Codebeispiel!

Claus

------------------
OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

H.annes
Mitglied
CAD-Pfriemler


Sehen Sie sich das Profil von H.annes an!   Senden Sie eine Private Message an H.annes  Schreiben Sie einen Gästebucheintrag für H.annes

Beiträge: 482
Registriert: 02.07.2001

OSDD 8.7 - 13.20 ; OSDM 13.00

erstellt am: 21. Mrz. 2006 14:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für seistandhaft 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von clausb:
Ich habe das uebrigens weitergegeben, und siehe da, es stellte sich heraus, dass das nicht von einer prinzipiellen Umstellung herruehrt, sondern schlicht von einem Fehler, der ab OSDD 2005 zuschlaegt. Danke nochmals fuer die Meldung und das Codebeispiel!

Claus


Vielen Dank!

Dann brauch ich unseren Supporter nicht zu quälen 

Hannes

------------------
schee kloaweis ...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2020 CAD.de | Impressum | Datenschutz