• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Sprawdzanie czy Pierwsza - jak rozbudować kod, by działał dla więcej niż jednej liczby?

Object Storage Arubacloud
0 głosów
150 wizyt
pytanie zadane 24 października 2018 w Java przez Tom_Ja Dyskutant (7,970 p.)
zamknięte 24 października 2018 przez Tom_Ja

Mam taki kod:

public class czyPierwsza{
 
    public static boolean czyPierwsza(boolean x, int n) {
        int p = 2;
 
        while (p<n) {
            if (p == n) {
            x = true;
            return x;
        }
            else if (n%p==0) {
            x = false;
            return x;
        }
        ++p;
        return true;
        }
        x = false;
        return x;
    }
 
    public static void main(<a data-cke-saved-href="https://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+string" href="https://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+string">String</a>[] args) {
        int n = 1;
 
        boolean x = false;
 
        czyPierwsza(x, n);
        if (x == true) { 
            <a data-cke-saved-href="https://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+system" href="https://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+system">System</a>.out.println("Liczba " + n + " jest liczbą pierwszą.");
            }
        else <a data-cke-saved-href="https://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+system" href="https://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+system">System</a>.out.println("Liczba " + n + " nie jest liczbą pierwszą.");
 
        }
    }

Jak mogę go zmienić, by obsługiwał nie tylko podaną n=1, ale np. liczby od 1 do 20? Domyślam się, że muszę wykorzystać albo pętlę, albo tablice, ale mam problem z wykonaniem tego.

komentarz zamknięcia: najlepsza

1 odpowiedź

+1 głos
odpowiedź 24 października 2018 przez RafalS VIP (122,820 p.)
wybrane 24 października 2018 przez Tom_Ja
 
Najlepsza

Po pierwsze cos takiego:

    public static void test(boolean b){
        b = true;
    }

    public static void main(String[] args) {
        boolean b = false;
        test(b);
        System.out.println(b);
    }

wypisze false, bo argumenty w Javie sa przekazywane przez wartość, więc Twój kod nie działa.

Co do pytania to jeśli chcesz sprawdzic liczby od 1 do 20 to wrzuć kod w pętle for:

        for(int n = 0; n<20;n++){
            czyPierwsza(x, n);
            if (x == true){
                System.out.println("Liczba " + n + " jest liczbą pierwszą.");
            }
            else {
                System.out.println("Liczba " + n + " nie jest liczbą pierwszą.");
            }
        }

 

Podobne pytania

0 głosów
2 odpowiedzi 545 wizyt
pytanie zadane 27 lipca 2016 w Java przez xydden Gaduła (4,480 p.)
0 głosów
1 odpowiedź 337 wizyt
0 głosów
1 odpowiedź 295 wizyt
pytanie zadane 15 października 2019 w SPOJ przez Rashi Nowicjusz (230 p.)

92,573 zapytań

141,423 odpowiedzi

319,645 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...