 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
zwiety
Anmeldungsdatum: 31.01.2012 Beiträge: 2
|
Verfasst am: 31.01.2012, 14:34 Titel: Rechtecke anhand zwei Punkten in einer Liste speichern |
|
|
Hallo
ich habe mal eine Frage. Ich muss gerade meine Diplomarbeit im Bereich Mathematik schreiben und soll meine Algorithmen mit Basic programmieren.
Leider finde ich mich nicht ganz zurecht.
Also ich würde gerne eine Liste erstellen, in der ich immer die Rechtecke die ich erzeuge und dessen Flächeninhalt größer ist als ein gegebener speichere und zwar mittels des oberen linken und des unteren rechten Eckpunktes, da ich dann jeweils in der nächsten Iteration das Rechteck mit dem kleinsten Flächeninhalt zerlegen möchte.
Die zerlegung ist kein Problem, aber das Problem ist, dass ich die Rechtecke nicht speichern kann und somit nicht alle berechnen kann.
Kann mir da vielleicht jemand helfen wie das gehen könnte?
LG zwiety |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 31.01.2012, 15:14 Titel: |
|
|
benutz einen BASIC dialekt für dens vernünftige libraries gibt, sowas wie visual basic. Alles andere macht dir nur wesentlich mehr arbeit und Probleme als dir lieb ist. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
zwiety
Anmeldungsdatum: 31.01.2012 Beiträge: 2
|
Verfasst am: 31.01.2012, 15:27 Titel: |
|
|
ok dann werde ich das darin mal versuchen. geht es dort denn leichter solche elemente zu speichern? |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 31.01.2012, 15:41 Titel: |
|
|
da gibts vermutlich nen fertigen type für rechtecke und fertige (funktionierende) implementierungen von listen um die dinger zu speichern.
Du kannst halt hingehen und schreibst dir deinen eigenen
TYPE Rechteck
x1 AS INTEGER
y1 AS INTEGER
x2 AS INTEGER
y2 AS INTEGER
END TYPE
und dann entweder deine eigene liste programmieren oder halt hinnehmen dass du nur auf einem funktionierenden bein läuftst und stattdessen einfach ein
DIM rechtecke(1000) AS Rechteck
(oder so ähnlich, kann kein basic mehr^^) array mit 1000 einträgen nehmen und dir in ne extra zahl speichern die ersten N die dudavon auch wirklich schon belegt hast..
aber letzendlich kommst du wesentlich bequemer und mit weniger arbeit bei raus wenn du ne sprache benutzt wo's passende datenstrukturen bereits fertig implementiert und etabliert und damit auch fehlerfrei schon gibt statt dass du das rad neu erfindest.
FreeBASIC und QBasic sind keine Sprachen die man auf Diplom-Niveau noch benutzen sollte, auch nicht wenn man nur hilfswissenschafltler ist </uni-insider>  _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 31.01.2012, 16:22 Titel: |
|
|
MisterD hat Folgendes geschrieben: | FreeBASIC [...] keine Sprachen die man auf Diplom-Niveau noch benutzen sollte, auch nicht wenn man nur hilfswissenschafltler ist </uni-insider>  |
[zurücktroll]
Normalerweise trifft man ja eine "problemadäquate" Technologie-Auswahlentscheidung nach einem ganzen Kriterienkatalog. Dass Sprachen oder andere Entwicklungswerkzeuge aus ideologischen Gründen per se "pfui" sind ("OMG, Ketzerei!"), naja... - Argumentativ-abwägend ist imho jedenfalls etwas anderes.
[/zurücktroll]
Aber ja, ich geb dir natürlich auch Recht: FreeBASIC bietet leider viele Sprachkonstrukte nicht serienmäßig an. Eine verkettete Liste muss man hier zu Fuß entwickeln ("schön low-level" mit Pointern, mit Memleak-Gefahr bei falscher Implementierung, ...), während man bspw. in Java einfach direkt eine LinkedList<Rechteck>() erzeugen kann. Und ja, Java ist auch bei uns die Lehrsprache.
Aaaaber ...
zwiety hat Folgendes geschrieben: | soll meine Algorithmen mit Basic programmieren. |
... da explizit die Anforderungen besteht, in BASIC zu entwickeln, ist FreeBASIC meiner Meinung nach trotzdem nicht aus dem Rennen - im Gegenteil. Während VisualBASIC proprietär ist und nur unter Windows lauffähig ist, ist FreeBASIC frei verfügbare Open-Source-Software und steht für verschiedene Betriebssysteme zur Verfügung. _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 31.01.2012, 20:54 Titel: |
|
|
das </uni-insider> bezog sich auf die bezeichnung der mathematiker als hilfswissenschaftler, nicht auf die aussage dass freebasic auf uni-niveau untauglich ist. Das war keineswegs als Trolling gedacht sondern pur ernst gemeint.
Du hast recht dass man da keine ideologischen gründe als grundlage nutzt. aber es ist dummerweise nunmal einfach so dass freebasic für alles was nicht ein jugendlicher bis junger erwachsener ist, der halbherzig mal grade ein spiel schnell zusammentippen will, einfach so gut wie immer die falsche sprache ist.
Die anforderung in basic zu entwickeln ist halt.. sehr unbequem, aber trotzdem ist Freebasic einfach nicht die richtige sprache für sowas, weil basic eben einfach 20 jahre veralteter programmierstandard ist. Das einzige was rechtfertigt, visual basic zu benutzen, ist dass es nach wie vor in industrie-tauglichem zustand gehalten wird und dort auch weiträumig benutzt wird. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 31.01.2012, 20:58 Titel: |
|
|
Naja, zumindest VB.net schien mir größtenteils wie "C# mit anderen Schlüsselwörtern". Die Unterschiede sind da nicht mehr sooo groß. Wobei ich jetzt auch nicht auswendig weiß, ob da die ganzen Legacy-Schlüsselworte beibeihalten wurden oder ob das alles brav aus .net importiert werden muss. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 31.01.2012, 21:18 Titel: |
|
|
MisterD hat Folgendes geschrieben: | das </uni-insider> bezog sich auf die bezeichnung der mathematiker als hilfswissenschaftler, nicht auf die aussage dass freebasic auf uni-niveau untauglich ist. Das war keineswegs als Trolling gedacht sondern pur ernst gemeint.
Du hast recht dass man da keine ideologischen gründe als grundlage nutzt. aber es ist dummerweise nunmal einfach so dass freebasic für alles was nicht ein jugendlicher bis junger erwachsener ist, der halbherzig mal grade ein spiel schnell zusammentippen will, einfach so gut wie immer die falsche sprache ist.
Die anforderung in basic zu entwickeln ist halt.. sehr unbequem, aber trotzdem ist Freebasic einfach nicht die richtige sprache für sowas, weil basic eben einfach 20 jahre veralteter programmierstandard ist. Das einzige was rechtfertigt, visual basic zu benutzen, ist dass es nach wie vor in industrie-tauglichem zustand gehalten wird und dort auch weiträumig benutzt wird. |
Ich dachte solche Elfenbeinturm-Mentalität wird seit den 68er nicht mehr gepflegt ... _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 31.01.2012, 22:38 Titel: |
|
|
erklär mir als frischblutler mal was genau eine "elfenbeinturm-mentalität" ist ;D
ne im ernst, so im übergang vom uni-ausstieg (schreib grade an meiner master-arbeit) in die wirtschaft, selbst mit modernen sprachen auf halbwegs aktuellem forschungsstand hast du, obwohl du ein gigantisch umfangreiches tool-set an bibliotheken hast - so enorm viel alltags-probleme die in jeder zweiten anwendung bereits von irgendeinem anderen entwickler schonmal gelöst wurde und du bist mehr oder weniger immernoch dazu gezwungen den selben kram nochmal von vorne zu implementieren, das ist einfach von der wirtschaftlichkeit her unter aller sau.
Und wenn ich dann hingehe und das mit dem Funktionsumfang und den Sprachfeatures von FreeBASIC vergleiche, das ist einfach nicht vertretbar um damit irgendwelche projekte umzusetzen. Es gibt nichtmal so ein unglaublich simples ding wie eine Liste? Und wenn du eine haben willst bleibt dir nichts anderes übrig als von hand Pointer zu schieben?
Versuch mal in FreeBASIC ein mittelkleines Datenmodell zu schreiben mit viellecht Kunden, Händlern, Lagerhäusern und Aufträgen, und bild das mal auf ne relationale Datenbank ab sodass du einfach mit einem Methodenaufruf Objekte aus der Datenbank rausholen kannst oder updaten oder sowas, ohne von hand irgendwelche SQL-Zeilen zusammentippen zu müssen. Du kannst deine Implementierung nichtmal richtig Testen weils keine FreeBASIC für FreeBASIC absolut 0 Werkzeuge zur Qualitätssicherung existieren.
In Java? naja. Schreibst eine persistence.xml mit verbindungsinformationen für die Datenbank, schreibst deine Klassen mit den Feldern die sie brauchen, schreibst an die Felder dran @Id, @ManyToOne, packst Hibernate in den ClassPath und bist fertig. Dann schreibste noch schnell deinen JUnit oder TestNG testcase dazu der das ganze ausprobiert obs funktioniert und je nach dem wie viel du debuggen musst bist du damit nach 3 bis 5 stunden fertig. Und selbst das ist eigentlich schon fast wieder veraltetes vorgehen weil du dir heute einfach deine komplette Anwendungsinfrastruktur von Scaffolding-Tools wie SpringRoo zusammenstecken lässt. Dem sagst du nur "Es gibt kunden, die ham vorname nachname und adresse" und der baut dir deine komplette webanwendung mit eingabemasken für die Objekte direkt komplett fertig zusammen damit du dann nurnoch anpassen musst was du nun für deine anwendung speziell anders brauchst.
Natürlich funktioniert das alles nicht immer so husch husch und problemlos, aber du arbeitest so viel effizienter und kannst dich einfach drauf verlassen, dass deine Datenbank-Abbildung für sogar 90% aller nicht-standard anwendungsfälle fehlerfrei funktioniert, ohne dass du zwei sekunden drüber nachdenken musst, wie du nun deine strings am besten escapen kannst oder was du sonst an datenbereinigung einbauen solltest damit dir keiner irgendwelche SQL-Injections unterjubeln kann.
Freiwillig mit FreeBASIC zu arbeiten, obwohl von vorneherein abzusehen ist, dass der Sprache diverse Werkzeuge fehlen die man braucht (in diesem konkreten Fall hier zB die liste), ist ziemlich gleichwertig damit sich selbst ins knie zu schießen. Das mag ok sein wenn du spaß dran hast und das als hobby ohne Zeit- und Gelddruck machst, aber im wirtschaftlichen Umfeld oder als Diplomarbeit ist das nicht vertretbar, egal wie du's drehst. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
Flo aka kleiner_hacker
Anmeldungsdatum: 23.06.2006 Beiträge: 1210
|
Verfasst am: 01.02.2012, 02:14 Titel: |
|
|
MisterD hat Folgendes geschrieben: | erklär mir als frischblutler mal was genau eine "elfenbeinturm-mentalität" ist ;D
|
das wüsst ich allerdings auch gern
MisterD hat Folgendes geschrieben: |
ne im ernst, so im übergang vom uni-ausstieg (schreib grade an meiner master-arbeit) in die wirtschaft, selbst mit modernen sprachen auf halbwegs aktuellem forschungsstand hast du, obwohl du ein gigantisch umfangreiches tool-set an bibliotheken hast - so enorm viel alltags-probleme die in jeder zweiten anwendung bereits von irgendeinem anderen entwickler schonmal gelöst wurde und du bist mehr oder weniger immernoch dazu gezwungen den selben kram nochmal von vorne zu implementieren, das ist einfach von der wirtschaftlichkeit her unter aller sau.
Und wenn ich dann hingehe und das mit dem Funktionsumfang und den Sprachfeatures von FreeBASIC vergleiche, das ist einfach nicht vertretbar um damit irgendwelche projekte umzusetzen. Es gibt nichtmal so ein unglaublich simples ding wie eine Liste? Und wenn du eine haben willst bleibt dir nichts anderes übrig als von hand Pointer zu schieben?
|
grade bei listen gibt bibliotheken für. auch für FB. nur gilt es die halt erstmal zu finden... und ich bin mir sicher, dass die C++-STL oder das Java (iiih, ich mag es einfach nicht)-Äquivalent dazu mächtiger ist.
MisterD hat Folgendes geschrieben: |
Versuch mal in FreeBASIC ein mittelkleines Datenmodell zu schreiben mit viellecht Kunden, Händlern, Lagerhäusern und Aufträgen, und bild das mal auf ne relationale Datenbank ab sodass du einfach mit einem Methodenaufruf Objekte aus der Datenbank rausholen kannst oder updaten oder sowas, ohne von hand irgendwelche SQL-Zeilen zusammentippen zu müssen. Du kannst deine Implementierung nichtmal richtig Testen weils keine FreeBASIC für FreeBASIC absolut 0 Werkzeuge zur Qualitätssicherung existieren.
In Java? naja. Schreibst eine persistence.xml mit verbindungsinformationen für die Datenbank, schreibst deine Klassen mit den Feldern die sie brauchen, schreibst an die Felder dran @Id, @ManyToOne, packst Hibernate in den ClassPath und bist fertig. Dann schreibste noch schnell deinen JUnit oder TestNG testcase dazu der das ganze ausprobiert obs funktioniert und je nach dem wie viel du debuggen musst bist du damit nach 3 bis 5 stunden fertig. Und selbst das ist eigentlich schon fast wieder veraltetes vorgehen weil du dir heute einfach deine komplette Anwendungsinfrastruktur von Scaffolding-Tools wie SpringRoo zusammenstecken lässt. Dem sagst du nur "Es gibt kunden, die ham vorname nachname und adresse" und der baut dir deine komplette webanwendung mit eingabemasken für die Objekte direkt komplett fertig zusammen damit du dann nurnoch anpassen musst was du nun für deine anwendung speziell anders brauchst.
Natürlich funktioniert das alles nicht immer so husch husch und problemlos, aber du arbeitest so viel effizienter und kannst dich einfach drauf verlassen, dass deine Datenbank-Abbildung für sogar 90% aller nicht-standard anwendungsfälle fehlerfrei funktioniert, ohne dass du zwei sekunden drüber nachdenken musst, wie du nun deine strings am besten escapen kannst oder was du sonst an datenbereinigung einbauen solltest damit dir keiner irgendwelche SQL-Injections unterjubeln kann.
Freiwillig mit FreeBASIC zu arbeiten, obwohl von vorneherein abzusehen ist, dass der Sprache diverse Werkzeuge fehlen die man braucht (in diesem konkreten Fall hier zB die liste), ist ziemlich gleichwertig damit sich selbst ins knie zu schießen. Das mag ok sein wenn du spaß dran hast und das als hobby ohne Zeit- und Gelddruck machst, aber im wirtschaftlichen Umfeld oder als Diplomarbeit ist das nicht vertretbar, egal wie du's drehst. |
dem kann ich (leider) nur zustimmen...
Meiner Erfahrung nach taugt FB nur für schnelle graphische Hacks, wie z.B. Proof-of-Concepts für irgendwelche Spline-Algorithmen etc. Ansonsten will ich genausowenig (eigentlich noch weniger) in FreeBASIC ein "großes" Programm schreiben wie in C. Beide sind ähnlich Low-Level, nur gibts für C bedeutend mehr Libs, die _unkompliziert_ benutzt werden können (jaaa, es geht alles mit FB, aber wie groß ist der Aufwand )
FreeBASIC fehlen halt einfach einige Jahrzehnte Entwicklungsgeschichte  _________________ MFG
Flo
Satoru Iwata: Wer Spaß am Spielen hat, fragt nicht nach Grafik.
zum korrekten Verstaendnis meiner Beitraege ist die regelmaessige Wartung des Ironiedetektors unerlaesslich. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 01.02.2012, 10:10 Titel: |
|
|
Flo hat Folgendes geschrieben: | grade bei listen gibt bibliotheken für. auch für FB. |
Allerdings ohne Generics, und Listen ohne Generics machen recht wenig Sinn.
Zitat: | FreeBASIC fehlen halt einfach einige Jahrzehnte Entwicklungsgeschichte |
Bzw es hat mit dem Salat von QB-Schlüsselwörtern eher das falsche Jahrzehnt der BASIC-Entwicklungsgeschichte aufgegriffen.  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 01.02.2012, 10:56 Titel: |
|
|
MisterD und Flo hat Folgendes geschrieben: | erklär mir als frischblutler mal was genau eine "elfenbeinturm-mentalität" ist ;D |
das scheint meinen Verdacht zu bestätigen,
könnt ihr nicht mal selber googlen?
Bedeutungen: http://de.wiktionary.org/wiki/Elfenbeinturm  _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|