AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

einzelne Zeichen eines Strings einlesen

Ein Thema von malibu85 · begonnen am 12. Mär 2008 · letzter Beitrag vom 13. Mär 2008
Antwort Antwort
malibu85

Registriert seit: 27. Dez 2007
45 Beiträge
 
#1

Re: einzelne Zeichen eines Strings einlesen

  Alt 12. Mär 2008, 20:43
habe den folgenden Algorithmus geschrieben. Er funktioniert um die Quersumme zu berechnen. Allerdings ruft er eine Hand voll Fehlermeldungen aus wobei das Ergebnis immer richtig ist.

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Label1: TLabel;
    Edit2: TEdit;
    Label2: TLabel;
    Button1: TButton;
    Label3: TLabel;
    Label4: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  a:Array of integer;


implementation

{$R *.dfm}



                        procedure Quersumme;
                        var s:String;
                        c:char;
                        x1,x2,v:integer;

                        begin
                        with form1 do
                        begin

                        s:=Edit1.Text;
                        x1:=length(s);
                        label3.caption:=IntToStr(x1);
                        SetLength(a,x1);
                            for x2:=1 to x1 do
                            begin
                            a[x2]:=StrToInt(s[x2]);
                            end;
                            for x2:=0 to x1 do
                            begin
                            v:=v+a[x2];
                            end;

                            label4.Caption:=IntToStr(v);
                        end;
                        end;









procedure TForm1.Button1Click(Sender: TObject);
begin
Quersumme;
end;

end.
etwas verwundert bin ich über die erste For-Schleife
Delphi-Quellcode:
for x2:=1 to x1 do
                            begin
                            a[x2]:=StrToInt(s[x2]);
                            end;
hätte x am liebsten 0 zugewiesen und die Abbruchbedingung x-1.Mit der Begründung, dass das erste Array-element ja eigentlich a[0] ist aber wahrscheinlich ist das egal ob die Zahlenkette bei a[0] oder [1] anfängt. Im Grunde habe ich das so gemacht weil ich auf s[0} nicht zugreifen darf.

Meine Frage, gibt es ne Musterlösung die weniger problematisch ist?
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz