nije test inteligencije nit koji djavo nego mi treba u vezi necega
a iscrpio sam mozak vec drugim trivijalnostima
WHILE USLOV then NESTO1
pisati u
if USLOV then NESTO1 else FALSE
else blablabla
a to nesto1 smije biti neka funkcija koja to nesto odradi .
Trivijano da ne moze trivijalnije biti, ali jednostavno ne mogu da skontam.
while do pisati u if else
- nermin.padez
- Posts: 926
- Joined: 23/05/2012 17:08
#2 Re: while do pisati u if else
threshold wrote:nije test inteligencije nit koji djavo nego mi treba u vezi necega
a iscrpio sam mozak vec drugim trivijalnostima
WHILE USLOV then NESTO1
pisati u
if USLOV then NESTO1 else FALSE
else blablabla
a to nesto1 smije biti neka funkcija koja to nesto odradi .
Trivijano da ne moze trivijalnije biti, ali jednostavno ne mogu da skontam.
Sta ti nije jasno:
Dok je zadovoljen USLOV radi NESTO‚ inace blabla
Ako je zadovoljen uslov radi NESTO1

#3 Re: while do pisati u if else
Ako pitas u cemu je razlika:
WHILE (dok eng.) ce ponavljati neku radnju SVE DOK neki uslov BUDE ispunjen.
IF (ako eng.) ce URADITI neku radnju ako je neki uslov ispunjen u momentu nailaska na tu petlju.
Simple, nadam se da ti je malo jasnije
Ako nije:
-> Ulazis autom u kruzni tok... while not tvoje skretanje then vozi u unutrasnjoj traci
-> Prilazis rijeci... if postoji most then prelazis preko njega else ostajes tu
WHILE (dok eng.) ce ponavljati neku radnju SVE DOK neki uslov BUDE ispunjen.
IF (ako eng.) ce URADITI neku radnju ako je neki uslov ispunjen u momentu nailaska na tu petlju.
Simple, nadam se da ti je malo jasnije

Ako nije:
-> Ulazis autom u kruzni tok... while not tvoje skretanje then vozi u unutrasnjoj traci
-> Prilazis rijeci... if postoji most then prelazis preko njega else ostajes tu
#4 Re: while do pisati u if else
Sa ima haka 
ma jasno je to meni ko slika al radi se o tome da je jezik u kojem radim, i koji nema veze sa programiranjem, vec je matematicki, pa imam i svoj interpreter, koji ne poznaje while, nego samo if-else grananje. Problem je sada kodirati while u if-else tako da ga moj dekoder moze prepoznat. jezik preopznaje i pojam funkcije, bar je to neko olaksanje.
uz parametre dodati neki dodatni parametar? ciklicnost neku napravit? nemam pojma. da vas cujem.
poz

ma jasno je to meni ko slika al radi se o tome da je jezik u kojem radim, i koji nema veze sa programiranjem, vec je matematicki, pa imam i svoj interpreter, koji ne poznaje while, nego samo if-else grananje. Problem je sada kodirati while u if-else tako da ga moj dekoder moze prepoznat. jezik preopznaje i pojam funkcije, bar je to neko olaksanje.
uz parametre dodati neki dodatni parametar? ciklicnost neku napravit? nemam pojma. da vas cujem.

#5 Re: while do pisati u if else
dugo me nije bilo u ovim vodama. tesko je shvatiti tvoj problem iz uvodnog posta. najcesce gresta zna biti sto while odradi jednu petlju vise od if-then u istim uslovima. to je obicno bio jedini detalj koji bi ja pazio. ostalo zavisi od svega ostalog.
sretno!

