Może ktoś widzi bład ?
W pliku dane.txt znajduje się 200 wierszy. Każdy wiersz zawiera 320 liczb naturalnych
z przedziału od 0 do 255, oddzielonych znakami pojedynczego odstępu (spacjami).
Przedstawiają one jasności kolejnych pikseli czarno-białego obrazu o wymiarach 320 na 200
pikseli (od 0 – czarny do 255 – biały).
Napisz program(y), który(e) da(dzą) odpowiedzi do poniższych zadań. Odpowiedzi zapisz
w pliku wyniki6.txt, a każdą odpowiedź poprzedź numerem oznaczającym odpowiednie
zadanie.
Podaj długość najdłuższej linii pionowej (czyli ciągu kolejnych pikseli w tej samej kolumnie
obrazka), złożonej z pikseli tej samej jasności
oto kod :
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
int ile=0;
int maks=0;
int s[320][200];
ifstream we("dane.txt");
for(int i=0;i<320;i++)
{
for(int j=0;j<200;j++)
{
we>>s[j];
}
}
for(int i=0;i<320;i++)
{
for(int j=0;j<199;j++)
{
if(s[j]==s[j+1])ile++;
else if(ile>maks)maks=ile;
}ile=0;
}
cout<<maks<<endl;
return 0;
}
Piksele
Otrzymałeś(aś) rozwiązanie do zamieszczonego zadania? - podziękuj autorowi rozwiązania! Kliknij
-
- Rozkręcam się
- Posty: 39
- Rejestracja: 24 maja 2016, 11:44
- Otrzymane podziękowania: 9 razy
- Płeć:
Re: Piksele
Zastrzeżenie: nie kompilowałem ani nie testowałem twojego kodu.
Wydaje mi się, że pomyliłeś kolejność pętli podczas wczytywania danych. W pliku jest 200 wierszy po 320 liczb, a nie na odwrót. Zewnętrzna pętla powinna być po wierszach.
Ponadto popracuj nad sprawdzaniem dlugosci linii. Nie uwzgledniasz przypadku, gdy linia konczy sie na ostatnim pikselu w kolumnie. Nie uwzgledniasz rowniez przypadku, gdy w jednej kolumnie jest kilka linii roznej dlugosci.
Wydaje mi się, że pomyliłeś kolejność pętli podczas wczytywania danych. W pliku jest 200 wierszy po 320 liczb, a nie na odwrót. Zewnętrzna pętla powinna być po wierszach.
Ponadto popracuj nad sprawdzaniem dlugosci linii. Nie uwzgledniasz przypadku, gdy linia konczy sie na ostatnim pikselu w kolumnie. Nie uwzgledniasz rowniez przypadku, gdy w jednej kolumnie jest kilka linii roznej dlugosci.
Matematyka: Generator zadań - darmowa apka dla Androida generuje losowe zadania i pokazuje pełne rozwiązania
-
- Rozkręcam się
- Posty: 39
- Rejestracja: 24 maja 2016, 11:44
- Otrzymane podziękowania: 9 razy
- Płeć:
Ja się jednak upieram przy swoich spostrzeżeniach.
Napisz sobie ręcznie w notatniku kilka / kilkanaście / kilkadziesiąt przypadków testowych (danych wejściowych) od najprostszych z jedną linią po coraz bardziej złożone z wielu linii w tych samych i różnych kolumnach. Dla testów możesz zmienić wymagane rozmiary pliku (np. zamiast 200x320 zmień na 10x20), a na sam koniec przywrócić właściwe. Zobacz, jakie wyniki da Twój program dla tych testów.
Napisz sobie ręcznie w notatniku kilka / kilkanaście / kilkadziesiąt przypadków testowych (danych wejściowych) od najprostszych z jedną linią po coraz bardziej złożone z wielu linii w tych samych i różnych kolumnach. Dla testów możesz zmienić wymagane rozmiary pliku (np. zamiast 200x320 zmień na 10x20), a na sam koniec przywrócić właściwe. Zobacz, jakie wyniki da Twój program dla tych testów.
Matematyka: Generator zadań - darmowa apka dla Androida generuje losowe zadania i pokazuje pełne rozwiązania