Hirdetés
- Samsung Galaxy A57 - kecses test, lusta lélek
- Megérkezett Európába a Soundcore Space 2 fejhallgató
- Hivatalos a OnePlus Watch 4
- Így spórolhat az Apple az iPhone 18 kijelzőin
- OnePlus 15 - van plusz energia
- Fittyet hány a pesti napfényre a Honor 600
- Mobil flották
- iOS alkalmazások
- Microsoft Rewards
- Milyen okostelefont vegyek?
Új hozzászólás Aktív témák
-
PumpkinSeed
addikt
válasz
attis71
#2573
üzenetére
Mivel a fejlődésed érdekében nem szeretném megcsinálni helyetted itt egy részletes magyarázat:
(Ha bárminemű hibát találtok benne javítsátok én se vagyok túl nagy szakértő, illetve a kódom nem egy professzionális kód amelynek a futásideje n elemű tömb esetén is 1 nanomásodperc, úgy kérném véleményezni, hogy kezdő vagyok.)Adott az a[] tömb amiben bizonyos számú szám tárolódik. Ezen kívül létrehozol egy tömböt ami ugyan annyi elemet tárol mint az a tömböd, legyen mondjuk res[sizeof(a)]; Ha jól tudom C++-ban a sizeof függvény határozza meg a tömb méretét. Azért kell ugyan annyi eleme legyen a result tömbnek mint az eredeti tömbnek, mert tegyük fel, hogy egy ismétlődő elem sincs ezért mindent át kell másolni. (Nem tudom, hogy C++-ban hogyan néznek ki a dinamikus tömbök, vagy vektorok, vagy van-e megoldás erre.) Majd következik a program lényegi része. Kezdődik egy for ciklussal, amely végig indexeli a result tömböt i-től sizeof(a)-ig. Mivel az első elem átmásolásakor biztos nem lesz ismétlődés így egy if feltételben akár meg is lehet adni, hogy csak a második lefutás után vizsgálja meg az értéket, így az első futás egyszerűen res = a(i);. A következő futás lesz az érdekes ugyanis ide kell egy új for ciklus ahol ismét beindexeled a res[] tömböt, de j-től csak i-ig mész el. Itt megvizsgálod, hogy a[k] == res[j];,(a k változó a későbbiekben lesz érdekes érdemes 1-re deklarálni.) ha igen akkor egy változót ami most mondjuk cnt növeled eggyel, cnt++. Ha ennek a for ciklusnak a végén a cnt értéke 0 akkor a res tömbben az adott a(i) még nem szerepel ha 0-nál nagyobb akkor már szerepel. Értelemszerűen jól működő kód esetén ez nem lehet nagyobb 1-nél. Majd a cnt változót nullázod, ugyanis ha mindig benne hagynád az értéket akkor az első egyezés után soha többet nem másolna át értéket.
Itt fontos rész következik, ha a cnt értéke mint már mondottam 0-nál nagyobb akkor k++ ha viszont 0 akkor előbb átmásolod res(i) = a[k]-val az értéket majd utána k++.Remélem érthető volt és tudtam vele segíteni.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Villanyszerelés
- ingyenes webtárhely és játékszerver
- Bambu Lab 3D nyomtatók
- EAFC 26
- Projektor topic
- sziku69: Fűzzük össze a szavakat :)
- Víz- gáz- és fűtésszerelés
- 4K vs 8K – Megéri-e a 8K TV 2026-ban?
- A jövőben nem csak a gazdagok kiváltsága lehet az Intel CPU-k tuningja
- Milyen notebookot vegyek?
- További aktív témák...
- 3-in-1 PRÉMIUM USB-C HUB /Samsung Dex, MacBook, Surface, Chromebook ,Huawei,Motorola
- Üvegfólia,hidrogél fólia: iPhone ,Honor,Google Pixel,,Nothing Phone,Motorola, Samsung telefonokhoz
- 2TB HDD 100/100 - Több darab!
- Gigabyte AORUS 16X - Core i9 14900HX - 32gb ram - RTX 4090 (175W) 1TB SSD + 2027 januárig gyári gar
- SEAGATE ST500DM002 SATA III 500 GB 3,5 HDD
- Új monitor állvány- elegáns megoldás a dupla A/4-es papírcsomag helyett - csak össze lett szerelve
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RX 9060XT 16GB GAMER PC termékbeszámítással
- 27% - Dell Alienware AW2524HF 500Hz GAMING IPS Monitor! 25" 1920x1080 / 0.5ms / FreeSync
- AKCIÓ! Lenovo Ideapad Gaming 3 15ACH6 notebook - R7 5800HS 16GB DDR4 1012GB SSD RTX 3050 4GB
- AZONNALI SZÁLLÍTÁS Eredeti Microsoft Office 2019 Professional Plus
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

