Please help, ja viem je to jednoduchý príklad z testov, ale som z neho fakt vedľa. Prvé dve otázky som spravil k nemu v pohode, ale tretia:
Pre akú hodnotu "n" bude výpočet nekonečný?
int x=0, y=0;
while (x<n) {
y=y+2*x+1;
x=x+1;
System.out.println (+y);
}
Fórum › Java
Zúfalosť z jednoduchého príkladu
mal by to byť vlastne ľahký príklad z prijímačiek :-)) presné znenie (pascal):
Je daný algoritmus:
read(n);
x:=0; y:=0;
while x<n do begin
y:=y+2*x+1;
x:=x+1
end;
write(y);
a,Čo sa vypíše, ak na vstupe zadáme n=8? (to mám - 64)
b,Čo algoritmus počíta? Zapíšte vzťah vstupnej premennej n a výstupnej premennej y (mám, podľa mňa n2=y)
c,Pre akú hodnotu n bude výpočet nekonečný? (tu som zúfalý, ale asi to bude ako napísal master x+1)
Ďakujem
x+1 to v tomto pripade byt asi nemuze, protoze neco takoveho se nenacte pomoci read(n); ;)
no a jelikoz jde o Pascal a datovy typ n v otazce jaksi neni, tak by to mohlo byt cokoli vetsiho nez 32767 nejlepe zadany jako float cili treba 3.2768e4 (to vse za predpokladu ze x je integer)
To mio:
Záleží na tom, jak je deklarované x a n.
Je-li x typu integer a n typu long, pak pro každé n > MAXINT, protože
MAXINT+1 = MININT
Jsou-li obě čísla stejného typu, tak pro žádnou, protože každé z možných kladných hodnot n x jednou dosáhne.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Vytvoření jednoduchého JS — založil totcmd
Návrh jednoduchého připojení — založil BDS
Nakodovanie jednoducheho design — založil snaque
Padání jednoduchého programu — založil kadet
Konzultace jednoducheho java programu — založil Dex
Moderátoři diskuze