AGB  ·  Datenschutz  ·  Impressum  







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

Anweisung in if und for

Ein Thema von luciseli · begonnen am 14. Mär 2017 · letzter Beitrag vom 14. Mär 2017
Antwort Antwort
Seite 1 von 2  1 2      
luciseli

Registriert seit: 14. Mär 2017
6 Beiträge
 
#1

Anweisung in if und for

  Alt 14. Mär 2017, 10:32
Delphi-Version: 5
Hallo,
ich bin noch Anfänger in dem Thema und versuche gerade herauszufinden wie man mehrer Anweisungen in Schleifen oder If's baut.
Folgenden Code habe ich:

Code:
if eingabe = 1 then
     begin
          for i:= 1 to 3 do
              begin
                   test[i]:= test[i] + 1;
                   test1[i]:= test1[i] + 1;
              end;
          test[1]:= 0;
          test1[1]:= 0;
     end;
Das ganze funktioniert natürlich nicht so, ich hoffe aber auf einen Tipp wie man Anfang und Ende von schleifen oder Bedingungen am besten deklariert.
Danke im Voraus
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Anweisung in if und for

  Alt 14. Mär 2017, 10:36
.. was willst Du denn bewirken?
Funktioniert nicht so - ist eine nicht ganz so aussagekräftige Fehlermeldung.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.035 Beiträge
 
Delphi 12 Athens
 
#3

AW: Anweisung in if und for

  Alt 14. Mär 2017, 10:40
Ich versteh dein Problem irgendwie nicht.

Der Code an sich funktioniert ja,
außer dass die 1 umsonst hochgezählt wird, aber das lässt sich z.B. durch for i := 2 to 3 do beheben ... jenachdem was eigentlich passieren soll.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
luciseli

Registriert seit: 14. Mär 2017
6 Beiträge
 
#4

AW: Anweisung in if und for

  Alt 14. Mär 2017, 10:44
Sorry etwas kompletter nochmal:

Code:
test[1]:= z1;
  test[2]:= z2;
  test[3]:= z3;
  test1[1]:= z1;
  test1[2]:= z4;
  test1[3]:= z5;

  if eingabe = 1 then
     begin
          for i:= 1 to 3 do
              begin
                   test[i]:= test[i] + 1;
                   test1[i]:= test1[i] + 1;
              end;
          test[1]:= 0;
          test1[1]:= 0;
     end;
  if eingabe = 2 then
     begin
          for i:= 1 to 3 do
              begin
                   test[i]:= test[i] + 1;
                   test1[i]:= test1[i] + 1;
              end;
          test[2]:= 0;
     end;
1. Sollen alle z- variablen hochzählen
2. Soll die eingegebene(eingabe) Zahl auf 0 gesetzt werden
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Anweisung in if und for

  Alt 14. Mär 2017, 10:48
.. meinst Du sowas?

Delphi-Quellcode:
          for i:= 1 to 3 do
              begin
                if i = eingabe then
                   begin
                     test[i]:= 0 ;
                     test1[i]:= 0;
                   end
                else
                  begin
                    test[i]:= test[i] + 1;
                    test1[i]:= test1[i] + 1;
                  end;
              end;
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#6

AW: Anweisung in if und for

  Alt 14. Mär 2017, 10:53
1. Sollen alle z- variablen hochzählen
2. Soll die eingegebene(eingabe) Zahl auf 0 gesetzt werden
Verstehe ich leider immer noch nicht wirklich.

Willst du tatsächlich z1 , z2 , .. hochzählen, oder test[1] , test[2] , etc.?
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
luciseli

Registriert seit: 14. Mär 2017
6 Beiträge
 
#7

AW: Anweisung in if und for

  Alt 14. Mär 2017, 11:01
@ Klaus01

es sollte am besten erst alle hochzählen und dann nur den einen wert der als "eingabe" deklariert ist auf null setzten

@ Zacherl

es müssen natürlich test[1] etc. hochgezählt werden da hast du recht

Also nochmal zusammengefasst:

Ich will alle werte der arrays hochzählen und danach den array wert wo z = eingabe ist zurücksetzten auf 0
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: Anweisung in if und for

  Alt 14. Mär 2017, 11:02
oder etwa so ?

Delphi-Quellcode:
   for i := 1 to 3 do
   begin
     inc(test[i]);
     inc(test1[i]);
   end;
   test[eingabe] := 0;
   test1[eingabe] := 0;
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
luciseli

Registriert seit: 14. Mär 2017
6 Beiträge
 
#9

AW: Anweisung in if und for

  Alt 14. Mär 2017, 12:01
Super passt der Tipp mit dem inc war super. Danke an alle
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#10

AW: Anweisung in if und for

  Alt 14. Mär 2017, 13:06
der Tipp mit dem inc war super. Danke an alle
Nur zwischen test[i] := test[i] + 1; und inc(test[i]); gibt es doch keinerlei Unterschied

Delphi-Quellcode:
var
 i: Integer;
begin
 // Das hier...
 i := 0;
 i := i + 1;
 ShowMessage(IntToStr(i));

 // ... ist dasselbe wie das hier
 i := 0;
 Inc(i);
 ShowMessage(IntToStr(i));
  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 14:48 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