IT NEWS PC REVUE PC FORUM FreeBSDInternet time: @637
Obsah fóra
Pravidlá  •  Kontakt  •  Prihlásenie  •  Registrácia

Vyhraj Lego Duplo každý deň

Zapojte sa do súťaže a vyhrajte! Je to tak jednoduché! www.duplo.lego.com

Spoločnosti Online s.r.o.

Ponúkame čisté spoločnosti. Obchodný register vybavíme za vás! www.spolecnostionline.cz

Dajte zbohom celulitíde

S novinkami radu NIVEA Q10 plus môžete hodiť celulitídu za hlavu. www.NIVEA.sk

Zhoď nadbytočné kilogramy

Rýchlo. Jednoducho. Trvalo. Za pomoci naturálnych produktov ! www.janinblog.com

Zaregistruj sa!

Tvoj názor stojí peniaze. Vyplňte dotazník a zarobte si! www.marketagent.com

Pascal podmienka ak lezi v poli... pomoc

Zaslať odpoveď
AutorSpráva
Blackhair
Užívateľ
Užívateľ

Založený: 11.12.2011
Príspevky: 5

PríspevokZaslal: Ne 11.12.11 14:01Odpovedať s citátomNávrat hore

Zdravim... som zaciatocnik co sa tyka programovania a chcel som si skusit spravit toto zadanie
Úloha: Vytvorte program pre hru dvoch hráčov. Program simuluje 15 náhodných hodov hracou kockou a zisťuje víťaza. Prvý hráč vyhráva, keď padne viackrát párne číslo ako nepárne číslo. Druhý hráč vyhráva, keď padne viackrát nepárne číslo ako párne číslo. Program vypisuje generované čísla. Výstupné údaje sú, kto vyhral a s akým počtom hodov.

moj zamer nebol prilis sa drzat zadania takze to popripade ignorujte, ide mi oto ako vytvorim podmienku
If prvok lezi v poli a then inc z else incy
tu je program:

kód:
var a:array[1..3] of integer; b:array[1..3] of integer;
x,y,i,u,j,z:integer;   
begin
for i:=1 to 3 do
begin
writeln('hrac 1 -zadaj',i,'. cislo pre ktore vyhravas');
readln(a[i]);
end;
for j:=1 to 3 do
begin
writeln('hrac 2 - zadaj',i,'.cislo pre ktore vyhravas');
readln(b[j]);
end;
z:=0;
y:=0;
for u:=1 to 15 do
begin
randomize;
x:= random(6)+1;
writeln('hod c.',u,'- ',x);
if *****a=x***** then inc(z) else inc(y);
end;
writeln('hrac c. 1 ziskal',z,'bodov');
writeln('hrac c. 2 ziskal',y,'bodov');
writeln;
if z>y then writeln('vitaz je hrac c. 1') else
writeln('vitaz je hrac cislo 2');
readln;

end.                                   


***** -problem pise pri tom a=x --> operator is not overloaded

ako by som teda spravil tu podmienku ak lezi v poli tak?? Vdaka...
Zobraziť informácie o autoroviOdoslať súkromnú správu
Ďuri
Administrátor
Administrátor

Založený: 11.08.2007
Príspevky: 3785
Bydlisko: Brno

PríspevokZaslal: Ne 11.12.11 14:08Odpovedať s citátomNávrat hore

Tak jasne, nemozes porovnavat pole so skalarom. Musis pomocou for cyklu prechadzat vsetkymi prvkami pola a v pripade, ze sa i-ta hodnota v poli rovna x, do nejakej boolean premennej si vlozis true, akoze prvok sa nasiel. Defaultne ta hodnota samozrejme musi byt false.
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberSkype
Blackhair
Užívateľ
Užívateľ

Založený: 11.12.2011
Príspevky: 5

PríspevokZaslal: Ne 11.12.11 14:42Odpovedať s citátomNávrat hore

a keby sa to pokusim vyriesit takto (ten problemovy cyklus):
i:=1;
for u:=1 to 15 do
begin
randomize;
x:= random(6)+1;
writeln('hod c.',u,'- ',x);
readln;
repeat
readln(a[i]);
if a[i]=x then inc(z);
inc(i);
until i=3;
i:=1;
end;
y:=15-z;

kde sa to tu zadrhava? ten repeatovy cyklus mi neprejde ... program sa nedostane cez to vypis x ... teda to random cislo
Zobraziť informácie o autoroviOdoslať súkromnú správu
Zobraziť príspevky z predchádzajúcich:    
Zaslať odpoveď
Nemôžete pridávať nové témy do tohto fóra.
Nemôžete odpovedať na témy v tomto fóre.
Nemôžete upravovať svoje príspevky v tomto fóre.
Nemôžete mazať svoje príspevky v tomto fóre.
Nemôžete hlasovať v tomto fóre.

Powered by phpBB 2.x.x © 2005 - 2012 PCforum, webhosting by WebSupport, edited by JanoF

SEO - optimalizácia pre vyhľadávače

Freebsd