- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Samsung Galaxy A56 - megbízható középszerűség
- Bemutatkozott a Poco X7 és X7 Pro
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Szakít a OnePlus és a Hasselblad?
- Google Pixel topik
- Xiaomi 13 - felnőni nehéz
- Realme GT 2 - aláírjuk
- Most a Galaxy S25 FE megjelenésére tippelnek
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
Hirdetés
Új hozzászólás Aktív témák
-
Chipi333
csendes tag
válasz
shinodas #3206 üzenetére
Az srand( time(NULL) ) beállítja a random fv kezdeti értékét az aktuális időre. A rand() pedig generál egy véletlenszámot (ami nem annyira véletlen). A %9 azért kell hogy 0-8 intervallumra és ne az int telje értékkészletére generáljon.
Az srand( time(NULL) ) azért kell mert a rand fv egyébként teljesen determinisztikus, szóval azonos kezdeti értékről indítva mindig ugyanazt a sorozatot generálná. Ezért általában az idő alapján szokás indítani, mert az jó eséllyel minden futtatáskor más lesz.Szerk.: De sokakat megmozgatott ez a téma
-
Chipi333
csendes tag
válasz
shinodas #3153 üzenetére
Hát ez majdnem jó, de tomb[5]-öt sosem fogod megnézni. Szerintem nem érdemes ilyen random konstrukciókkal próbálkozni, mert jó eséllyel benézel valamit. Egy ilyen jellegű próblémát két egymásba ágyazott iterációval szokás megoldani, mert akkor végig mész mindkét tömbön biztosan
-
Chipi333
csendes tag
válasz
shinodas #3151 üzenetére
Az vele a baj, hogy ha tomb egyik eleme sem egyezik a tomb_user első elemével akkor a többit már meg sem fogja nézni, mert egyszer csak i==6 lesz miközben j==0 és kilép a while-ból.
Szóval ezt két egymásbaágyazott for-al kéne, valahogy így:while(i<6)
{
while( j<6)
{
if(tomb[i]==tomb_user[j])
printf("valami");
++j;
}
j=0;
++i;
} -
Chipi333
csendes tag
válasz
Jester01 #3145 üzenetére
"Mivel az értéktartományt osztja szét részekre és az elemeket szétdobálja. Utána pedig az egyes részeket is berendezi. A két rendezésből az egész rendezve lesz. "
Ehhez annyit még hozzátennék, hogy nem két rendezésről hanem n darab rekurzióról beszélünk. A részekre ugzanez a rendezés lesz ráeresztve, majd azoknak a részeire is egészen addig amíg egy-egy részben nem 0-1 elem marad ami már rendezett, és akkor elkezdenek visszatérni.
-
Chipi333
csendes tag
A leírás elég egyértelmű. Gyakorlatilag egy quicksort, csak nem egy hanem több pivotot használ -> 2 helyett több partíciót csinál az elemekből aztán rekurzívan azokat is rendezi, és így tovább. Ha nem ismered a quicksortot akkor először azt nézd meg, és utána érteni fogod.
Aműgy ebbe a topicba szerintem jobban illene a téma: http://itcafe.hu/tema/programozas_forum/hsz_1-50.html
-
Chipi333
csendes tag
válasz
Coconut's #3126 üzenetére
Nem vagyok nagy C-s, de valszeg a beolvasás lenyeli a sorvégét, azt most nem tudnám megmondani ezzel mit kell művelni.
A torlés viszont azért nem megy szerintem, mert az if-esle nek lefelejtetted az else ágát és a sort mindenképpen kiírod az átmeneti fájlba.if(tmp2 == &celpont1 || tmp2 == &celpont2 || tmp2 == &celpont3 || tmp2 == &celpont4)
{
fprintf(tmp, " ");
}
else
{
putc(tmp2[TMP], tmp);
}Szóval ezt így kéne.
Ú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!
- OLED monitor topic
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- India és az AI a McDonald's jövője?
- exHWSW - Értünk mindenhez IS
- Nvidia GPU-k jövője - amit tudni vélünk
- Kedvenc zene a mai napra
- Battlefield 6
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- TCL LCD és LED TV-k
- Sorozatok
- További aktív témák...
Állásajánlatok
Cég: FOTC
Város: Budapest