Dev - C++ - Ayuda con un programa de primos

 
Vista:
sin imagen de perfil
Val: 34
Ha disminuido su posición en 3 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con un programa de primos

Publicado por Vaty (20 intervenciones) el 31/10/2019 23:26:17
Hola, tengo un problema quiero que mi programa me digo si es primo o no,
--------------------------------------------------------------------------------------------------------------------
Si lo es tengo que imprimir p=(numero primo) y q=(0)
-----------------------------------------------------------------------------------------------------------------------------
Si no lo es primero tengo que ver si la suma de 2 primos de los intervalos (2, 3 , 5, 7 , 11) da ese numero e imprimir p=(numero no primo mas grande) q=(numero no primo mas pequeño)
----------------------------------------------------------------------------------------------------------------------------------

Si ese numero no primo no da en la suma entonces imprimir p=(0) y q = (0)

Esto es lo que llevo pero no se en que me estoy equivocando.


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
71
72
73
74
75
76
77
78
//PROGRAMA DE PRIMOS
 
#include <stdio.h>
int primo(int,int,int);
 
int main(){
 
int n,p,q,resultado;
 
scanf ("%d", &n);
 
resultado = primo(n,p,q);
 
printf("%d", resultado);
 
return 0;
}
 
int primo(int n,int p, int q){
 
  int i;
 
  for (i = 0; i <= n; i++){
  	if ((n % i) == 0){
    	n=p;
    	q=0;
	}else if(2+2 == n){
		p=2;
		q=2;
	}else if(2+3 == n){
		p=3;
		q=2;
	}else if(2+5 == n){
		p=5;
		q=2;
	}else if(2+7 == n){
		p=7;
		q=2;
	}else if(2+11 == n){
		p=11;
		q=2;
	}else if(3+3 == n){
		p=3;
		q=3;
	}else if(3+5 == n){
		p=5;
		q=3;
	}else if(3+7 == n){
		p=7;
		q=3;
	}else if(3+11 == n){
		p=11;
		q=3;
	}else if(5+5 == n){
		p=5;
		q=5;
	}else if(5+7 == n){
		p=7;
		q=5;
	}else if(5+11 == n){
		p=11;
		q=5;
	}else if(7+7 == n){
		p=7;
		q=7;
	}else if(7+11 == n){
		p=11;
		q=7;
	}else if(11+11 == n){
		p=11;
		q=11;
	}else
	p=0;
	q=0;
  }
 
  return p,q;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder