Jump to content

Número Primo


Go to solution Solved by HappyHippyHippo,

Recommended Posts

Posted

Olá a todos antes de mais,

Estou a fazer um trabalho para a universidade bastante simples. O objectivo é o utilizador introduzir um valor, e nós dizermos se o número é primo ou não.

Eu desenvolvi um fluxo grama juntamente com uma tabela de verificação e bateu tudo certo.

Desenvolvi o código e algo não está a bater certo, está sempre a devolver a mesma resposta, "O número é primo", independentemente do valor que colocarmos lá. Talvez um par de olhos frescos consiga ver o meu erro.

Desde já muito obrigado pela vossa atenção.

[CHEERS]

# include <stdio.h>
# include <stdlib.h>
# include <iostream>
# include <locale.h>
# include <iomanip>
using namespace std;

int main ()
{
	setlocale(LC_ALL,"");
	
	int n, r, quo, div,result;
	div=2;
	
	cout <<  "Introduza o número a ser verificado: ";
	cin >> n;
	
	do{
		r=n%div;
		quo=n/div;
		div++;
	} while (r!=0 && div<=quo);
	
	if (r!=0||n==2){
		result=1;
	}else{
		result=0;
	}
	
	if (result=0){
		cout << "O número não é primo.";
	}else{
		cout << "O número é primo.";
	}

}
Posted

A tua condição não está propriamente bem feita.

 

Contudo deixo-te um código ao qual poderás dar uma vista de olhos.

 

int numeroLido;
int numeroDeDivisoes = 0;

while(numeroDeDivisoes < 3 && numeroLido != 0)
{
  int aux = numeroLido % 2;
  numeroLido /= 2;
  if(aux == 0) 
    ++numeroDeDivisoes;
  if(numeroLido == 0 && numeroDeDivisões == 2)
  {
    //imprime que é primo e acaba
  }
}

//imprime que nao é primo

 

Este código foi feito por alto e pode ter algum bug

Cumprimentos,
iron

  • Solution
Posted

deixando de parte a qualidade do código original, afinal é um iniciante, o erro está somente numa linha de código:

	if (result=0){
		cout << "O número não é primo.";
	}else{
		cout << "O número é primo.";
	}

responde a esta simples questão : qual é o operador de comparação ?

 

no que toca à resposta anterior, vou assumir que terá sido dada de bom grado por alguém que está a dar os seus primeiros passos, e como tal, terá de ser analisada dentro desses moldes

  • Vote 1
IRC : sim, é algo que ainda existe >> #p@p
Posted

Desde ja muito obrigado pela atenção e pelo tempo disposto.

Operador de comparação ==?

Vou alterar o codigo assim que chegar a casa testar.

Obrigado a todos q perderam 5 min a olhar para o meu codigo.

Cumps,

Machado [CHEERS]

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.