


Még csak érintettük ugyan a tömböket, de ezzel a programmal talán kicsit jobban látható, hogyan is lehet a külön-külön már megtanult dolgokat összerakni.
A program sorsol 5 véletlenszerű számot, majd megvizsgálja, hogy volt e már, ha volt, akkor húz másik számot, majd sorbarendezzük azokat és végül következik a kiíratás.
Kód: Egész kijelölése
/*******************************************************************************
* Lottósorsolás - C nyelven
*
* Lottósorsolás - véletlenszámok példa program
*
* Copyright (C) 2019 skamilinux.hu
******************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <time.h> //a random számokhoz kell
int main(){
unsigned i,j,tmp,huzas,lottoszam[5];
srand(time(0)); //enélkül a sor nélkül mindig ugyanaz a szám jönne ki
lottoszam[0]=((rand()%90)+1); //kap egy kezdeti értéket az első elem
for(i=0; i<5;)
{
huzas=((rand()%90)+1); //kihúzzuk a számot
for (j=0; j<i; j++) //megnézzük, hogy volt e már, ha igen, akkor újat húzunk
{
if(lottoszam[j]==huzas)
{
lottoszam[j]=((rand()%90)+1);
i--;
}
}
lottoszam[i]=huzas;
i++;
}
//sorbarendezés
for (i=0; i<5; i++)
{
for(j=0; j<5; j++)
{
if(lottoszam[j]>lottoszam[j+1])
{
tmp=lottoszam[j];
lottoszam[j]=lottoszam[j+1];
lottoszam[j+1]=tmp;
}
}
}
//lottoószámok kíírása
for(i=0; i<5; i++)
{
printf("\n\t Az %d. lottoszam: %d \n", i+1, lottoszam[i]);
}
return 0;
}