Avatar
stesky21
Člen
Avatar
stesky21:

Zdravím , potřeboval bych poradit jak udělat aby mi u daného čísla vypsalo všechny dělitelé.

 
Odpovědět  +1 23.10.2015 22:29
Avatar
Tonda Kozák
Člen
Avatar
Tonda Kozák:

V cyklu pomocí modula kontrolovat čísla od jedničky do poloviny daného čísla a pak přidat číslo samo.

 
Nahoru Odpovědět  +1 23.10.2015 22:32
Avatar
Odpovídá na stesky21
Štefan Pružinský:

Ahoj, tu je celkom jednoduchý spôsob riešenia tvojho problému: http://www.dummies.com/…-number.html
Ak Ti nejde o výpočtovú zložitosť, môžeš postupne deliť zadané číslo číslami od neho menšími a overovať ich zvyšok po celočíselnom delení. :) Dúfam, že Ti moja rada aspoň trochu pomôže. :)

Nahoru Odpovědět 23.10.2015 22:39
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovídá na stesky21
balaz.marek94:

Super nápad na precvičenie! Ak by si náhodou mal záujem, tak ti sem dávam zdroják, ako som to riešil ja. :)

import java.util.Scanner;
import java.util.ArrayList;
import java.util.Collections;

public class Program {
    public static void main(String[] args) {
        ArrayList<Integer> pole = new ArrayList<Integer>();
        System.out.println("Zadaj celé číslo väčšie od nuly: ");
        int mojeCislo = new Scanner(System.in).nextInt();
        int delenec = mojeCislo;
        pole.add(mojeCislo);
        pole.add(1);

        for (int i = 2; i < delenec; i++) {
            if (mojeCislo % i == 0) {
                delenec = mojeCislo / i;
                if (delenec != i)
                    pole.add(delenec);
                pole.add(i);
            }
        }
        Collections.sort(pole);

        System.out.print("Delence sú: ");
        for (int i = 0; i < pole.size(); i++) {
            if (i != pole.size() - 1)
                System.out.print(pole.get(i) + ", ");
            else
                System.out.print(pole.get(i));
        }
    }
}
 
Nahoru Odpovědět 29.10.2015 14:34
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.