Alguem pode me ajudar nesse problema: Faça um programa que leia um número N que o usuário digitar e mostre na tela os N primeiros números primos. Por exemplo digitei 10, entao o programa deve mostrar os 10 primeiros numeros primos.
No momento so consigo determinar se um numero é primo ou não.
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main() {
int i, x;
int div = 0;
do {
cout<<"Digite um numero inteiro e positivo: "<<endl;
cin>>x;
} while (x <= 0);
for (i = 1; i <= x; i++) {
if (x % i == 0) {
div++;
}
}
if (div == 2)
cout<<"O numero e primo"<<endl;
else
cout<< "O numero nao e primo"<<endl;
return 0;
}
olá mateus , eu identifiquei um pequeno erro erro de lógica no seu algoritmo seria na variável x:
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int x = 1
int div = 0
int i
cout<<"Digite um numero inteiro e positivo: "<<endl;
cin>> i;
while(x<=10){
x++
if(x % i == 0){
div += 1
}
if(div == 2){
cout<<"O numero e primo"<<endl;
}
else{
cout<< "O numero nao e primo"<<endl;
}
}
esse 'for' é desnecessário ,você ja está fazendo o loop com while