Ú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!
- Samsung Galaxy S24 - nos, Exynos
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Elektromos cigaretta 🔞
- Megjött a Red Magic kompakt táblagépe az EU-ba
- Macska topik
- Óra topik
- Milyen TV-t vegyek?
- BMW topik
- exHWSW - Értünk mindenhez IS
- Gyorsabb és drágább - kezünkben a Samsung Galaxy S23
- További aktív témák...
- Konica Bizhub C220 - A3 fénymásoló
- Samsung Galaxy A23 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- AKCIÓ! MSI Z690 i7 12700K 32GB DDR4 1TB SSD RX 6800 16GB Phanteks P600S Cooler Master 750W
- Bomba ár! Dell Inspiron 15 5578 2in1: i7-7GEN I 16GB I 256SSD I 15,6" FHD Touch I Cam I W11 I Gari!
- BESZÁMÍTÁS! LENOVO Ideapad Gaming 3 notebook - i5 11320H 16GB DDR4 256GB+1TB SSD GTX 1650 4GB WIN11
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest