- Egy kis depi (szösszenet inkább), remélem elfér itt :) 3#
- Pulsar X2 V3 Size 2 Gamer Egér és Pulsar 8K Wireless Dongle
- Út Korea turistaparadicsomába, amiről talán még sosem hallottál: Csedzsu-sziget
- Perplexity Pro AI képszerkesztési limit -egy képgenerátor függő tapasztalatai
- Adattár lemez előkészítése Windows telepítéshez
- Brogyi: CTEK akkumulátor töltő és másolatai
- Parci: Milyen mosógépet vegyek?
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- sellerbuyer: Milyen mobiltelefont vegyek 2025 ben?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- Kempingezés és sátrazás
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
Ú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
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Nintendo Switch játékkonzol Mário játékkal (kézikonzol)
- Asztali PC , i5 6600 , RX 580 8GB , 24GB DDR4 , 256GB m.2 , 640GB HDD
- Sapphire NITRO+ RX 5700 XT 8GB (sku:11293-03-40G) használt VGA
- Szép! Lenovo Thinkpad T14 G3 "Golyóálló" Üzleti Érintős Laptop 14" -60% i5-1250P 12Mag 32/512 FHD+
- Rockrider AM50s enduro - Teljesen új első maxxis DHF, belsők!
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32GB RAM RTX 3050 6GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone i9 14900KF 64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
- Samsung Galaxy A36 5G / 6/128GB / Kártyafüggetlen / 12Hó Garancia / Bontatlan
- HIBÁTLAN iPhone 15 Pro Max 256GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3497
- Iphone 15 128GB // Számla + Garancia //
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest