Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Nyiscsák #2557 üzenetére
Nincs mit!
Mindig kerüld el ezeket a system(...) jellegű függvényhívásokat, mindig megoldható másképp, könyvtári függvényekkel is.
Ez egy feleslegesen erőforrásigényes rendszerhívás, ráadásul NEM platformfüggetlen.Jester01-nek igaza van, lehet tovább egyszerűsíteni és gyorsítani, így még jobb:
int tobbszor( int* pTomb, int size )
{
int i, j;
for ( i = 0; i < size; i++ ){
for ( j = i+1; j < size; j++){
if (pTomb[j]==pTomb[i])
return 1;
}
}
return 0;
}Tehát a belső for ciklusban i+1-től vizsgálódom, felesleges újra és újra végigmenni az egész tömbön, ráadásul így eleve az aktuális tömb utántól indul a vizsgálat.
======
(#2556) Jester01: you're right.
Először arra gondoltam, az úgy nem jó, mert nem rendezett a tömb, aztán rájöttem, hogy ez baromság, mert egyszer már az elejétől végigszaladgáltunk, minek újból, kicsit fáradt vagyok...
-
Sk8erPeter
nagyúr
válasz
Nyiscsák #2546 üzenetére
Ezt a
system("PAUSE");
baromságot nagyon gyorsan felejtsd el (egyszer össze kéne számolni, hányszor hangzott el ez a topikban).
Gondolom valami gyökér tanár mutatta ezt a szarságot, vagy valami gány fórumon szedted össze.
Ott van helyette pl. a getchar();Ezenfelül jobb lenne, ha azonnal visszatérnél, amint egyezést találtál egy korábbi számmal (minek végigmenni rajta teljesen?).
if (pTomb[j]==pTomb[i])
ez a feltételvizsgálat nálad legalább egyszer mindenképp igaz lesz, amikor önmagával hasonlítod az elemet, felesleges ezt vizsgálni.
Szóval így is lehet:
int tobbszor( int* pTomb, int size )
{
int i, j;
for ( i = 0; i < size; i++ ){
for ( j = 0; j < size; j++){
if (i!=j && pTomb[j]==pTomb[i])
return 1;
}
}
return 0;
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Call of Duty: Black Ops 7
- Samsung Galaxy A54 - türelemjáték
- Android szakmai topik
- Székesfehérvár és környéke adok-veszek-beszélgetek
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- PlayStation 5
- Milyen légkondit a lakásba?
- World of Tanks - MMO
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Gran Turismo
- További aktív témák...
- Gamer PC-Számítógép! Csere-Beszámítás! R5 5600X / RX 7600 / 32GB DDR4 / 1TB M.2 SSD
- Acer Nitro 5 AN515 I7 9 gen 32 gb 1650
- Lenovo ThinkPad X13 Gen 2 i5-1145G7 16GB 512GB FHD+ 100% sRGB - 1 év garancia
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB DDR5 RAM RTX 5070 12GB GAMER termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest