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

FCTRL3 - Dwie cyfry silni (Błędna odpowiedz)

0 głosów
643 wizyt
pytanie zadane 1 marca 2020 w SPOJ przez Glak Nowicjusz (160 p.)
zmienione kategorie 1 marca 2020 przez Patrycjerz

Hej,
Czy jest ktoś w stanie wskazać mi dlaczego przy przesyłaniu kodu otrzymuje informację o błędnym wyniku?
Wejście

W pierwszej linii wejścia znajduje się jedna liczba całkowia D (1≤D≤30), oznaczjąca liczbę przypadków do rozważenia. Opis każdego przypadku składa się z jednej linii, w której znajduje się jedna nieujemna liczba całkowita n (0 ≤ n ≤ 1 000 000 000).

Wyjście
Dla każdego przypadku z wejścia. Twój program powinien wypisać w osobnej linii dokładnie dwie cyfry (oddzielone pojedynczą spacją): cyfrę dziesiątek i cyfrę jedności liczby n! zapisanej w systemie dziesiętnym.

Przykład
Dla danych wejściowych:

2
1
4

poprawną odpowiedzią jest:

0 1
2 4
static void Main(string[] args)
        {
            int liczbaProb = Convert.ToInt32(Console.ReadLine());
            int[] tablica  = new int[liczbaProb];
            for (int i = 0; i < liczbaProb; i++)
            {
                tablica[i] = Convert.ToInt32(Console.ReadLine());
            }
            Console.Clear();
            for (int i = 0; i < liczbaProb; i++)
            {
                double wynikSilnia = 1;
                if(tablica[i]<10)
                {
                    for (int j = 1; j <= tablica[i]; j++)
                    {
                        wynikSilnia = wynikSilnia * j;
                    }
                    int liczbaJednosci = Convert.ToInt32(wynikSilnia % 10);
                    int liczbaDziesiatek = Convert.ToInt32((wynikSilnia % 100) / 10);
                    Console.WriteLine("{0} {1}", liczbaDziesiatek, liczbaJednosci);
                }
                if(tablica[i]>=10)
                {
                    int liczbaJednosci = 0;
                    int liczbaDziesiatek = 0;
                    Console.WriteLine("{0} {1}", liczbaDziesiatek, liczbaJednosci);
                }
            }
        }

Dzieki za pomoc:)

1 odpowiedź

0 głosów
odpowiedź 1 marca 2020 przez Glak Nowicjusz (160 p.)
Okej już rozumiem. Polecenie jest trochę niejasne i trzeba wypisywać wyniki na bieżąco, a nie po podaniu wszystkich liczb które maja być 'potraktowane' silnią.
komentarz 1 listopada 2022 przez Pan_Blazej Nowicjusz (180 p.)
Mylisz się, kolego. Zadanie jest zdefiniowane jasno: najpierw wczytujesz całe wejście, potem masz wypluć całe wyjście. Błąd leży w czym innym (ale nie potrafię powiedzieć w czym - nie znam C#).

Podobne pytania

+1 głos
2 odpowiedzi 1,738 wizyt
pytanie zadane 9 marca 2017 w SPOJ przez VeeZ Nowicjusz (130 p.)
0 głosów
1 odpowiedź 791 wizyt
pytanie zadane 11 września 2019 w C i C++ przez Tedi Użytkownik (580 p.)
0 głosów
2 odpowiedzi 650 wizyt
pytanie zadane 20 stycznia 2020 w SPOJ przez enpikku Nowicjusz (120 p.)

93,425 zapytań

142,421 odpowiedzi

322,647 komentarzy

62,787 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

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...