Que tal a todos, quisiera que me ayuden con un ejercicio, el cual dice que un usuario introduzca un numero mayor a 0 y que se muestren todos los números primos hasta dicho numero, pero OJO, solo se puede usar el bucle DO WHILE, ningun otro bucle mas, hice algo pero quisiera que me digan en que estoy fallando...
#include <iostream>
using namespace std;
int n,i=1,j=1,res=0,c=0;
int main(int argc, char *argv[]) {
do{
cout<<"Introducir un numero: "; cin>>n;
}while(n<=3);
do{
i=i+1;
do{
j=j+1;
res=i%j;
if(res==0){
c=c+1;
}
}while(j<=i);
if(c==2){
cout<<"\n"<<i;
}
c=0;
}while(i<=n);
return 0;
}