#include <iostream>
int silnia(unsigned int &x)
{
unsigned int wynik = 1;
for (int i = 1; i <= x; i++)
{
wynik *= i;
}
return wynik;
}
int main() {
short d = 0;
unsigned int* tab = nullptr;
do
{
std::cin >> d;
} while (d > 20 && d <= 0);
tab = new unsigned int[d];
for (int i = 0; i < d; i++)
{
std::cin >> tab[i];
}
for (int i = 0; i < d; i++)
{
std::cout << silnia(tab[i]) / 10 << " " << silnia(tab[i]) - ((silnia(tab[i]) / 10) * 10);
std::cout << std::endl;
}
// end
delete[] tab;
return 0;
}
Zrobiłem wszystko co wiedziałem, że mogę zrobić. Jest to zadanie ze strony www.spoj.com - dokładnie [https://pl.spoj.com/problems/FCTRL3/] "Dwie cyfry silni".
Z czego co widze wszystko działa jak ma działać tzn. zadanie wykonane... Tylko czas się nie zgadza. Zamieniłem int'y na short'y aby mniej pamięci zajmowało (intuicyjnie, czyli nie
wiem czy to coś da). Dodam, że dopiero zaczynam w tym c++.