Kezdőoldal » Számítástechnika » Programozás » Java+parancssori argumentummal...

Java+parancssori argumentummal, h lehetne ezt megcsinálni?

Figyelt kérdés

Írj programot, ami egész számok sorozatát olvassa be parancssori argumentumból, majd meghatározza, hogy melyik a leghosszabb olyan részsorozata, ahol az egymás utáni elemek ugyanannak a számnak a hatványai (a, a2, a3, ...)


Odáig megvan, h a cmd-be beírt számok, amiket Stringnek kezel, int-et csinálok belőle.

Tehát "egész számok sorozatát olvassa be parancssori argumentumból" ez megvan.


"majd meghatározza, hogy melyik a leghosszabb olyan részsorozata, ahol az egymás utáni elemek ugyanannak a számnak a hatványai (a, a2, a3, ...)"

Ezt nem tudom megcsinálni.

Légyszi segítsen, ha tudja valaki. Köszi :)



2017. szept. 29. 15:05
 1/7 anonim ***** válasza:
Mi nem megy, a maradékos osztás?
2017. szept. 29. 15:12
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:

Az, h hogyan kell lekódolni, h

"majd meghatározza, hogy melyik a leghosszabb olyan részsorozata, ahol az egymás utáni elemek ugyanannak a számnak a hatványai (a, a2, a3, ...)"


Oltós szövegeket, h óvodás feladat, csecsemű megírja csukott szemmel, meg pusztuljak el, h nem jövök rá stb. inkább privát üzenetbe írja le aki akarja, h itt inkább a hasznos infók legyenek.

2017. szept. 29. 15:17
 3/7 anonim ***** válasza:

Két egymásba ágyazott ciklussal.


Először csinálsz egy eredmény listát.

A külső for ciklussal lépkedsz végig a beolvasott elemeken.

Beállítod, hogy a = az i. beolvasott elem.

Ezt beteszed egy új részlistába.


Utána csinálsz egy belső ciklust, ahol az i+1. elemtől indulsz.


És ellenőrzöd, hogy i+1. elem == a*a

i+2. elem = a*a*a


Ha igaz, akkor beteszed a részlistába a következő elemet.


Addig csinálod, míg olyan elemhez nem érsz, amire ez már nem igaz, vagy elfogytak az elemek.


Ekkor megnézed, hogy hány elemet tettél be, ha többet, mint az eddigi legtöbb, akkor az lesz az új eredmény.

(Amit a cikluson kívül definiáltál)


Ha ennél több segítség kell, akkor írj.

2017. szept. 29. 15:41
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:

Eddig megvan.

Csak úgy kéne, hogy folyamatosan magától emelje az a-t, tehát ne keljen elöre beirni hogy a*a utána a*a*a.

Ezt, h lehetne?

2017. szept. 29. 15:52
 5/7 anonim ***** válasza:
A hatvány operátora a ^. Pl. a^2, a^3, vagy változóval is lehet: a^i.
2017. szept. 29. 16:40
Hasznos számodra ez a válasz?
 6/7 anonim ***** válasza:
A hatvány operátora nem a ^, sőt, nincs is rá operátor. Függvényhívások vannak rá.
2017. szept. 29. 17:03
Hasznos számodra ez a válasz?
 7/7 anonim ***** válasza:

En ugy csinalnam, hogy eloszor megnezem a lista elso elemere, hogy tole kezdodoen mekkora a leghosszabb ilyen sorozat, aztan ha n hosszu, akkor az n. elemtol folytatodoan megneznem, hogy tole mekkora a leghosszabb ilyen. Valahogy igy, ez vagy mukodik, vagy nem, es biztos lehetne szebben is csinalni.


public static void main(String[] args) {

List<Integer> integerList = Arrays.asList(args).stream().map(Integer::valueOf).collect(Collectors.toList());

int result = 1;

while (integerList.size() > 1) {

int exponent = 2;

while (integerList.size() >= exponent && pow(integerList.get(0), exponent) == integerList.get(exponent - 1)) {

if (exponent > result) {

result = exponent;

}

++exponent;

}

for (int i = 0; i < exponent - 1; ++i) {

integerList.remove(0);

}

}

System.out.println(result);

}

2017. okt. 2. 03:25
Hasznos számodra ez a válasz?

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

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!