AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen FreePascal Testauswertungsprogramm - Variablen umändern
Thema durchsuchen
Ansicht
Themen-Optionen

Testauswertungsprogramm - Variablen umändern

Ein Thema von FreePascal · begonnen am 12. Jun 2009 · letzter Beitrag vom 12. Jun 2009
Antwort Antwort
Seite 1 von 2  1 2      
FreePascal

Registriert seit: 31. Mai 2009
39 Beiträge
 
#1

Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:10
Hallo , so schaut das Testauswertungsprogramm zu Beginn aus.
Delphi-Quellcode:
program testauswertung
uses crt;
var nr, summe, punkte:integer;


begin
     clrscr;
     summe:=0;
              FOR nr:=1 TO 4 DO
              begin
                  writeln('Aufgabe: ',nr);
                  readln(punkte);
                  summe:=summe+punkte;
              end;


              writeln('Gesamtpunktezahl: ',summe);


              readln;


end.

Jetzt will ich das ürsprüngliche Programm insofern umbauen, so dass der Start- u. Endwert der zu summierenden Aufgaben frei wählbar ist.
Ich habe überlegt, dass man dazu zwei neue Variablen braucht, nämlich startwert und endwert
Die muss man dann oben bei der Variablendeklaration einfügen. Und dann muss man es auch da einbauen:
FOR nr:=startwert TO endwert DO, Ich glaube aber, bei summe:=0 muss ich auch noch etwas umändern, oder
.....
Dann würde das ganze ja folgendermaßen aussehen:
Delphi-Quellcode:

program testauswertung
uses crt;
var startwert, endwert, nr, summe, punkte:integer;


begin
     clrscr;
     summe:=0;
              FOR nr:=startwert TO endwert DO
              begin
                  writeln('Aufgabe: ',nr);
                  readln(punkte);
                  summe:=summe+punkte;
              end;


Alles kein Problem, es geht zum Ausführen, doch beim Ausführen steht dann:
Aufgabe: 0
dann muss man eine zahl eingeben, z.b. 34
Gesamtpunktezahl: 34

Könnt ihr mir hier weiterhelfen
Danke, Martin
Angehängte Dateien
Dateityp: pas aufgabe2_168.pas (369 Bytes, 0x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.592 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:11
Du weist startwert und endwert ja nirgends zu, also haben beide vermutlich den Wert 0 und damit läuft die Schleife genau dieses eine Mal...
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#3

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:16
Du musst Start- und Endwert ja erst einmal einlesen (und auf Gültigkeit prüfen), das geht mit readln.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
FreePascal

Registriert seit: 31. Mai 2009
39 Beiträge
 
#4

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:19
Danke, an das habe ich auch schon gedacht
soll ich start und endwert direkt nach summe:=0 zuweisen?
z.B.
summe:=0
startwert:=???
endwert:=???


Nur wie soll ich start bzw. endwert zuweisen, wenn sie ja frei wählbar sein sollten
Danke, martin

edit:
summe:=0
startwert:=???;
readln(startwert);
endwert:=???;
readln(endwert);
....

meinste so
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#5

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:20
Die Zuweisung kannst Du Dir sparen, da Du die Werte ja mit readln vom Benutzer abfragst.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.592 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:27
Kann ReadLn direkt die Integerwerte lesen? Oder sind das nicht eher Strings, die noch umgewandelt werden müssen? (Lange nicht mehr die Konsolenbefehle benutzt... )
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#7

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:32
Jepp, kann es.
Delphi-Quellcode:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var Zahl: integer;

begin
  try
  { TODO -oEntwickler -cKonsole Main : Hier Code einfügen }
    write('Zahl: ');
    readln(Zahl);
    writeln('Zahl war ',Zahl);
  except
    on E:Exception do
      Writeln(E.Classname, ': ', E.Message);
  end;
  readln;
end.
[edit] Einrückung korrigiert [edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
FreePascal

Registriert seit: 31. Mai 2009
39 Beiträge
 
#8

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:42
Also, ihr meint folgendermaßen sollte es ausschauen:
Delphi-Quellcode:
program testauswertung
uses crt;
var startwert, endwert, nr, summe, punkte:integer;


begin
     clrscr;
     summe:=0;
              writeln('Bitte Startwert eingeben!!!');
               readln(startwert);
             writeln('Bitte Endwert eingeben!!!');
                readln(endwert);

FOR nr:=startwert TO endwert DO
              begin
                  writeln('Aufgabe: ',nr);
                  readln(punkte);
                  summe:=summe+punkte;
              end;


              writeln('Gesamtpunktezahl: ',summe);


              readln;


end.
Muss man denn sonst noch etwas umändern

Danke, Martin
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#9

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:45
Prinzipiell ist das schon richtig so, aber Du solltest div. Fehleingaben noch abfangen:
- eine der Eingaben ist keine Zahl
- Startwert ist nicht kleiner oder gleich Endwert

Damit sollte das recht sicher sein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
FreePascal

Registriert seit: 31. Mai 2009
39 Beiträge
 
#10

Re: Testauswertungsprogramm - Variablen umändern

  Alt 12. Jun 2009, 12:50
Zitat von DeddyH:
Fehleingaben solltest du noch abfangen:
- eine der Eingaben ist keine Zahl
- Startwert ist nicht kleiner oder gleich Endwert
Wo soll ich das abfragen und wie

Danke, Martin
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 16:25 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