Einzelnen Beitrag anzeigen

mmw

Registriert seit: 10. Sep 2019
Ort: OWL
324 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Lazarus Programm haut vor dem Anzeigen der Antwort ab

  Alt 16. Dez 2021, 19:40
Hallo,

ein anderer Ansatz

Delphi-Quellcode:
program project1;

uses
  SysUtils,
  crt,
  Math;

var
  Punkte: string;
  A: TStringArray;
  BB: array of integer;
  akt_punkt, kPunkte, Anzahl, i: integer;
  summe, Notendurchschnitt: real;

  procedure ende;
  begin
    writeln('Ungueltige Anzahl Punkte');
    readln;
  end;

  procedure eingabe(pnkt: integer);
  begin
    writeln('Punkt ' + IntToStr(pnkt + 1) + ': ');
    gotoxy(22, 7 + pnkt);
    readln(Punkte);
    bb[pnkt] := StrToInt(Punkte);
  end;

begin
  akt_punkt := 0;
  anzahl := 0;

  writeln('*******************************');
  writeln('** Notendurchschnittsrechner **');
  writeln('*******************************');
  writeln;

  writeln('Kursarbeitspunkte: ');

  gotoxy(22, 5);
  readln(kPunkte);
  writeln;

  if (kPunkte < 2) then
  begin
    ende;
    exit;
  end;

  try
    setlength(A, kpunkte);
    setlength(bb, kPunkte);

    repeat
      eingabe(akt_punkt);
      Inc(akt_punkt);
    until akt_punkt = kPunkte;

    anzahl := (length(bb) - 1) * 2;

    for i := 0 to high(bb) do
      summe := summe + bb[i];
      Notendurchschnitt := ((summe / anzahl) * 2 + kpunkte) / 3;

    Write('Notendurchschnitt: ');
    Write(formatfloat('#0.###', Notendurchschnitt));
    readln;

  finally
    setlength(a, 0);
    setlength(bb, 0);
  end;

end.

Gruß

Geändert von mmw (16. Dez 2021 um 20:25 Uhr)
  Mit Zitat antworten Zitat