Flava
Legacy Member
programma: Borland Delphi 6.0
Als ik de code wil Runnen, krijg ik volgende foutmelding:
[Error] GEMIDDELDEDYNAMISCHEARRAY.pas(61): Incompatible types: 'Real' and 'String'.
Ik ben een beginneling in programmeren en zit hier vast, zou niet weten wat ik moet veranderen (de code heb ik van een handboek, maar die klopt blijkbaar niet?). Als iemand mij zou kunnen verderhelpen
.
Het is dus deze lijn dat telkens roodkleurt: 'Geef de score voor student' + IntToStr(StudentenNummer+1)+':',''); (vind je onderaan de code)
(Ik hoop dat dit het juiste subforum is?)
Als ik de code wil Runnen, krijg ik volgende foutmelding:
[Error] GEMIDDELDEDYNAMISCHEARRAY.pas(61): Incompatible types: 'Real' and 'String'.
Ik ben een beginneling in programmeren en zit hier vast, zou niet weten wat ik moet veranderen (de code heb ik van een handboek, maar die klopt blijkbaar niet?). Als iemand mij zou kunnen verderhelpen
. Het is dus deze lijn dat telkens roodkleurt: 'Geef de score voor student' + IntToStr(StudentenNummer+1)+':',''); (vind je onderaan de code)
(Ik hoop dat dit het juiste subforum is?)
Code:
unit GEMIDDELDEDYNAMISCHEARRAY;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TFormGemiddelde = class(TForm)
Label1: TLabel;
EditNummer: TEdit;
ButtonGemiddelde: TButton;
MemoOutput: TMemo;
procedure ButtonGemiddeldeClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FormGemiddelde: TFormGemiddelde;
implementation
{$R *.dfm}
procedure Vergelijk(Student:integer; Score, Gemiddelde:Real);
var
LijnOutput:String;
begin
Lijnoutput:= 'Student' + IntToStr(Student);
If (Score>gemiddelde)
Then LijnOutput:=LijnOutput+'scoorde boven het gemiddelde van'
Else
If (Score<Gemiddelde)
Then LijnOutput:=LijnOutput+'scoorde onder het gemiddelde van'
Else LijnOutput:=LijnOutput+'scoorde juist het gemiddelde van';
LijnOutput:=LijnOutput+FloatToStr(Gemiddelde);
FormGemiddelde.MemoOutput.Lines.Add(LijnOutput);
end;{Procedure vergelijk}
procedure TFormGemiddelde.ButtonGemiddeldeClick(Sender: TObject);
var
AantalStudenten, StudentenNummer:Integer;
Score: Array of Real;
Totaal, GemiddeldeScore:Real;
begin
AantalStudenten:=StrToInt(EditNummer.Text);
If(AantalStudenten>0)
Then
begin
SetLength (Score, AantalStudenten);
Totaal:=0;
For StudentenNummer:=0 to (AantalStudenten-1) do
begin
Score[StudentenNummer]:=InputBox('Geef de score in',
'Geef de score voor student' + IntToStr(StudentenNummer+1)+':','');
Totaal:=Totaal + Score[StudentenNummer];
end;{For}
GemiddeldeScore:= Totaal/AantalStudenten;
MemoOutput.Clear;
MemoOutput.Lines.Add('De gemiddelde score: '+ FloatToStr(GemiddeldeScore));
For StudentenNummer:=0 to (AantalStudenten-1) do
begin
Vergelijk((StudentenNummer+1); Score[StudentenNummer], GemiddeldeScore);
end; {For}
end; {lf}
end; {procedure TformGemiddelde.ButtonGemiddeldeClick}
end.
.