AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Problem mit "Programm" für die Schule
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit "Programm" für die Schule

Ein Thema von just.cause · begonnen am 28. Apr 2009 · letzter Beitrag vom 5. Mai 2009
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von isilive
isilive

Registriert seit: 15. Okt 2008
Ort: Österreich
192 Beiträge
 
Delphi 2009 Professional
 
#11

Re: Problem mit "Programm" für die Schule

  Alt 2. Mai 2009, 21:16
Hab auf diesem Rechner hier kein Rar und kein Delphi. Kannst du den Quelltext direkt hier reinposten bitte?!
Stefan
Jedoch kann die referenzbasierte Implementierung des Standard-Objektmodells in Kombination mit den komplexen syntaktischen Dereferenzierungsregeln bei einer objektorientierten API wie ein Stolperstein wirken.
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Problem mit "Programm" für die Schule

  Alt 2. Mai 2009, 21:16
Bei deiner Anmedlung hast dus das Bestätigt:

Zitat:
2.3.2.3 - Null Bock? Nicht hier.

Mit Fragen, die sich lesen wie "...ich habe weder Ahnung noch Lust, kann mir mal einer mein Programm schreiben..." wirst Du hier nicht auf Gegenliebe stoßen. Wir sind gerne bereit, jedem zu helfen, der selber Engagement zeigt - aber wir machen nicht die Hausaufgaben Anderer.
Zudem ist es unerläßlich, daß Du Dich selber mit dem Problem befasst hast, bevor Du in der Lage bist, dazu eine präzise Frage zu stellen.
Etwas völlig Anderes ist es natürlich, wenn Du (noch) nicht weißt, wonach Du suchen sollst, bzw. wo Du anfangen sollst. Dann frage gerne nach geeigneten Stichworten.

Keiner wird hier für DICH!! ein Programm OHNE Gegenleistung schreiben? Wieso auch?
Aber sicherlich werden dir hier viele Helfen, wenn du die nötige eigeninitiative ergreifst, und z.B.: einfach mal in der DP nach Hier im Forum suchenSound, Hier im Forum suchenTastatur eingaben oder anderen Dingen suchst!

Hast du dazu was gefunden, und kommst damit nicht klar, wird dir hier geholfen!

Und sonnst würde ich dir (euch) raten vllt erstmal nach "Bei Google suchenDelphi Grundlagen" zu suchen, und euch mit den Standarts vertraut zu machen!

mfg Caleb
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#13

Re: Problem mit "Programm" für die Schule

  Alt 2. Mai 2009, 21:36
Desweiteren sagt der Titel nichts über das Problem aus.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#14

Re: Problem mit "Programm" für die Schule

  Alt 2. Mai 2009, 22:27
Eigentlich wollte ich mir das verkneifen, aber da der Thread ja immer wieder hochgepushed wird, kommt es auf das eine mal auch nicht mehr an.

Zitat von just.cause:
nachdem unser eher weniger kompetenter Lehrer
Zitat von just.cause:
Klingt jetzt wahrscheinlich ziemlich faul, aber wir sind echt blutige Anfänger und sind die letzten paar Unterrichtsstunden verzweifelt an dem ganzen Krams und wir wissen einfach nicht mehr so wirklich weiter :-/
Ohne hier behaupten zu wollen, dass Info-Unterricht immer absolut sinnvoll ist. Wie genau stellst du dir vor Kompetenz beurteilen zu können, wenn dir dazu das nötige Wissen fehlt und aus den bisherigen Antworten auch hervorgeht, dass du offensichtlich keine Eigeninitiative zeigst, es dir anzueignen. Weiterhin sollte man mit derartigen Aussagen vorsichtig sein und sie sind zu begründen, ansonsten wirken sie nur wie ein Diffamierungsversuch, um Verantwortung von sich selbst abzuschieben. Wenn du der Meinug bist dein Lehrer kann Wissen nicht vermitteln, dann geh zu ihm, sag ihm das und verhandel wie der Unterricht sinnvoller gestaltet werden könnte.


Zitat von DeddyH:
Na na, TDE ist ja auch nicht schlecht.
Man kann einen Barbier definieren als einen, der alle diejenigen rasiert, und nur diejenigen, die sich nicht selbst rasieren.
Rasiert sich der Barbier?
  Mit Zitat antworten Zitat
just.cause

Registriert seit: 28. Apr 2009
8 Beiträge
 
#15