#6 Re: while do pisati u if else
Ako sam dobro skontao, ti imas problem kako sa if-om napraviti loop tj ponavljanje jer while je loop a if je samo jedan cvor. Cvor ne mora,a moze biti sastavni dio loopa.
Ako nemas while, imas li "for" jer na neki nacin moras napraviti loop inace ces morati napraviti onoliko if-ova koliko imas uslova.
Probaj koristiti "for i = 1 to nekiBroj" ili probaj pisati if iza if-a. Ocigledno postoji neka varijabla koja ti se povecava za jedan pa ti se samim tim i uslov mijenja. Ako je to tako onda napravi dodatnu varijablu koju ja obicno nazivam brojac. Neka ti se brojac povecava za jedan svaki put kada udjes u "if". Napravi onoliko if-ova koliko imas uslova i to je to. Ili koristi loop ili pravi if iza if-a
dim brojac as long
brojac = 1
if uslov(kada je brojac =1) then
nesto....
brojac=brojac+1
end if
'zatim slijedeci if
if uslov (kada je brojac =2) then
nesto...
brojac=brojac+1
end if
itd. ili ako mozes koristi loop da smanjis duzinu koda onda
for i = 1 to n
nesto
brojac = brojac +1
next i
Ako nemas while, imas li "for" jer na neki nacin moras napraviti loop inace ces morati napraviti onoliko if-ova koliko imas uslova.
Probaj koristiti "for i = 1 to nekiBroj" ili probaj pisati if iza if-a. Ocigledno postoji neka varijabla koja ti se povecava za jedan pa ti se samim tim i uslov mijenja. Ako je to tako onda napravi dodatnu varijablu koju ja obicno nazivam brojac. Neka ti se brojac povecava za jedan svaki put kada udjes u "if". Napravi onoliko if-ova koliko imas uslova i to je to. Ili koristi loop ili pravi if iza if-a
dim brojac as long
brojac = 1
if uslov(kada je brojac =1) then
nesto....
brojac=brojac+1
end if
'zatim slijedeci if
if uslov (kada je brojac =2) then
nesto...
brojac=brojac+1
end if
itd. ili ako mozes koristi loop da smanjis duzinu koda onda
for i = 1 to n
nesto
brojac = brojac +1
next i
#7 Re: while do pisati u if else
meščini da je to to, while preko if-a (rekurzija):
while (brojac < 10) brojac++
ili
class Program
{
static int brojac = 0;
static void Main(string[] args)
{
funkcija();
Console.Write(brojac);
}
public static void funkcija()
{
if (brojac < 10)
{
brojac++;
funkcija();
}
else return;
}
}
ovo 10 za primjer, samo uslov prilagoditi
malo je neuredno i nabrzinu, al skontaces
while (brojac < 10) brojac++
ili
class Program
{
static int brojac = 0;
static void Main(string[] args)
{
funkcija();
Console.Write(brojac);
}
public static void funkcija()
{
if (brojac < 10)
{
brojac++;
funkcija();
}
else return;
}
}
ovo 10 za primjer, samo uslov prilagoditi

malo je neuredno i nabrzinu, al skontaces
#8 Re: while do pisati u if else
E hvala svima na odgovorima 
Glavni je problem u tome sto se samo jedna naredba smije pozvati u funkciji, dakle ili promijeniti vrijednost, ili pozvati drugu funkciju, i to je problem. Na zalost vase ideje nisu bas najoptimalnija rjesenja, ali kriv sam sam jer nisam naveo ovaj podatak. Nista, skontacu nesto drugo. hvala

Glavni je problem u tome sto se samo jedna naredba smije pozvati u funkciji, dakle ili promijeniti vrijednost, ili pozvati drugu funkciju, i to je problem. Na zalost vase ideje nisu bas najoptimalnija rjesenja, ali kriv sam sam jer nisam naveo ovaj podatak. Nista, skontacu nesto drugo. hvala
#9 Re: while do pisati u if else
Mozda cu fuliti temu emisije alimas li u tom programu funkcije tipa branch ili goto pa da skocis prije if-a ukoliko je neki uslov zadovoljen i dobit ces while 

#10 Re: while do pisati u if else
Upravo to, while zamijeniti sa if petljom tesko bez neke goto petlje.rimano wrote:Mozda cu fuliti temu emisije alimas li u tom programu funkcije tipa branch ili goto pa da skocis prije if-a ukoliko je neki uslov zadovoljen i dobit ces while
I jedna primjedba postavljacu. Ukoliko se ne radi o nekom tajnom radu, poradi malo (vise) na prezentaciji kako problema tako i na prezentaciji rjesenja kasnije.
#11 Re: while do pisati u if else
Ne znam da li sam dobro shvatio, ali mislim da ti rekurzija moze pomoci, funkcija poziva samu sebe.
Evo kratki primjer, pocetni broj je 50, radi nesto sve dok broj ne bude manji od 10
static void Main(string[] args)
{
Console.Write(manjiOdDeset(50));
Console.ReadLine();
}
static int manjiOdDeset(int broj)
{
if (broj < 10)
return broj;
else return manjiOdDeset(broj-1);
}
Evo kratki primjer, pocetni broj je 50, radi nesto sve dok broj ne bude manji od 10
static void Main(string[] args)
{
Console.Write(manjiOdDeset(50));
Console.ReadLine();
}
static int manjiOdDeset(int broj)
{
if (broj < 10)
return broj;
else return manjiOdDeset(broj-1);
}
#12 Re: while do pisati u if else
Da, rjesenje je bilo u rekurziji.
main(condition, value)
(
return(perform_action(condition, value))
)
while_loop(condition, value)
(
if condition == TRUE then while_loop(condition, main(condition, value))
else return value;
)
Nije rijec bila o C ni o C++, nego nesto dosta jednostavnije (ali ipak Turing kompletno da se razumijemo
)
main(condition, value)
(
return(perform_action(condition, value))
)
while_loop(condition, value)
(
if condition == TRUE then while_loop(condition, main(condition, value))
else return value;
)
Nije rijec bila o C ni o C++, nego nesto dosta jednostavnije (ali ipak Turing kompletno da se razumijemo
