diff --git a/tablica/main.cpp b/tablica/main.cpp index 358c7ba..55e6937 100644 --- a/tablica/main.cpp +++ b/tablica/main.cpp @@ -1,24 +1,54 @@ #include + using namespace std; -int main() { - int ip = 3, podzielniki[ip]; +int main() +{ + int a, b, n; - //podaj podzielniki - cout << "Podaj " << ip << " podzielniki: "; - for (int i = 0; i < ip; i++) { + cout << "Przedzial od "; + cin >> a; + cout << "Do "; + cin >> b; + + cout << "Ilosc podzielnikow: "; + cin >> n; + + if (n <= 0) { + cout << "Liczba podzielnikow musi byc wieksza od zera!" << endl; + return 1; + } + + int podzielniki[100]; + cout << "Podaj " << n << " podzielniki: "; + for (int i = 0; i < n; i++) { cin >> podzielniki[i]; + if (podzielniki[i] == 0) { + cout << "Podzielnik nie moze byc zerem!" << endl; + return 1; + } } - //wyswietl podzielniki - cout << "Podzielniki: "; - for (int i = 0; i < ip; i++) { - cout << podzielniki[i] << " "; + int tablica[100], index = 0; + for (int i = a; i <= b; i++) { + int podzielny = 1; + for (int j = 0; j < n; j++) { + podzielny *= (i % podzielniki[j] == 0); + } + if (podzielny) { + tablica[index++] = i; + } } - cout << endl; - - //podaj przedzial + if (index == 0) { + cout << "Brak liczb podzielnych przez wszystkie podane podzielniki w podanym przedziale." << endl; + } else { + cout << "Liczby podzielne przez wszystkie podane podzielniki w przedziale " << a << " - " << b << ": "; + for (int i = 0; i < index; i++) { + cout << tablica[i] << " "; + } + cout << endl; + } system("pause"); return 0; diff --git a/tablica/main.exe b/tablica/main.exe index 227ba75..8bf8cf5 100644 Binary files a/tablica/main.exe and b/tablica/main.exe differ