Funcion randomica dev c++

Iniciado por JulCesa, 22 Noviembre 2011, 04:01 AM

0 Miembros y 1 Visitante están viendo este tema.

JulCesa

Hola ncesito una pequeña ayuda con la funcion random en dev c++ quiero que este codigo escoja n y llene el arreglo randomicamente en el metodo MAIN, he leido pero no se como aplicarlo a mi codigo
he leido sonre srand
rand() y otras pero no logro aplicarlo a este programa
desde ya muchas gracias por su ayuda y pos sus respuestas
Citar#include <cstdlib>
#include <iostream>
#include <conio.h>
#include <stdlib.h>
using namespace std;
//metodo donde buscamos el elemento mayor
int mayoritario(int *p, int i, int f, int *mayor) {
if(f-i == 0) {
*mayor = p;
return 1;
}
int m = (i+f)/2, mayor1, mayor2, c1, c2;
c1 = mayoritario(p, i, m, &mayor1);
c2 = mayoritario(p, m+1, f, &mayor2);
if(mayor1 == mayor2) {
*mayor = mayor1;
return c1 + c2;
}
else{
if(c1>c2) {
*mayor = mayor1;
return c1-c2;
}
else {
*mayor = mayor2;
return c2-c1;
 }
}
}

bool comparar(int *p, int n, int mayor) {//comparamos el arreglo con todos los numeros del vector guardados en el arreglo y miramos cual esta repetido
int c=0;
for(int i=0; i<n; i++) {
 if(p == mayor) {
  c++;
 }
}
return (c>n/2);
}

int main() {
int *p, n;//declaracion
printf("\t\tELEMENTO MAYORITARIO USANDO LA TECNICA DIVIDE Y VENCERAS\n");
printf("\t\t==========Paradigmas Y Tecnicas De Programacion=========\t\n");
printf("Digite El Tamano Del Vector \n");//Mensaje
scanf("%d", &n);//Obtencion del tamaño de datos
p = new int [n];//Creacion del vector*/
srand(time(NULL));
n=rand();
for(int i=0; i<n; i++) {//llenado
printf("Digite El Num %d: ",i);
i=rand();
scanf("%d", &p);
}

int mayor, c;
if(mayoritario(p, 0, n-1, &mayor) > 0) {
if(comparar(p, n, mayor)) {
printf("El Elemento Mayoritario Es %d \n ", mayor);
system("PAUSE");
}
else {
printf("No Existe Elemento Mayoritario \n ");
system("PAUSE");
}
}
else {
printf("No Existe Elemento Mayoritario \n");
system("PAUSE");
}
return 0;
}