Código de C/Visual C - Calculo de numeros Primos

Calculo de numeros Primosgráfica de visualizaciones


C/Visual C

estrellaestrellaestrellaestrellaestrella(2)
Publicado el 26 de Agosto del 2002 por Santiago Bruno
12.758 visualizaciones desde el 26 de Agosto del 2002. Una media de 21 por semana
Aplicación desarrollada en C que calcula los numeros primos.

Versión 1
estrellaestrellaestrellaestrellaestrella(2)

Publicado el 26 de Agosto del 2002gráfica de visualizaciones de la versión: Versión 1
12.759 visualizaciones desde el 26 de Agosto del 2002. Una media de 21 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/* Programa para calcular los numeros primos menores que un numero dado */
/* Por Santiago Bruno                                                   */
/* E-mail: banana@radar.com.ar                                          */
/* Bajado de: http://usuarios.arnet.com.ar/sbruno/c                     */
 
#include <math.h>
#include <stdio.h>
#include <errno.h>
 
int esprimo(int[],int);
void wrtar(int[],int);
 
int main(void)
{
double x;
int b,tot, a,e;
 
/* Nota: en este arreglo se almacenan los numeros primos ya calculados,
 si el numero limite para calcular los primos menores es demasiado grande,
 seria conveniente agrandar el arreglo. Si se dispone de muy poca memoria,
 convendria reducirlo. */
 int primos[99999];
 tot = 0;
 e = 2;
 b = 2;
 printf(\"\\nCalcular primos menores que: \");
 
  scanf(\"%i\",&a);
  while (a <3) {
 printf(\"\\nEste numero debe ser mayor o igual a tres, reingreselo: \");
        scanf(\"%i\",&a);
  }
 
printf(\"\\n\");
 
  while (b < a) {
 
if (esprimo(primos,b)==1) {primos[tot] = b; tot= tot + 1;}
b = b+1;
e=2;}
  wrtar(primos,tot);
printf(\"\\nTotal de numeros primos: %i\\n\",tot);
printf(\"\\nProgramado en C Por Santiago Bruno 24 de abril 2001 - Cordoba - Argentina\");
printf(\"\\ne-mail: banana@radar.com.ar \\n\");
return(0);
}
 
int esprimo(int primos[],int a)
 
{
int i,e,p;
 double x;
 e = 2;
 p = 1;
 i = 0;
while (primos[i] <= sqrt(a) && primos[i] != 0) {
  if ((a%primos[i])==0) {p=0;}
  i = i +1;
 }
 return(p);
}
 
void wrtar(int aa[],int N) {
  int i;
      i = 0;
    while (i < N) {
      	printf(\"%i\\t\",aa[i]);
	i = i+1;
    }
}



Comentarios sobre la versión: Versión 1 (2)

Cristobal
10 de Octubre del 2002
estrellaestrellaestrellaestrellaestrella
Este es el codigo correcto para que funcione en Visual C++:

/* Programa para calcular los numeros primos menores que un numero dado */
/* Por Santiago Bruno */
/* E-mail: banana@radar.com.ar */
/* Bajado de: http://usuarios.arnet.com.ar/sbruno/c */

#include <math.h>
#include <stdio.h>
#include <errno.h>

int esprimo(int[],int);
void wrtar(int[],int);

int main(void)
{
double x;
int b,tot, a,e;

/* Nota: en este arreglo se almacenan los numeros primos ya calculados,
si el numero limite para calcular los primos menores es demasiado grande,
seria conveniente agrandar el arreglo. Si se dispone de muy poca memoria,
convendria reducirlo. */
int primos[99999];
tot = 0;
e = 2;
b = 2;
printf("\nCalcular primos menores que:");

scanf("%i",&a);
while (a <3) {
printf("\nEste numero debe ser mayor o igual a tres, reingreselo:");
scanf("%i",&a);
}

printf("\n");

while (b < a) {

if (esprimo(primos,b)==1) {primos[tot] = b; tot= tot + 1;}
b = b+1;
e=2;}
wrtar(primos,tot);
printf("\nTotal de numeros primos: %i",tot);
printf("\nProgramado en C Por Santiago Bruno 24 de abril 2001 - Cordoba - Argentina");
printf("\ne-mail: banana@radar.com.ar \n");
return(0);
}

int esprimo(int primos[],int a)

{
int i,e,p;
double x;
e = 2;
p = 1;
i = 0;
while (primos[i] <= sqrt(a) && primos[i] != 0) {
if ((a%primos[i])==0) {p=0;}
i = i +1;
}
return(p);
}

void wrtar(int aa[],int N) {
int i;
i = 0;
while (i < N) {
printf("%i\t",aa[i]);
i = i+1;
}
}
Responder
Ana
24 de Septiembre del 2003
estrellaestrellaestrellaestrellaestrella
creo que tu logica es muy complicada y el codigo tiene bastantes errores
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s288