Re: Problem mit "Programm" für die Schule

  Alt 3. Mai 2009, 14:47
...
Erstens: eine Meinung/Behauptung MUSS man NICHT belegen oder widerlegen, man KANN. Desweiteren muss ich das schon gar nicht in einem Forum tun, wo dies völlig irrelevant zur Klärung eines bestimmten Sachverhaltes ist, wo es keinen Nutzer interessieren sollte, wie, was und wer meine Lehrer sind.
Meine Behauptung, dass der Lehrer inkompetent ist, hat schon so seine Gründe. Und um diese erkennen zu können, muss man kein Fachmann sein. Die Art des Unterrichts und der (vorhandenen?) Vermittlung des Stoffes von Lehrer an Schüler hat meiner Meinung nach in erster Linie nichts mit dem Stoff selbst zu tun. Na klar, wenn er jetzt falsche Fakten, Daten etc. vermitteln würde, würde ich das nicht mitkriegen. Genausowenig kann ich beurteilen, ob seine Herangehensweise an das ganze Thema bzw. die Abfolge seiner Unterthemen sinnvoll ist. Aber ich kann mich zu der Art äußern, wie er versucht, uns das ganze mit seinem durchdachten und guten oder auch schlechten Schema verständlich rüberzubringen. Das verlangt keine Fachkenntnisse.
Und jetzt zu unserer/meiner "nicht vorhandenen" Eigeninitiative:
Wir saßen mindestens schon 10 Unterrichtsstunden an dem "Spiel", haben immer wieder aus eigener Kraft Dinge versucht, bei denen wir am Ende feststellen durften, dass sie unsinnig sind bzw. nicht so funktionieren, wie wir wollen. Natürlich haben wir dann auch andere Leute gefragt, Mitschüler und Lehrer, welche uns dann mehr oder weniger bei kleineren Fehlern helfen konnten. Nur mal ein Beispiel:
Wir haben unseren Lehrer zur Hilfe geholt, um zu schaffen, dass sich die beiden Shapes "berühren" können, also nich einfach durch sich durch flitzen. Er hat es auf uns so erklärt, wie es auch im Programm steht. Später durften wir dann von einem Mitschüler, der sich ganz gut mit Porammierung usw. auskennt, erfahren, dass man das schlauererweise mit dem Radius des Kreises und nach jedem Schritt hätte prüfen müssen. Schon blöd, finde ich. Und Leute, ich habe meine Probleme ausfürhlich geschildert, aber hab ich dazu schon Lösungsansätze gehört? Ich glaube nur einen. Und ohne menschliche Hilfe geht das alles leider nicht so gut, nur Theorie bringt einem Einzelnen dann doch nichts. Soll heißen, dass ich mich schon ausführlicher damit beschäftigt habe (Tuts...)!
Ja ich weiß, muss blöd rüberkommen, wenn ich einfach so frage ob das nicht jemand machen kann, aber erstens ist die Jugend heutzutage faul^^ und zweitens komm ich alleine einfach nicht mehr weiter (mein "Freund" kümmert sich überhaupt nicht um die ganze Sache). Und außerdem, fragen schadet doch nichts, oder? Aber war ja irgendwie klar, dass man dann erstmal solche beiträge um die Ohren gepfeffert bekommt. Was bringts denn? Nichts! Es ist nich produktiv. Anstatt einfach auf die Fragen, Probleme einzugehen und meine Frage "macht das jemand?" zu ignorieren oder kurz und bündig zu sagen "Nein, mach ich nicht"....

MfG


PS: Codekrams folgt gleich!
  Mit Zitat antworten Zitat
just.cause

Registriert seit: 28. Apr 2009
8 Beiträge
 
#16

Re: Problem mit "Programm" für die Schule

  Alt 3. Mai 2009, 14:51
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, jpeg;

type
  TForm1 = class(TForm)
    Shape1: TShape;
    Shape2: TShape;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Image1: TImage;
    procedure keypress(Sender: TObject; var Key: Char);
    procedure FormCreate(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }

  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}



procedure TForm1.keypress(Sender: TObject; var Key: Char);
var d:real;
begin
d:=sqrt((shape1.Left - shape2.Left)*(shape1.Left - shape2.Left)+(shape1.Top - shape2.top)*(shape1.Top - shape2.top));
if (key ='s') and (d>=shape1.width) then shape1.top:=shape1.top +10;
if (key ='w') and (d>=shape1.Width) then shape1.top:=shape1.top -10;
if (key ='d') and (d>=shape1.Height) then shape1.Left:=shape1.Left +10;
if (key ='a') and (d>=shape1.Height) then shape1.left:=shape1.left -10;

