WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 07.11.2004, 07:47   #1
3of4
Elite
 
Registriert seit: 14.11.1999
Alter: 39
Beiträge: 1.429


Standard [Pascal] Dateitypenproblem

Hab ein Programm, das irgendeine Cosinustabelle ausrechnen soll, nur leider keine Ahnung von Pascal und keine Zeit mich einzulesen (Schulstress, muss heut noch 40 Seiten schreiben).
Wenn also jemand die Fehler enddeckt, bitte ausbessern und sagen wo der Fehler gesteckt hatte (mein Bruder will auch wissen was falsch ist)

code:
Code:
unit Cosinustabelle;

interface

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

type
  TCosinus = class(TForm)
    Schrittweite: TLabel;
    Eingabefeld: TEdit;
    Berechnen: TButton;
    Beenden: TButton;
    Ausgabefeld: TMemo;
    procedure BerechnenClick(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Cosinus: TCosinus;




implementation

{$R *.dfm}



procedure TCosinus.BerechnenClick(Sender: TObject);

Const Pi= 3.1415926535898;

Var
 Schrittweite,grad:integer;
 i, aus:integer;
 gr, co, ausg:real;

Begin
  Ausgabefeld.clear;
  Schrittweite := StrToInt(Eingabefeld.Text);

 If Schrittweite > 90 Then
    ShowMessage ('Schrittweite zu groß');

 If Schrittweite <=0 Then
    ShowMessage ('Schrittweite zu klein');
 Try
    Schrittweite := StrToInt(Eingabefeld.Text);
 Except
    ShowMessage ('ungültige Eingabe');
 i:= 0;
 grad:= i+Schrittweite;
 While grad<=90 Do
   begin


    gr:= grad*(Pi/180);
    co:= cos(gr);

    str (grad :2, aus);
    str (co:2:4, ausg);

    Ausgabefeld.Lines.Add('cos('aus'):'ausg);

    grad:= grad+Schrittweite ;

   end;

end;

end;
____________________________________
Resistantium est futilius
3of4 ist offline   Mit Zitat antworten
Alt 08.11.2004, 12:27   #2
jak
Inventar
 
Registriert seit: 13.06.2001
Beiträge: 1.830


Standard

Eine genaue Fehlermeldung wäre hilfreich, ich möcht Delphi jetzt nicht installieren.
Rein von der Logik ist dieser Block aber sehr seltsam:
Code:
Schrittweite := StrToInt(Eingabefeld.Text);

 If Schrittweite > 90 Then
    ShowMessage ('Schrittweite zu groß');

 If Schrittweite <=0 Then
    ShowMessage ('Schrittweite zu klein');
 Try
    Schrittweite := StrToInt(Eingabefeld.Text);
 Except
    ShowMessage ('ungültige Eingabe');
der Try Except Block gehört ganz an den Anfang, sonst ist er sinnlos.
Code:
 Try
    Schrittweite := StrToInt(Eingabefeld.Text);
 Except
    ShowMessage ('ungültige Eingabe');
 If Schrittweite > 90 Then
    ShowMessage ('Schrittweite zu groß');

 If Schrittweite <=0 Then
    ShowMessage ('Schrittweite zu klein');
Dieser Teil ist auch sehr komisch:
Code:
    str (grad :2, aus);
    str (co:2:4, ausg);
Ausgabefeld.Lines.Add('cos('aus'):'ausg);
aus ist ein Integer, ausg ist überhaupt nicht definiert.Str gibt einen String zurück.
Du müßt also bei den Variablen oben statt
i, aus:integer; //i wird nie verwendet
aus, ausg:string;
Auerdem schätz ich mal, daß statt
Ausgabefeld.Lines.Add('cos('aus'):'ausg);
Ausgabefeld.Lines.Add('cos('+aus+'):'+ausg);
hingehört.

Jak
____________________________________
Join the DNRC | Godwin\'s Law (thx@stona)
Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing.
\"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra)
jak ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:56 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag