Nie wiem czy dobrze zrozumiałem twoją sugestię, Przykłady w zadaniu nie służą do sprawdzania poprawności kodu. Są po to, aby lepiej zrozumieć zadanie i aby można było je "obejrzeć" ręcznie na kartce papieru. Takie dane, są siłą rzeczy bardzo podstawowe i oczywiście poprawny kod powinien je też poprawnie rozwiązać ale do samodzielnego sprawdzania poprawności, trzeba samodzielnie stworzyć, wygenerować, wymyśleć więcej a także większe testy. Na tym polega umiejętność programowania, nie tylko kodowanie ale i samodzielne testowanie i sprawdzanie poprawności kodu.
Hej, czy ktoś może mi podpowiedzieć DLACZEGO:
Example
Input:
3
4 + 1 + 2 + 3 + 4 = 14 -> średnia = 14 / 5 = 2,8 najbliżej średniej jest 3
4 + 4 + 3 + 2 + 1 = 14 -> średnia = 14 / 5 = 2,8 najbliżej średniej jest 3
4 + 0 + 3 + 2 + 4 = 13 -> średnia = 13 / 5 = 2,6 najbliżej średniej jest 3
Output:
2 Dlaczego 2 skoro najbliżej średniej jest 3???
3
2 Dlaczego 2 skoro najbliżej średniej jest 3???
No ale w takim przypadku w input powinna być chyba deklaracja wielkości tablicy:
t = 3 liczba pętli
n = 4 liczba komorek w tablicy
średnia = (1 + 2 + 3 + 4) / 4
W przykładzie wpisujesz od razu 5 liczb, nie ma w input liczby która deklaruje wielkość tablicy. W dodatku dwa wyniki w output są nieprawidłowe. Przykład powinien odnosić się do zadania tworząc kompatybilną całość a nie mieszać głowie:P. Narbej nie da się pogodzić treści i przykładu- dlatego tak tu skaucze:D. W każdym bądź razie spróbuję napisać program do treści zadania pomijając exampla.
hm. nie da się "pominąć" przykładu...
chodzi o to, że pierwsza liczba, którą Tobie podają, to po prostu rozmiar tablicy. Jeśli nie wiesz jak zadeklarować rozmiar tablicy w trakcie działania programu, to poczytaj o tablicach dynamicznych lub o kontenerach tablic.
Polecam dodatkowo przeczytać raz jeszcze treść (w szczególności INPUT - który mówi o liczbie "n" od 0 do 100, a dopiero następnie o podaniu n konkretnych liczb ), która z pewnością dobrze tłumaczy polecenie
Pozdrawiam
Pierwsza liczba w input którą podają to liczba pętli =3.
Potem masz 5 liczb w tablicy
4 1 2 3 4 <- 5liczb
4 4 3 2 1 <- 5 liczb
4 0 3 2 4 <- 5 liczb
Nie ma pomiędzy liczbą pętli a wpisywaniem liczb do tablicy liczby jaką ilość zmiennych ma przechowywać tablica.
Czyli prawidłowy Input powinien wyglądać tak:
t = 3 liczba testów
5 wielkość tablicy nr 1
4 1 2 3 4 uzupełnienie tablicy nr 1
5 wielkość tablicy nr 2
4 4 3 2 1 uzupełnienie tablicy nr 2
5 wielkość tablicy nr 3
4 0 3 2 4 uzupełnienie tablicy nr 3
A output tak:
3 pierwsza liczba najbliższa średniej w tablicy nr 1
3 pierwsza liczba najbliższa średniej w tablicy nr 2
3 pierwsza liczba najbliższa średniej w tablicy nr 3
Pozdrawiam:)
edit
anim_90 zajarzyłem chyba o co Ci chodzi:P. To tłumaczyło by tego inputa bez deklaracji tablicy ale wciąż nie kminie skąd w output przy średnich kolejno 2.8, 2.8 i 2.6 liczby najbliżej średniej to w dwóch przypadkach 2 a nie 3 w każdym przypadku:O. Nie kminie też skąd program ma wiedzieć, że chodzi nam o tablice na 5 zmiennych jeśli tak naprawdę w treści zadania jest przedział n od 0 do 100. Skąd program będzie wiedzieć, że użytkownik chce mieć tablicę na 14 zmiennych jeśli tego nigdzie nie zadeklaruje?
1 liczba w każdej linii to ilość liczb w tablicy, jest ich tam po 4 a nie 5. W przykładach masz:
4 (ilość liczb a potem te 4 liczby czyli) 1 +2 + 3 + 4 średnia 10 / 4 = 2.5
4 liczby 4 + 3 + 2+ 1 średnia 10 / 4 = 2.5 ( te same co w pierwszym tylko odwrotna kolejność)
4 liczby 0 + 3 + 2 + 4 średnia 9 / 4 = 2.25
To że we wszystkich przykładach jest po 4 liczby to czysty przypadek.
Uprzejmie proszę o pomoc. Dopiero zaczynam przygodę z programowaniem i nie rozumiem dlaczego SPOJ mi tego nie przepuszcza. Przy podawanych przeze mnie wartościach wydaje się być w porządku.
Oto mój kod: http://ideone.com/T1CEFu38
tu był twój program z prostymi danymi36 - myślę, że na tym przykładzie łatwo znajdziesz błąd
Witam, mam problem z tym zadankiem. Napisałam taki kod: https://ideone.com/KJpKP725. Ale spoj nie chce mi go przyjąć :C. Ktoś wie czemu? Z góry dzięki za pomoc