Ebben mi lehet a hiba? (for ciklus)
program ciklus;
uses crt;
var i,osszeg:integer;
begin
clrscr;
osszeg:=1;
for i:=1 to 10 do
begin
i:=i+1;
write(osszeg,'*',i,'=',osszeg*i);
osszeg := osszeg * i;
writeln;
end;
ReadKey;
end.
Szia, én így oldottam meg:
-------------------------------------
program szor;
uses crt;
var i,c,osszeg: byte;
BEGIN
clrscr;
osszeg:=0;
for i:=1 to 5 do
begin
c:=2*i;
osszeg:=osszeg+c;
end;
writeln(osszeg);
readkey;
END.
Bocs de elírtam! Azthittem összeadni akarod őket :D itt a HELYES megoldás, ki is van próbálva. Elnézést.
------------------------
program szor;
uses crt;
var i,c,osszeg: integer;
BEGIN
clrscr;
osszeg:=1;
for i:=1 to 5 do
begin
c:=2*i;
osszeg:=osszeg*c;
end;
writeln(osszeg);
readkey;
END.
Nem világos hogy miért osszeg nevű változót használsz amikor szorzatot tárolsz. Nem csoda hogy az előttem lévő megtévedt. For cikluson belül nem szabad a ciklusváltozó értékét módosítani. Még jó hogy baja van az i ciklusváltozóval.
2 féleképp oldottam meg:
1.)-----------
program szor;
{Program ami osszeszorozza 1-tol 10-ig a paros szamokat}
uses
crt;
var
CiklusValt,szorzat : integer;
begin
clrscr;
szorzat:=1;
for CiklusValt:=1 to 10 div 2 do
begin
szorzat:=szorzat*(2*CiklusValt);
end;
writeln(szorzat);
readkey;
end.
2.)-----------
program szor;
{Program ami osszeszorozza 1-tol 10-ig a paros szamokat}
uses
crt;
var
CiklusValt,szorzat : integer;
begin
clrscr;
szorzat:=1;
CiklusValt:=0;
while CiklusValt<10 do
begin
CiklusValt:=CiklusValt+2;{itt lehet a ciklusvaltozo erteket modositani}
szorzat:=szorzat*CiklusValt;
end;
writeln(szorzat);
readkey;
end.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!