Potrebno je napraviti program slican Bingu i probao sam na ovaj nacin:
[code]
#include <stdlib.h> /* koristimo funkciju rand() /
#include <time.h> / koristimo funkciju time() */
#define MIN 1
#define MAX 48
int f()
{
static int i=0;
++i;
return i;
}
void main ()
{
int unesenibrojevi[6], generisani[25],i,c,brojac=0;
srand(time(0));
printf(“Molimo Vas da unesete Vasih 6 brojeva, od 1 do 48.\n”);
for(i=0;i<6;i++)
scanf("%d",&unesenibrojevi[6]);
for(i=0;i<25;i++)
{
generisani[i] = MIN + rand() % MAX ;
printf(“Broj je: %d \n”, generisani[i]);
}
for(i=0;i<25;i++){
if(unesenibrojevi[i]==generisani[i])
brojac=brojac+1;
else printf(“Nemate pogodaka\n”);
printf(“Pritisnite bilo koju tipku za kraj %d\n”,brojac);
system(“Pause”);
}
}[/code]
Interesuje me samo kako porediti clanove niza ? dakle svaki broj da se poredi sa svakim clanom drugog niza ?
hvala unaprijed
Moras da uradis na primer for u for stim sto imaju dve promnnjive za index tako da bi u unutrasnjem foru poredio index-e a samim tim i vrednosti nizova sa istim index-ima.
max=25; for(i=0;i<max;i++) { for(j=0;j<max;j++) { if(i==j) { printf(generisani[i])); //ili printf(generisani[j])); zavisi sta ti treba } } }
ne znam da li je isprana sintaksa ali princip je taj sigurno. Srecno
for(i=0;i<25;i++){
for(j=0;j<6;j++)
{
if(unesenibrojevi[j]==generisani[i])
printf(“Imate pogodjenih brojeva %d”,brojac++);
else printf(“Nemate pogodaka\n”);}
Ovo sam probao ali ne ide :S
EDIT: U zadatku ja ukucam 6 brojeva od 1-48, a program generise 25 slucajnih brojeva i onda mi kaze koliko sam imao pogodjenih brojeva.
Moras da uradis debug step by step daj mi .c na [email protected] da uradim debug
Brate poslao sam ti email pa pogledaj
Gotovo trebalo bi da uradis da brojevi koji se unose budu u domenu do broja i vrednosti 45…i ako se unese veci od 45 da brojac vrati za jedno mesto u nazad
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#include <ctype.h>
#define MIN 1
#define MAX 48
int f()
{
static int i=0;
++i;
return i;
}
void main ()
{
int unesenibrojevi[6], generisani[25],i,j,brojac=0;
srand(time(0));
printf(“Molimo Vas da unesete Vasih 6 brojeva, od 1 do 48.\n”);
for(j=0;j<6;j++)
scanf("%d",&unesenibrojevi[j]);
for(i=0;i<25;i++)
{
generisani[i] = MIN + rand() % MAX ;
printf(“Broj je: %d \n”, generisani[i]);
}
for(i=0;i<25;i++){
for(j=0;j<6;j++)
{
if(unesenibrojevi[j]==generisani[i])
{
brojac++;
}
}
}
if(brojac==0)
{
printf(“Nemate pogodaka\n”);
}
if(brojac>0)
{
printf(“Imate pogodjenih brojeva %d\n”,brojac++);
}
printf(“Press Any Key to Continue\n”);
_getch();
}
Evo sa ispravkom akos e pogresi broj da ne puca program tj. da se nastavi
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#include <ctype.h>
#define MIN 1
#define MAX 48
int f()
{
static int i=0;
++i;
return i;
}
void main ()
{
int unesenibrojevi[6], generisani[25],i,j,max=48,brojac=0;
srand(time(0));
printf(“Molimo Vas da unesete Vasih 6 brojeva, od 1 do 48.\n”);
for(j=0;j<6;j++)
{
scanf("%d",&unesenibrojevi[j]);
if(unesenibrojevi[j]>max)
{
j–;
printf(“Broj je: %d je veci od 45 unesite brojeve od 1 do 45!!!\n”, generisani[j]);
}
}
for(i=0;i<25;i++)
{
generisani[i] = MIN + rand() % MAX ;
printf(“Izabrani brojevi su: %d \n”, generisani[i]);
}
for(i=0;i<25;i++){
for(j=0;j<6;j++)
{
if(unesenibrojevi[j]==generisani[i])
{
brojac++;
}
}
}
if(brojac==0)
{
printf(“Nemate pogodaka\n”);
}
if(brojac>0)
{
printf(“Imate pogodjenih brojeva %d\n”,brojac++);
}
printf(“Press Any Key to Continue\n”);
_getch();
}
1 Like
Eh hvala ti drug
Izgleda da ovi blokovi mnogo znace jer sam probao sa dvaput FOR ali nije uspjelo zbog pogresno oznacenih blokova…
Sada se moze uljepsavati i igrati hvala ti jos jednom (Y)