[delphi] l.automorficzne problem z pętlami

0

przenosze tutaj ten temat.
Tworzę aplikację obiektową generującą liczby automorficzne od 0 do miliona.
Problem jest taki że program generuje mi tylko liczby 0,1,5,6, a powinien obliczac do miliona, tak jakby pętla zawężała się w jednej formułce **if ((a*a)mod 10)=a **

Madmike podpowiedział mi że mam problem z pętlami i continue, lecz nie za bardzo orientuję się co teraz postąpić

mój kod wygląda tak:

Procedure TForm1.Button1Click(Sender: TObject);
var
a,g,d:Integer;
begin
 d:=StrToInt(Edit1.Text);
 g:=StrToInt(Edit2.Text);

 for a:=d to g do

   if ((a*a) mod 10)=a then
    Memo1.Lines.Add(inttostr(a));

   if ((a*a) mod 100)=a then
    Memo1.Lines.Add(inttostr(a));

   if ((a*a) mod 1000)=a then
    Memo1.Lines.Add(inttostr(a));

   if ((a*a) mod 10000)=a then
    Memo1.Lines.Add(inttostr(a));

   if ((a*a) mod 100000)=a then
    Memo1.Lines.Add(inttostr(a));

   if ((a*a) mod 1000000)=a then
    Memo1.Lines.Add(inttostr(a));

end;
 
1

Dalej obowiązuje:

madmike napisał(a)
  1. Co masz w pętli? Poszukaj informacji o blokach begin..end
  2. Niedokładnie przepisałeś kod, zapomniałeś o continue; - właściwie, to powinno być po każdym wypisaniu wyniku

Nie daję gotowych rozwiązań, staram się zmusić do myślenia (wiem, że to czasem boli!). Chcesz w pętli wykonywać zestaw instrukcji, więc musisz to zaznaczyć...

for a:=d to g do
   begin
   //to co tu będzie, będzie wykonywane tyle razy ile razy wykonana zostanie pętla
   end;

Patrząc na to co napisałem i na:

raVi napisał(a)

tak jakby pętla zawężała się w jednej formułce **if ((a*a)mod 10)=a **
Przecież jasne jest co robisz źle.

Myśl!

0

ok dzięki już to działa
lecz jeszcze mam błąd, ponieważ kilka liczb mi się powtarzaja, tak jak na załączniku

0

Kombinuj... I czytaj to co napisałem!!!!

madmike napisał(a)
  1. Niedokładnie przepisałeś kod, zapomniałeś o continue; - właściwie, to powinno być po każdym wypisaniu wyniku

Zajrzyj do kodu z którego kopiowałeś (http://4programmers.net/Forum/Delphi_Pascal/172212-liczby_automorficzne?p=702478#id702478), a będziesz miał ok.

0

oki juz ogarnąłem, dzięki za pomoc

1 użytkowników online, w tym zalogowanych: 0, gości: 1