prim tal program
hej.jeg har lavet et program der kan beregne om et tal som brugeren taster ind er et prim tal.
Problemet er at det ikke virker.
lige meget hvilkken tal man taster ind siger den at talet ikke er et prim tal.
her er koden
#include <cstdlib>
#include <iostream>
using namespace std;
// beregner om "op" kan gå om i "tal"
bool opi(long int op, long int tal)
{
bool rigtig = false;
long int res = 0;
while (tal>res){
res = res + op;
if (tal == res){
rigtig = true;
}
}
return rigtig;
}
//prøver alle tal af
bool beregn(long int input)
{
bool rigtig;
bool svar = false;
long int tael = 1;
long int halv = (input / 2);
while (tael != halv)
{
svar = opi(tael, input);
if (svar == true)
{
rigtig = false;
}
tael += 1;
}
return rigtig;
}
int sporg()
{
cout << "indtast et tal du vil have beregnet: ";
long int input;
cin >> input;
if (beregn(input) == true)
{
cout << "Ja " << input << " er et prim tal!" << endl;
}else{
cout << "Nej " << input << " er ikke et prim tal!" << endl;
}
sporg();
}
int main(int argc, char *argv[])
{
sporg();
return EXIT_SUCCESS;
}
hvis der er nogen der er i tvivl om hvad prim tal er. så er det et tal som kun 1 og den selv kan gå op i f eks. 2, 3, 5, 7
M.V.H Nicklas