21 / 30
May 2021

Przeciez ich liczba jest nieokreslona. Gdyby byla podana to bylaby okreslona…

OK, źle zrozumiałem.

Tylko w czym tkwi problem:

“Object reference not set to an instance of an object”

Mniej więcej wiem o co chodzi, ale okazuje się, że w tym przypadku “mniej więcej” to zbyt mało.
W Visual Studio błąd nie występuje i wydaje się, że wszystko działa.

Komunikat nie jest rzeczywiscie bardzo przyjazny, ale można sie domyslac, ze czegos nie ma.
O C# nie wiem za dużo, ale podejżewam ze chodzi caly czas o to samo - nieokreśloną liczbę linii.
Co sie stanie gdy na Twojej maszynie zamiast wpisac dane wejsciowe dasz enter.
Czy program jest przygotowany na nieokresloną liczbę linii? (np. 7 albo 97)

Nie znam CSHARP-, ale z treści Twojego kodu domyślam się, że przygotowałeś go na 100 zestawów. W przykładzie, który udostępniłeś dajesz mu 5 zestawów i program się wywala, bo brakuje mu ich jeszcze 95. Gdy w pętli w Twoim kodzie licznik ustawiłem na 5 wszystko poszło dobrze. Po prostu jak napisał pawoj20, program NAPRAWDĘ musisz przygotować na NIEOKREŚLONĄ liczbę danych. Wiem, jak to zrobić w C++, w CSHARP Ci nie pomogę

Tak jak w każdym języku można to zrobić na 1000 i jeden sposobów, tak i w c# też można.

W C++:

string linia;
while (cin >> linia)

Oczywiście powyższy sposób w c++ jednak nie zadziała.
w C++, możn np tak:

while (cin >> symbol >> liczba1 >> liczba2) 

W twoim wypadku, możesz np sprawdzić co wczytałeś i jeżeli (s == null) to przerwać pętlę - break;
No i pętla powinna być nieskończona np while (true).

Możesz też od razu w pętli sprawdzać:

while ((s = ConsoleReadline.....) != null) {
    ....

I wtedy nie potrzebujesz już pętli for (…100 …)
Można też wpisać odpowiednie hasło - najlepiej in English - do googli i znaleź inne, może lepsze te pozostałe 999 sposoby.

Wystarczył if (s==null) break;
Pętla nie musiała być nieskończona.

Dzięki wszystkim za pomoc:)

1 year later

Witam, chciałbym aby ktoś mnie nakierował jak zrobić aby wyjście zostało wyświetlone na końcu programu a nie podczas jego działania. Czy mam użyć tablic,czy da się to zrobić bez ich użycia.
Dziękuje z góry za odpowiedz

Zależy czy pytasz ogólnie, czy pod kątem rozwiązywania zadań na spoju?
Za każdym razem, jak wywołujesz endl wszystko co zostało wysłane na ekran zostanie wyświetlone. Zamień endl na " " to zobaczysz różnicę.

Jeśli jednak pytasz pod kątem spoja, to nie musisz się tym przejmować. Spokojnie możesz wyświetlać wynik zaraz po jego obliczeniu. To nawet lepiej, bo nie musisz tworzyć dodatkowej tablicy do trzymania wyników.

Dodatkowa uwaga: wszystkie komentarze typu: Podaj liczbę, które nie są wspomniane w specyfikacji wejścia lub wyjścia spowodują wynik Błędna odpowiedź.