[Dante] Opublikowano 30 Grudnia 2005 Zgłoś Opublikowano 30 Grudnia 2005 Doceniłbym każdy rodzaj pomocy, nie proszę o gotowy program, tylko o sugestię, gdyż ciężko mi napisać ten program. Chcę napisać go na instrukcjach if odwołując się do procedur które poprawiają konkretne rodzaje błędów. Program ma być napisany w dowolnym kompilatorze Pascala. Polecenie brzmi: "Napisać program do formatowania tekstu zapisanego w pliku. Program powinien poprawiać wielkość liter w wyrazach (pierwsza litera zdania duża, pozostałe małe), odstępy między wyrazami (zastąpienie ciągu znaków spacji i tabulacji jedną spacją), odstępy związane ze znakami interpunkcyjnymi (brak odstępu przed znakiem i odstęp po nim) oraz odstępy pomiędzy akapitami (zastąpienie kilku kolejnych pustych linii jednym wierszem). Dodatkowo program powinien umożliwić automatyczne zawijanie tekstu do nowej linii po osiągnięciu określonej długości wiersza. Parametry pracy programu (nazwy plików i maksymalna długość wiersza) należy pobierać z argumentów wywołania programu." Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Jastrząb Opublikowano 30 Grudnia 2005 Zgłoś Opublikowano 30 Grudnia 2005 Ja dalbym petle aby leciala po kazdym znaku, zmienna przechowujaca poprzedni znak i sprawdzal co mam teraz i co bylo znak do tylu. Jezeli sa dwie spacje to jedna kasuje, jezeli przed przecinkiem jest spacja to kasuje, jezeli jest jakas litera lub cyfra a przed nia nie ma spacji to ja dodawal itd Analogicznie z wielkoscia liter i enterami Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 31 Grudnia 2005 Zgłoś Opublikowano 31 Grudnia 2005 inaczej sie raczej nie da.... Co Ci po ifach... ify też tam bedą... ale bez pętli lecącej po każdym znaku sie nie obejedzie. W końcu if musi mieć skądś dane do przerabiania.... Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Ragnor Opublikowano 2 Stycznia 2006 Zgłoś Opublikowano 2 Stycznia 2006 Będziesz musiał buforowac wyjście (pamiętac do tyłu więcej niż jedną litere), chyba ze dopuszczane jest dzielenie wyrazu i przenoszenie częsci do nastepnej linii. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
[Dante] Opublikowano 7 Stycznia 2006 Zgłoś Opublikowano 7 Stycznia 2006 OK, dzięki za porady. Nie widzę tego dobrze ale coś postaram się napisać. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Polar Opublikowano 7 Stycznia 2006 Zgłoś Opublikowano 7 Stycznia 2006 Tu aż sie prosi zastosować wyrażenia regularne, ale czy/w jakim stopniu one istniją w pascalu tego nie wiem. A ify zawsze też można dodać. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Ragnor Opublikowano 7 Stycznia 2006 Zgłoś Opublikowano 7 Stycznia 2006 razor1 napisał(a): Tu aż sie prosi zastosować wyrażenia regularne, ale czy/w jakim stopniu one istniją w pascalu tego nie wiem. A ify zawsze też można dodać.Raczej w Pascalu to ich nie ma, chyba że jakieś dodatkowe bibliteki, do takiego zadania najlepszy byłby Perl tam wyrażenia regularne są w standardzie języka i jednym takim wyrażeniem pewnie dałoby się całe zadanie załatwić :). Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...