Ú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!
- Stabilan induló BIOS-t kaptak a nem induló Socket AM5-ös ASRock alaplapok
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Revolut
- Melyik tápegységet vegyem?
- Tápos kibeszélő offtopik
- Samsung kuponkunyeráló
- Milyen notebookot vegyek?
- HiFi műszaki szemmel - sztereó hangrendszerek
- Fejhallgató erősítő és DAC topik
- Elektromos rásegítésű kerékpárok
- További aktív témák...
- FIFA 16 Playstation 4
- AKCIÓS PRECÍZIÓS KÉSZÜLÉK! 7560 i9-11950H 32GB RAM 1TB SSD Nvidia RTX A3000 6GB 1 év gar
- LG UltraGear Gaming Monitorok : FRISS -30%
- Apple iPhone 13 / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 88%
- Apple iPhone 16 Pro 256GB Natural Titanium használt, karcmentes 6 hónap garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
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... 
