NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
stesky21
Člen
Avatar
stesky21:23.10.2015 22:29

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

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

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

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

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
Petr Šálek
Člen
Avatar
 
Nahoru Odpovědět
24.10.2015 19:56
Avatar
Odpovídá na stesky21
balaz.marek94:29.10.2015 14:34

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.