Kezdőoldal » Számítástechnika » Programozás » Java-ba valaki megtudná oldani?

Java-ba valaki megtudná oldani?

Figyelt kérdés

Írjon olyan függvényt vagy metódust, amely egy természetes számról eldönti, hogy prímszám-e, vagy sem!

(Beépített függvény nem használható) Az egész forráskód kellene nekem. Java programozási nyelven. Köszönöm.


2010. aug. 9. 20:24
1 2 3
 1/22 anonim ***** válasza:
GDF? :D
2010. aug. 9. 20:29
Hasznos számodra ez a válasz?
 2/22 anonim ***** válasza:

Nyelfüggetlen a kód, bármelyik C alapú nyelvhez jó elvileg:

bool IsPrime(int number)

{

if ((number & 1) == 0) return (number == 2);

int num = sqrt((double)number);

for (int i = 3; i <= num; i += 2)

if ((number % i) == 0) return false;


return true;

}

2010. aug. 9. 20:32
Hasznos számodra ez a válasz?
 3/22 anonim ***** válasza:
Azért ha egy prímeldöntésnyit nem tudsz se megoldani se kiguglizni, nem jósolok nagy pályafutást programozás terén.
2010. aug. 9. 20:36
Hasznos számodra ez a válasz?
 4/22 anonim ***** válasza:

Egy teljes C++0x-es kód hátha megijed a kérdező és örökre elfelejti ezt a szakmát. :D


#include <iostream>

#include <vector>

#include <ppl.h>

#include <windows.h>

#include "math.h"


using namespace std;

using namespace Concurrency;


namespace IsPrimeTest

{

class Program

{

public:

bool IsPrime(int number)

{

if ((number & 1) == 0) return (number == 2);

int num = sqrt((double)number);

for (int i = 3; i <= num; i += 2)

if ((number % i) == 0) return false;


return true;

}


void Go()

{

vector<int> primes;

DWORD start, end, msSEQ, msPPL;


Sleep(100);


start = GetTickCount();

for (int i = 2; i < 5000002; i++)

if (IsPrime(i))

primes.push_back(i);

end = GetTickCount();

primes.clear();


msSEQ = (end - start);


start = GetTickCount();

parallel_for(2, 5000002, [&](int i)

{

if (IsPrime(i))

primes.push_back(i);

});

end = GetTickCount();


msPPL = (end - start);


cout << "SEQ: " << msSEQ << " ms" << endl;

cout << "PPL: " << msPPL << " ms" << endl;

system("pause");

}

};

}


using namespace IsPrimeTest;


void wmain()

{

Program().Go();

}

2010. aug. 9. 20:39
Hasznos számodra ez a válasz?
 5/22 anonim ***** válasza:

@20:39-es

Elöszöris ez egy feleslegesen tulbonyolitott kód amit.

másorszdor pedig Java-rol volt szó, nem c++-ről. De biztosan megeröltető lehet már az elsö szót elolvasni:)


a helyes kód pedig:


public static boolean isPrim(int n) {

if (n<2) return false;

boolean p=true;

int i=2;

while (i<=java.lang.Math.sqrt(n) && p) {

p=n%i!=0;

i++;

}

return p;

}

2010. aug. 9. 21:27
Hasznos számodra ez a válasz?
 6/22 A kérdező kommentje:

Csípem a k*rva okosokat, akik játsszák az eszüket. Én csak egy egyszerű program megoldását kértem, hisz végül is ezért találták ki ezt az oldalt.

Jól figyeljetek mert ennyit kértem, közbe megoldottam mert láttam ezt a 4 választ, ami meg se közelítette amit kértem.


package javaapplication1;

import extra.*;

public class Main {


public static void main(String[] args) {

int szam=Console.readInt("Kérek egy számot");

int i;

boolean prim=true;


for (i=2; i<=szam-1;i++){

if(szam%i==0)

prim=false;

}

if (prim) System.out.println("Prím");

else

System.out.println("Nem prím");

}

}



Akkor reagálom már én is a válaszokat:

20:29: Ugye te sem gondoltad komolyan ezt a komoly választ amit odaerőltettél.

20:32: Hasonlítsd össze az én progimmal, ha neked futni fog amit odaba*sztál, über király vagy.

20:36: Ki kérte a komoly hozzáfűznivalódat? Én feladatot kértem, hogy segítsen valaki. De, hát most így vagányabbul érzed magad, hogy lefikáztál, ugye?

20:39: Véleményed le se szarom, nem kértem véleményt vagy talán látsz a kérdésembe, hogy írjál valami hozzáfűzni valót? Amúgy C++ szar, francot se érdekli, Java-t kértem, amit meg oda kopifészeltél, gondolom a gugle barátod jóvoltából nem az én kérdésemre ad segítséget.


Még annyit mondanék, hogy én segítséged kértem, de ennyire kaptam. Dehát Magyarország, én így szeretlek mert ilyen rendes emberek vannak.

2010. aug. 9. 21:32
 7/22 anonim ***** válasza:

Te meg egy bunkó sötét, tajparaszt vagy. Már elnézést.


Tudom, hogy az öntelt pofádnak ez nem elég, de emberek segíteni próbáltak, legjobb tudások szerint. Látszik neked ez nem elég. Uram bocsá, hogy nem egy copy/pastelhető kódot írtak neked, ami bemásolva egyből működik... S a segítségre való probálkozást mivel hálálod? Bunkó, kioktató dumával, és egy gyenge következtetéssel, hogy ilyen Magyarország..

Hát igen, Magyarország tényleg ilyen. Ha önszántából, a semmiért segíteni próbál valaki másokon, de esetleg mégse sikerül, jól oldalbarúgják, hogy ott is maradjon. Gratulálok. :P

2010. aug. 9. 21:38
Hasznos számodra ez a válasz?
 8/22 A kérdező kommentje:
21:27: Odaírtam, hogy nem lehet beépített függvényeket használni. Bonyolultan csináltad meg, beépített függvénnyel 2 sor az egész.
2010. aug. 9. 21:41
 9/22 A kérdező kommentje:
21:38: Most miért szövegelsz nekem, olvasd már el mennyire segítettek, egyik még le is fikázott. Pedig senki nem kérte rá.
2010. aug. 9. 21:44
 10/22 anonim ***** válasza:
21:27: Előtte le volt írva a megoldás csak legfeljebb te nem értesz hozzá. Nyelvfüggetlen volt a kód, szóval ez se kifogás, de ez megint csak a hozzá nem értésedet bizonyítja. A sebesség optimalizációról meg már ne is beszéljümk ugye.
2010. aug. 9. 21:52
Hasznos számodra ez a válasz?
1 2 3

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!