Ayuda con programa que determine los numeros primos en un rango a,b en C

Iniciado por acer-x, 9 Mayo 2018, 02:06 AM

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

acer-x

necesito hacer un programa en C donde determine cuales son los numeros primos en un rango a y b, lo que pasa es que quiero hacerlo solo con while y en una funcion, lo he intentado pero no me ha dado resultado ningun programa que he hecho, ayudaa :c

Kenji-chan


acer-x

Al final creo que lo he conseguido
ahi esta mi codigo

#include <stdio.h>
#include <stdlib.h>

void funx(int a, int b)

{
int cont=0,primo;
    while (a<b)
    {
        a++;
        primo=1;
        cont=2;
            while (cont<=a/2)
            {
                if(a%cont==0)
                    primo=0;
                    cont++;
            }
            if(primo!=0)
            printf(" %d ",a);
    }
}


int main()
{
    int a,b;
    printf("Ingresar Intervalos(a y b) para determinar la cantidad de numeros primos entre ellos\n");
    printf("Ingrese el intervalo a:");
    scanf("%d",&a);
    printf("\nIngrese el intervalo b:");
    scanf("%d",&b);

    printf("Los numeros primos son : ");
    funx(a,b);

    return 0;
}

Kenji-chan

yo me he echo esta función:

void funx(int a, int b){
int cont=0,primo;
while (a<b){
a++;
primo=1;
cont=2;
while (cont<=a/2){
if(a%cont==0)
primo=0;
cont++;
}
if(primo!=0)
printf(" %d ",a);
}
}


y la he probado junto con la que has hecho y funcionan de la misma manera

Beginner Web

#4
Usted habia especificado que todo el programa debia hacerse con ciclo while y una funcion.

Código (cpp) [Seleccionar]

#include <iostream>

using namespace std;

bool primo(int n);

int main()
{
int v_inicial, v_final;
cout << "Ingrese valor inicial: "; cin >> v_inicial;
cout << "Ingrese valor final  : "; cin >> v_final;
while(v_inicial<=v_final){
if(primo(v_inicial)==true){
cout << v_inicial << " ";
}
v_inicial++;
}
cout << endl;
system("pause");
return 0;
}

bool primo(int n)
{
int i=1, cont=0;
while(i<=n){
if(n%i==0){
cont++;
}
i++;
}
if(cont==2){
return true;
}
else{
return false;
}
}


7w7

0xFer

@Beginner Web No hagas sus tareas, no aprenden, es mejor ver sus códigos y señalar sus errores para que aprendan, de lo contrario el foro se convierte en un lugar donde solo vengan a pedir tareas.
Código (java) [Seleccionar]
int getRandomNumber(){
    return 4; //chosen by fair dice roll
              //guaranteed to be random
}