Ankündigung

Einklappen
Keine Ankündigung bisher.

Lazarus - Kapitän & Schiffslänge

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Lazarus - Kapitän & Schiffslänge

    Hey guys

    Folgendes Problem :

    Haben in Info die Aufgabe per Lazarus ein "Programm" zu schreiben mit dem man das Alter eines Kapitäns bestimmen kann. Da ich in der letzten Zeit meist mental abwesend war was den Informatikunterricht angeht , und diese Aufgabe meine Note auf dem Endjahreszeugnis bestimmt , brauch ich unbedingt Hilfe.

    Aufgabe :

    Entwerfen und implementieren sie ein Project , das das Alter eines Kapitäns ermittelt , der Söhne und Töchter hat , dessen Schiff eine ganzzahlige Länge besitzt und das Produkt aus einem Alter , Anzahl der Kinder und Schiffslänge 32118 beträgt

    Was ich bis jetzt habe :
    Spoiler: 
    unit Unit1;

    {$mode objfpc}{$H+}

    interface

    uses
    Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
    ExtCtrls;

    type

    { TForm1 }

    TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    procedure Button1Click(Sender: TObject);
    private
    { private declarations }
    public
    { public declarations }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.lfm}

    { TForm1 }

    procedure TForm1.Button1Click(Sender: TObject);
    Var produkt,Alter, Anzahl, Schiff:integer;
    begin

    Schiff:=Strtoint(Edit1.text);
    Anzahl:=Strtoint(Edit2.text);
    for Alter:= 0 to 100 +1 do begin
    produkt:= Alter* Anzahl*Schiff;
    if produkt=32118 then Panel1.Caption:='Der Kapitän ist '+inttostr(Alter)+'Jahre alt.';
    end;


    Panel2.Caption:='Das Schiff ist'+inttostr(Schiff)+' Meter lang.';
    Panel3.Caption:='Der Kapitän hat '+inttostr(Anzahl) +' Kinder.';

    end;
    end.


    Bei google hab ich leider nichts hilfreiches gefunden.

    Hoffe echt hier kann wer helfen

    MFG ;)

    #2
    also erst mal solltest du deine Schleife anders formulieren. du möchtest ja das alter solange erhöhen bis du 32118 erreicht hast. Da ich leider die syntax der sprache nicht kenne folgt nun ein beispiel in psydo code:

    solange alter

    Kommentar


      #3
      vllt als tip: soehne und toechter heisst jeweils mindestens 2 :)
      da eh alles ganzzahlig ist wuerde ich ein programm schreiben
      dass die primfaktorzerlegung von 32118 ausgibt

      also zahl auf prim testen
      wenn 32118 mod p=0: p speichern und neue zahl ist 32118 durch p


      32118, primfaktorzerlegung->2*3*53*101

      ganz strenggenommen muesste man jetzt noch die 2*3
      als 6 zusammenfassen (anzahl der kinder)

      er hat also 6 kinder ist 53 jahre alt und schiff ist 101 meter
      oder er ist 101 und das schiff 53 meter .)

      Kommentar

      Lädt...
      X