Zum neuen Informatik-Forum >>
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Notenberechnung

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Delphi/Kylix
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
mys



Anmeldungsdatum: 19.03.2005
Beiträge: 21
Wohnort: Nähe Giessen

BeitragVerfasst am: 21. Mai 2005 22:07    Titel: Notenberechnung Antworten mit Zitat

Hallo...

ich hab wiedermal ein Problem:
ich soll mit Delphi ein Programm erstellen, wo man seine erreichten Punkte und die insgesamt zu erreichenden Punkte eingeben kann und dann bekommt man gesagt, wieviel Prozent das sind und welchem Notenpunkt das entspricht...

dass es die Prozentzahl ausrechnet, das hab ich ja schon hinbekommen, jetzt häng ich aber an der Ausgabe der endgültigen Notenpunkte.

Hier mal ein Auszug meines Quelltextes bis jetzt:
Code:
var
  Form1: TForm1;
  punkte1, punkte2: integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
punkte1 := StrToInt(Eingabe1.Text);
punkte2 := StrToInt(Eingabe2.Text);
Ausgabe1.Caption := IntToStr(punkte1 * 100 div punkte2);
end;

procedure ...................;
begin
case ..................... of
0..19 : Ausgabe2.Caption :='0';
20..26 : Ausgabe2.Caption :='1';
27..33 : Ausgabe2.Caption :='2';
34..40 : Ausgabe2.Caption :='3';
41..45 : Ausgabe2.Caption :='4';
46..50 : Ausgabe2.Caption :='5';
51..55 : Ausgabe2.Caption :='6';
56..60 : Ausgabe2.Caption :='7';
61..65 : Ausgabe2.Caption :='8';
66..70 : Ausgabe2.Caption :='9';
71..75 : Ausgabe2.Caption :='10';
76..80 : Ausgabe2.Caption :='11';
81..85 : Ausgabe2.Caption :='12';
86..90 : Ausgabe2.Caption :='13';
91..95 : Ausgabe2.Caption :='14';
96..100 : Ausgabe2.Caption :='15';
end;

end.


da wo ........................................... steht, weiß ich halt nicht, was ich hinschreiben soll... und auch sonst werden wohl noch ein paar Sachen falsch sein...

wäre wirklich froh, wenn mir jemand helfen könnte Augenzwinkern

_________________
please Hilfe me
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Pr0g



Anmeldungsdatum: 15.02.2005
Beiträge: 90
Wohnort: Düsseldorf

BeitragVerfasst am: 22. Mai 2005 01:53    Titel: Antworten mit Zitat

Den Namen der Prozedur kann ich dir auch nicht sagen, da du sie nenn kannst wie du willst, bspw. "PunkteAnzeigen", die Punkte selber, stehen doch in Ausgabe1.Caption. Aber vom Stil her wäre es am besten, du würdest ne Funktion draus machen:
Code:
var
  Form1: TForm1;
  punkte1, punkte2: integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
punkte1 := StrToInt(Eingabe1.Text);
punkte2 := StrToInt(Eingabe2.Text);
Ausgabe1.Caption := IntToStr(punkte1 * 100 div punkte2);
Ausgabe2.Caption := IntToStr(PunkteEritteln(StrToInt(Ausgabe1.Caption)));
end;

function PunkteErmitteln(const APunkte: Integer): Integer;
begin
  Result := 0;
  case APunkte of
0..19 : Result := 0;
20..26 : Result := 1;
27..33 : Result := 2;
34..40 : Result := 3;
41..45 : Result := 4;
46..50 : Result := 5;
51..55 : Result := 6;
56..60 : Result := 7;
61..65 : Result := 8;
66..70 : Result := 9;
71..75 : Result := 10;
76..80 : Result := 11;
81..85 : Result := 12;
86..90 : Result := 13;
91..95 : Result := 14;
96..100 : Result := 15;
  end;
end;

end.

Der Code könnte noch besser eingerückt sein und globale Variablen sollte man auch vermeiden, aber das geht vielleich für den Anfang zu weit.

_________________
http://webcraft.org/button_ani.gif http://ohs.pr0g.net/button_ani.gif
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name
mys



Anmeldungsdatum: 19.03.2005
Beiträge: 21
Wohnort: Nähe Giessen

BeitragVerfasst am: 22. Mai 2005 16:11    Titel: Antworten mit Zitat

danke schonmal... aber klappt leider immer noch nicht =(

anstatt function hab ich mal procedure genommen, weil ich mich daran erinnern kann, das wir das irgendwann schonmal mit procedure gemacht hatten...

hier mal mein kompletter Quelltext:
Code:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Eingabe1: TEdit;
    Label3: TLabel;
    Eingabe2: TEdit;
    Label4: TLabel;
    Button1: TButton;
    Label5: TLabel;
    Ausgabe1: TLabel;
    Label7: TLabel;
    Ausgabe2: TLabel;
    Label9: TLabel;
    Label6: TLabel;
    Label8: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure PunkteErmitteln(const APunkte: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  Result, punkte1, punkte2: integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
punkte1 := StrToInt(Eingabe1.Text);
punkte2 := StrToInt(Eingabe2.Text);
Ausgabe1.Caption := IntToStr(punkte1 * 100 div punkte2);
Ausgabe2.Caption := IntToStr(PunkteErmitteln(StrToInt(Ausgabe1.Caption)));
end;

procedure TForm1.PunkteErmitteln(const APunkte: Integer);
begin
  Result := 0;
  case APunkte of
0..19 : Result := 0;
20..26 : Result := 1;
27..33 : Result := 2;
34..40 : Result := 3;
41..45 : Result := 4;
46..50 : Result := 5;
51..55 : Result := 6;
56..60 : Result := 7;
61..65 : Result := 8;
66..70 : Result := 9;
71..75 : Result := 10;
76..80 : Result := 11;
81..85 : Result := 12;
86..90 : Result := 13;
91..95 : Result := 14;
96..100 : Result := 15;
  end;
end;

end.


Das Problem liegt jetzt bei
Code:
Ausgabe2.Caption := IntToStr(PunkteErmitteln(StrToInt(Ausgabe1.Caption)));


Delphi sagt dazu:
[Error] Unit1.pas(46): There is no overloaded version of 'IntToStr' that can be called with these arguments

ich weiß leider nicht, was damit gemeint ist =(

Hilfe Vielleicht kann mir nochmal jemand helfen?! *hoff*

_________________
please Hilfe me
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Pr0g



Anmeldungsdatum: 15.02.2005
Beiträge: 90
Wohnort: Düsseldorf

BeitragVerfasst am: 23. Mai 2005 00:04    Titel: Antworten mit Zitat

Naja, das Problem liegt einfach daran, dass dort function stehen muss und nicht procedure. Das hat schon seinen Sinn, wenn ich das so schreibe Augenzwinkern

Eine Prozedur kann keinen Wert zurückgeben, jedenfalls nicht als direkte Rückgabe, hächstens als Parameter, eine Funktion dagegen schon.

_________________
http://webcraft.org/button_ani.gif http://ohs.pr0g.net/button_ani.gif


Zuletzt bearbeitet von Pr0g am 23. Mai 2005 14:36, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name
mys



Anmeldungsdatum: 19.03.2005
Beiträge: 21
Wohnort: Nähe Giessen

BeitragVerfasst am: 23. Mai 2005 13:31    Titel: Antworten mit Zitat

okkeeee... *duck*

jetzt klappt es sogar... *lol*

VIELEN VIELEN DANK!!!!!!!!!!!!!!! smile

_________________
please Hilfe me
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Delphi/Kylix Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
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.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen