Kezdőoldal » Számítástechnika » Programozás » Javascript for ciklus?

Javascript for ciklus?

Figyelt kérdés

Sziasztok! Hogy lehet megoldani, hogy for ciklusban csak azokat a kétjegyű számokat írja ki, amelyek számjegyeik összege 8?


for(i=1; i<=99; i++){

if(){

document.write()

}

}


próbáltam kikeresni neten, de nem nagyon találtam, hogy lehet a számjegyeket elkülöníteni egymástól, ezért kérdezem már itt



2021. máj. 2. 02:25
 1/6 anonim ***** válasza:
51%

Nézz utána az oszthatósági szabályoknak:

"Egy szám akkor osztható 2n-nel, ha a 10n-es osztási maradéka osztható 2n-nel."

[link]


és a modulo operátornak:

[link]

2021. máj. 2. 02:35
Hasznos számodra ez a válasz?
 2/6 anonim ***** válasza:
0%

for(let i=0; i<100; i++){

let curr = 0;

for(let d = 0; d < i.toString().length; d++){

curr += Number(String(i).charAt(d));

}

if( curr == 8 ){

console.log(i);

}

}

2021. máj. 2. 02:37
Hasznos számodra ez a válasz?
 3/6 anonim ***** válasza:
65%

Mivel az első számjegy ugyebár legfeljebb nyolc lehet (különben nem bír teljesülni a feltétel), és nulla nem lehet (mert akkor nem lesz kétjegyű a szám), ezért 1-től 8-ig számolsz:


for(i=1; i<9; i++){

console.log(8-i+10*i);

}


Ennyike.

2021. máj. 2. 04:33
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:
100%
Úgy látom eddig #2 vezeti a troll válaszok versenyét.
2021. máj. 2. 08:02
Hasznos számodra ez a válasz?
 5/6 anonim ***** válasza:
100%

#3 te is hova bonyolitod? :)

8-tol (vagy 17-tol, ha csak a 2 jegyuek kellenek) kell 9-es lepeskozzel kiirni a szamokat 80-ig es ennyi.

2021. máj. 2. 12:52
Hasznos számodra ez a válasz?
 6/6 anonim ***** válasza:
77%

5: így, így, világos :D de ekkorát még én se mertem trollkodni. ;)


Szóval ha mindenképp végig akarsz menni az összes kétjegyű számon, és mindenképp matematikailag akarod szeparálni a számjegyeket és egyenként vizsgálni ezeken az összeget, akkor:


for(i=10; i<100; i++){ // végig az összes kétjegyű számon...

digit1 = i % 10; // js modulo operátor: osztási maradékképzés: a kisebb helyiértékű szám

digit2 = (i - digit1)/10; // a nagyobb helyiértékű szám

if (digit1+digit2 == 8) {console.log(i)};

}

2021. máj. 2. 13:23
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!