duplicado
Publicado por denis (3 intervenciones) el 27/06/2008 22:49:25
Buenas tardes:
Me he topado con un problema que no se como resolver espero me puedan hechar una mano:
La computadora debe llenar al azar un vector con N elementos enteros positivos sin repeticion en rango de 1 a N, Hacer el programa:
#define N 10
int evalua( int *, int );
int main( )
{
int m[ N ] = { 0 };
register int i;
srand( time(NULL) );
for ( i = 0; i < N; i++ ) {
m[i] = 1 + rand() % N;
if ( evalua( m, i ) )
i--;
}
/* muestro los elementos */
for ( i = 0; i < N; i++ ) {
if ( i % 5 == 0 )
printf( " " );
printf( "%2d ", m[i] );
}
getch();
return 0;
}
/* Esto devuelve 1 si un anterior esta duplicado 0 caso contrario */
int duplcado( int * m, int lim ) {
int evalua( int *m, int lim ) {
register int i;
for ( i = 0; i < lim; i++ ) {
if ( m[lim] == m[i] )
return 1;
}
return 0;
}
Me he topado con un problema que no se como resolver espero me puedan hechar una mano:
La computadora debe llenar al azar un vector con N elementos enteros positivos sin repeticion en rango de 1 a N, Hacer el programa:
#define N 10
int evalua( int *, int );
int main( )
{
int m[ N ] = { 0 };
register int i;
srand( time(NULL) );
for ( i = 0; i < N; i++ ) {
m[i] = 1 + rand() % N;
if ( evalua( m, i ) )
i--;
}
/* muestro los elementos */
for ( i = 0; i < N; i++ ) {
if ( i % 5 == 0 )
printf( " " );
printf( "%2d ", m[i] );
}
getch();
return 0;
}
/* Esto devuelve 1 si un anterior esta duplicado 0 caso contrario */
int duplcado( int * m, int lim ) {
int evalua( int *m, int lim ) {
register int i;
for ( i = 0; i < lim; i++ ) {
if ( m[lim] == m[i] )
return 1;
}
return 0;
}
Valora esta pregunta


0