Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema para mostrar array

Estas en el tema de Problema para mostrar array en el foro de C/C++ en Foros del Web. Hola, se trata de un programita que muestra los 100 primeros números primos. Primero lo hice sin usar ningún array y ahora almacenando los resultados ...
  #1 (permalink)  
Antiguo 19/10/2012, 06:41
 
Fecha de Ingreso: agosto-2012
Ubicación: Alcalá
Mensajes: 37
Antigüedad: 11 años, 8 meses
Puntos: 0
Problema para mostrar array

Hola, se trata de un programita que muestra los 100 primeros números primos. Primero lo hice sin usar ningún array y ahora almacenando los resultados en uno y luego mostrándolos. Pero el caso es que no se muestran, sólo muestra la línea "los 100 primeros números primos son". El código es el siguiente:

Código C++:
Ver original
  1. #include<iostream>
  2. #include<stdio.h>
  3. #include <stdlib.h>
  4. #include <math.h>
  5.  
  6.  
  7. using namespace std;
  8.  
  9. bool primo (int numero)    //funcion que comprueba si un número es primo
  10. {
  11.      bool p=true;
  12.      for (int i=2; i<numero && p!=0; i++)
  13.         if (numero%i==0)
  14.            p=false;  
  15.      return p;
  16. }
  17.      
  18. void escribe (int primos[])        //funcion que escribe un vector
  19. {                                  //en filas de 10 elementos
  20.  for (int i=0; i<100; i++)
  21.      {
  22.      cout<<primos[i]<<" ";
  23.      if (!(i%10)) cout <<endl;
  24.      }
  25.  
  26. }                      
  27. int main()
  28. {
  29.     int cont=0, i, primos [100];
  30.     cout << "Los 100 primeros numeros primos son: "<<endl;
  31.     for (i=1; cont<100; i++)         //se almacenan los numeros primos en
  32.         if (primo (i))               //el vector primos
  33.            {
  34.            cin>>primos[cont];
  35.            cont++;
  36.            }
  37.     escribe (primos);
  38.     system("PAUSE");
  39.     return EXIT_SUCCESS;
  40.  
  41. }

A ver si alguien sabe decirme dónde está el error por que no lo veo.

Pd: ya de paso alguien sabe por qué cuando escribo una cadena de caracteres entre comillas no aparecen las tildes? sale un símbolo raro, tampoco salen los superindices como ² aparece elevado a 1/2...

Gracias.
  #2 (permalink)  
Antiguo 19/10/2012, 08:16
Avatar de cronopiomx  
Fecha de Ingreso: mayo-2012
Ubicación: Programing Cloud
Mensajes: 282
Antigüedad: 12 años
Puntos: 28
Respuesta: Problema para mostrar array

prueba hacer esto, es que estabas leyendo el arreglo por teclado y tu no quieres eso, tu quieres asignarle al arreglo si cada i del for es primo, prueba y me dices

s2
cronos

int main()
{
int cont=0, i, primos [100];
cout << "Los 100 primeros numeros primos son: "<<endl;
for (i=1; cont<100; i++) //se almacenan los numeros primos en
if (primo (i)) //el vector primos
{
primos[cont]=i;
cont++;
}
escribe (primos);
system("PAUSE");
return EXIT_SUCCESS;

}
  #3 (permalink)  
Antiguo 19/10/2012, 09:56
 
Fecha de Ingreso: agosto-2012
Ubicación: Alcalá
Mensajes: 37
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Problema para mostrar array

Efectivamente.. estaba claro, cada vez estoy más tonto...

Gracias :)

Etiquetas: funcion, int
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:16.