label1.Caption:=inttostr(shape1.top);
label2.Caption:=inttostr(shape1.Left);

if (key ='k') and (d>=shape1.width)then shape2.top:=shape2.top +10;
if (key ='i') and (d>=shape1.width)then shape2.top:=shape2.top -10;
if (key ='l') and (d>=shape1.Height)then shape2.Left:=shape2.Left +10;
if (key ='j') and (d>=shape1.Height)then shape2.left:=shape2.left -10;

label3.Caption:=inttostr(shape2.top);
label4.Caption:=inttostr(shape2.Left);

end;



procedure TForm1.FormCreate(Sender: TObject);
var d:real;
begin
d:=sqrt((shape1.Left - shape2.Left)*(shape1.Left - shape2.Left)+(shape1.Top - shape2.top)*(shape1.Top - shape2.top));
if (d>=shape1.width) or (d>=shape1.height) then showmessage ('tagged!');
end;

end.
[edit=mkinzler]Delphi-Tag ergänzt. das nächste Mal bitte selber machen. Mfg, mkinzler[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#17

Re: Problem mit "Programm" für die Schule

  Alt 3. Mai 2009, 14:53
Zitat von just.cause:
PS: Codekrams folgt gleich!
Aber bitte in einem neuen Thread mit einer konkreten Frage und einem aussagekräftigen Titel. Damit hier die Diskussion nicht unnötig weitergeht, mache ich hier dicht.

Mist zu spät.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von thkerkmann
thkerkmann

Registriert seit: 7. Jan 2006
Ort: Pulheim Brauweiler
464 Beiträge
 
Delphi 2010 Professional
 
#18

Re: Problem mit "Programm" für die Schule

  Alt 3. Mai 2009, 18:05
Wir sollten mal die Schärfe rausnehmen, und uns um das Problem kümmern.

Zitat von just.cause:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var d:real;
begin
  d:=sqrt((shape1.Left - shape2.Left)*(shape1.Left - shape2.Left)+(shape1.Top - shape2.top)*(shape1.Top - shape2.top));
  if (d>=shape1.width) or (d>=shape1.height) then showmessage ('tagged!');
end;

end.
Ist so ziemlich unsinnig. Warum solltest Du beim Programmstart auf Kollision prüfen.
Das gehört woanders hin.

Delphi-Quellcode:
procedure TForm1.keypress(Sender: TObject; var Key: Char);
var d:real;
begin
  d:=sqrt((shape1.Left - shape2.Left)*(shape1.Left - shape2.Left)+(shape1.Top - shape2.top)*(shape1.Top - shape2.top));
  if (key ='s') and (d>=shape1.width) then shape1.top:=shape1.top +10;
  if (key ='w') and (d>=shape1.Width) then shape1.top:=shape1.top -10;
  if (key ='d') and (d>=shape1.Height) then shape1.Left:=shape1.Left +10;
  if (key ='a') and (d>=shape1.Height) then shape1.left:=shape1.left -10;

  label1.Caption:=inttostr(shape1.top);
  label2.Caption:=inttostr(shape1.Left);

  if (key ='k') and (d>=shape1.width)then shape2.top:=shape2.top +10;
  if (key ='i') and (d>=shape1.width)then shape2.top:=shape2.top -10;
  if (key ='l') and (d>=shape1.Height)then shape2.Left:=shape2.Left +10;
  if (key ='j') and (d>=shape1.Height)then shape2.left:=shape2.left -10;

  label3.Caption:=inttostr(shape2.top);
  label4.Caption:=inttostr(shape2.Left);

end;
Ist schon sehr schön, aber ich würde das mit einer case Anweisung machen. Ist aber Geschmackssache.

Den Code zur Berechnung des Abstandes würde ich aber in eine Funktion auslagern, da du ihn für die Kollisionsprüfung nochmal brauchst.

also: im private Abschnitt die Funktion deklarieren, und dann im Code Bereich erstellen.

Delphi-Quellcode:
  ...
  private
    function CalcAbstand: real;
  ...

Implementation
  ....

  function TForm1.CalcAbstand: real;
  begin
    result := sqrt((shape1.Left - shape2.Left)*(shape1.Left - shape2.Left)
                 + (shape1.Top - shape2.top)*(shape1.Top - shape2.top));
  end;
jetzt kannst Du die in deiner keypressed prozedur verwenden:

Delphi-Quellcode:
procedure TForm1.keypress(Sender: TObject; var Key: Char);
var d:real;
begin
  d := CalcAbstand;
  ...
end;
und die Kollisionsprüfung gehört an's Ende der keypressed Prozedur erneut hin.
Allerdings ist deine Prüfung genau verkehrt herum.

Delphi-Quellcode:
  ...
  d := CalcAbstand;
  if (d < shape1.width) or (d < shape1.height) then // hier die Bedingung richtig schreiben
    showmessage('tagged!');
end;
Dann sollte es klappen.
Thomas Kerkmann
Ich hab noch einen Koffer in Borland.
http://thomaskerkmann.wordpress.com/
  Mit Zitat antworten Zitat
BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#19

Re: Problem mit "Programm" für die Schule

  Alt 3. Mai 2009, 20:55
Also keine Ahnung was ich da mit irgendwelchen Kugeln machen wollt oder was auch immer. Also wenn ich mich zurück in meine Schulzeit erinnere (auch wenn wir da noch TP 7 hatten) hatten wir auch ne Aufgabe 1 Spiel zu programmieren, dabei geht es eigentlich nicht darum eine neues Spiel zu erfinden, sondern eigentlich die Tätigkeiten auszuüben, die zum Programmieren gehören. Also mein Tip für euch, weil es ja anscheinend schon eng wird, tritt deinem "Kumpel" in den A... und schnappt euch das gute alte Packman. Schafft euch ein zufällig erstelltes Spielfeld (bestehend aus Gold und Minen ( hier solltet ihr ein wenig Gehirnschmalz mal reinstecken für den Punkt: was wenn nur noch Minen da sind) und wann ist ein Level zu Ende).
Die Grundlagen für die Bewegung habt ihr schon, so wie ich das sehe, Punktezählsystem und Lebenssystem und schon seit ihr fertig. Damals habe ich so eins im Textmodus in 10h geschrieben, wir hatten aber auch einen guten Lehrer also plant mal etwas mehr Zeit ein.

Ich denke das sind schon ziemlich gute Tips für dich wie man es machen kann. Ob du es machst k.A. ist auch nicht meine Note und wie es rüber kommt, suchst du noch eine Methode, "wo kann ich abschreiben, ohne dass es auffällt" mit deiner Frage, ob es jemand mal "schnell" machen, anstatt auf die einfachst zu kommen, es selber machen.

MfG
BAMatze
  Mit Zitat antworten Zitat
just.cause

Registriert seit: 28. Apr 2009
8 Beiträge
 
#20

Re: Problem mit "Programm" für die Schule

  Alt 3. Mai 2009, 22:17
Zitat:
Schafft euch ein zufällig erstelltes Spielfeld (bestehend aus Gold und Minen...
Wir sollen eigentlich "Gelerntes" in dieser Aufgabe anwenden. Wie man aber ein Spielfeld erstellt mit irgendwelchen Minen oder Gold, welches man einsammeln kann, kann ich als Anfänger schlecht wissen, außer ich frage nach genau dem Sachverhalt wieder irgendwo nach...
Ich glaube, das Beste wäre, wenn ich jetzt erstmal an meinem "Spiel" dranbleibe. Sich jetzt an etwas komplett Neues ranzusetzen, um das nur halb fertig bzw. halb richtig zu haben am Ende, wäre eher unproduktiv meiner Meinung nach. Da habe ich lieber ein eher simples Programm, welches dafür anständig läuft und fertig ist. Aber trotzdem danke für den Tipp/Denkanstoß

Und jetzt noch einmal zum eigentlichen Thema:
Wollte es eben mal so wie von thkerkmann geschrieben ausprobieren, allerdings gibt Lazarus die Fehlermeldung "Die Datei "" konnte nicht gefunden werden. Überprüfen sie den Suchpfad in Projekt->Compilereinstellungen...->Andere Unitdateien." raus, wenn ich auf das grüne Pfeilchen klicke...
Naa gut, abgesehen davon, hat jemand vielleicht eine sinnvolle Idee, die man auch ohne großen Aufwand und ohne viel Fachwissen, vielleicht mit ein wenig Hilfe von jemandem, mit in das Tickspiel einbauen kann?

MfG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz