[Curso] Introducción a la programación en C (VIII)

Moderadores: Kravenbcn, largeroliker, fidelcastro, cerealkiller, pspCaracas, m0skit0, LnD, ka69, zacky06

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por m0skit0 »

Ahí mejor :)

PD: esas llaves del while, por favor, que me ponen enfermo cada vez que las veo :cry:
Imagen

Avatar de Usuario
dark_sasuke
Moderador Global
Moderador Global
Mensajes: 3380
Registrado: 03 Sep 2009, 02:13
Twitter: D4rkyt0

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por dark_sasuke »

m0skit0 escribió:Ahí mejor :)

PD: esas llaves del while, por favor, que me ponen enfermo cada vez que las veo :cry:


como diga profe !!!

y sigo pensando el de los numeros primos, alguna pista :mrgreen: :D
Imagen

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por m0skit0 »

Bueno, la pista es lo que ya te hemos dicho. Me explico mejor: los números son infinitos, por tanto hay infinitos primos. Así que si vas buscando tal y como lo has hecho, siempre va a haber un primo mayor que el que has puesto... ¿Hasta dónde?
Imagen

Avatar de Usuario
dark_sasuke
Moderador Global
Moderador Global
Mensajes: 3380
Registrado: 03 Sep 2009, 02:13
Twitter: D4rkyt0

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por dark_sasuke »

Spoiler:

Código: Seleccionar todo

#include <stdio.h>

int main(int argc, char* argv[])

{

int  num_insertado, bucle = 2;
   
//bienvenida al programa y escaneo del numero
printf("bienvenido a este programa :)\n");
printf("por favor inserte un numero entero : ");
scanf("%d", &num_insertado);

          
if (num_insertado==bucle)

   printf("\ntu numero es primo\n");

while(num_insertado%bucle++!=0)

{   
   printf("tu numero NO es primo\n");

}


   return 0;
      
 
}
 


Asi creo que esta bien :)
Imagen

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por m0skit0 »

Ya aparenta mucho mejor. Efectivamente había que usar un bucle ;)

Código: Seleccionar todo

if (num_insertado==bucle)

Te sobra.

Código: Seleccionar todo

while(num_insertado%bucle++!=0)
{
    printf("tu numero NO es primo\n");
}

Flooder, eres un flooder xD ¿Para qué imprimes por cada vuelta de bucle eso? Si mientras se cumpla num_insertado%bucle++!=0 el número es primo, no lo contrario.

Además, te falta poner cuándo es primo, que sólo lo pones cuando es 2 :tongue:
Imagen

Avatar de Usuario
finfantasy
Habitual
Habitual
Mensajes: 153
Registrado: 15 Oct 2009, 19:00

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por finfantasy »

Tú programa sólamente imrpimirá el 2 cómo primo, como bien dice m0skit0.

Fijate que un número NO es primo si es divisible por algún número (entre 2 y ?!?!? << aquí esta la mitad del problema) que no sea el 1 o él mismo.
Para darte alguna pista más, si estoy mirando si el 25 es primo haría... 25%2 = 0? no, pues sigo. 25%3 = 0? no, pues sigo. 25%4 = 0? no, pues sigo. 25%5 = 0? sí, ya no hace falta que siga mirando, el número NO es primo.

Por otro lado, miremos qué pasa con un número primo: por ejemplo, el 23.
23%2 = 0? no, sigo. 23%3 = 0? no, sigo. 23%4 = 0? no, sigo. Hace falta que siga mirando? Si la respuesta es NO, dónde me he parado?.

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por m0skit0 »

Efectivamente. En realidad lo tiene casi hecho, sólo que no se da cuenta :D
Imagen

Avatar de Usuario
dark_sasuke
Moderador Global
Moderador Global
Mensajes: 3380
Registrado: 03 Sep 2009, 02:13
Twitter: D4rkyt0

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por dark_sasuke »

weno esto es lo logrado hasta el momento:

Spoiler:

Código: Seleccionar todo

#include <stdio.h>

int main(int argc, char* argv[])

{

int  num_insertado, bucle = 2;
   
//bienvenida al programa y escaneo del numero
printf("bienvenido a este programa :)\n");
printf("por favor inserte un numero entero : ");
scanf("%d", &num_insertado);

   
while(num_insertado%bucle++!=0)

{   

if(num_insertado==bucle)   
   
   printf("\ntu numero es primo");
else

   printf("\ntu numero NO es primo");

}

   return 0;
      
 
}
 


joder este si me a jodio xDDD
Imagen

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por m0skit0 »

¿Por qué te empeñas en imprimir dentro del bucle? ;)
Imagen

Avatar de Usuario
dark_sasuke
Moderador Global
Moderador Global
Mensajes: 3380
Registrado: 03 Sep 2009, 02:13
Twitter: D4rkyt0

Re: [Curso] Introducción a la programación en C (VIII)

Mensaje por dark_sasuke »

es que weno imprimo fuera del bucle, y cuando no es primo lo dice correctamente, pero al ser primo manda el printf del else varias veces, y al final el printf del IF :( , aunque pasa iwal imprimiendo dentro del bucle :S , buff ta duro ta duro pero me gusta que si no, ni lo intentaba xD
Imagen

Responder