cichy024 Napisano Czerwiec 11, 2010 Zgłoś Share Napisano Czerwiec 11, 2010 Witam proszę o pomoc tak jak w temacie. Treść zadań 1. Oblicz i wyświetl średnią wieku osób w pliku mamy.txt (pierwsza liczba to nr osoby następnie jest imię a później wiek). 2. Oblicz ile jest dziewczynek a ilu chłopców w noworodki.txt Link z plikami: http://rapidshare.com/files/397554371/Pasc...adania.rar.html Chodzi mi o ogólne zarysy programu a szczególnie jak z pliku tekstowego wyciągnąć sam wiek oraz rodzaj płci. Proszę o szybką pomoc. Link do komentarza Udostępnij na innych stronach More sharing options...
Seraphis Napisano Czerwiec 11, 2010 Zgłoś Share Napisano Czerwiec 11, 2010 W obu przypadkach bedzie podobnie: 1. wczytujesz linia po linii z pliku txt, tu masz, jak to zrobic: http://www.ks-ekspert.pl/artykuly/programo...c-3.aspx?page=4 2. z kazdej wczytanej linii wyciagnac odpowiednie dane (w pierwszym przypadku zawartosc po drugiej spacji, w drugim - po pierwszej: c - dziewczynka, s - chlopiec), tu masz jak to zrobic: http://www.programowanie.virtual.avx.pl/index.php?page=1060 Link do komentarza Udostępnij na innych stronach More sharing options...
cichy024 Napisano Czerwiec 11, 2010 Autor Zgłoś Share Napisano Czerwiec 11, 2010 Dzięki za poradniki z drugim zadaniem nie będzie problemu jednak nie wiem w 1 zad jak określić pętle żeby wyciągała tylko wiek ponieważ nie jest on zawsze na tej samej pozycji. Potrzebuję się dowiedzieć jak określić żeby czytał wartość po 2 spacji. Link do komentarza Udostępnij na innych stronach More sharing options...
Seraphis Napisano Czerwiec 11, 2010 Zgłoś Share Napisano Czerwiec 11, 2010 Wczytujesz cala linie (zdaje sie to bylo readln()), potem ustawiasz licznik spacji na 0 i sprawdzasz petla, czy dany znak w ciagu jest spacja (czyli jest rowny ze znakiem ' '), jesli tak, to zwiekszasz licznik o 1. W momencie, kiedy petla natrafi na druga spacje, licznik zostanie zwiekszony do 2 i nastepne znaki beda znakami wieku. Robisz wiec w tej petli warunek if(licznik_spacji = 2) i w nim dokonujesz tego sumowania wieku. Potem tylko dzielisz te sume przez sume wszystkich matek i masz szukana wartosc Link do komentarza Udostępnij na innych stronach More sharing options...
cichy024 Napisano Czerwiec 11, 2010 Autor Zgłoś Share Napisano Czerwiec 11, 2010 Ok wielkie dzięki za pomoc. Wiedziałem że na tym forum można liczyć na innych Link do komentarza Udostępnij na innych stronach More sharing options...
cichy024 Napisano Czerwiec 12, 2010 Autor Zgłoś Share Napisano Czerwiec 12, 2010 Próbowałem zrobić 2 zadanie jednak coś nie gra proszę o sprawdzenie programu i podanie przyczyny program zad2; var ld,lch:integer; i,sapcaj:byte; t1:string; f:text; begin ld:=0; lch:=0; assign(f,' ścieka dostępu do pliku noworodki); reset(f); while not eof(f) do begin while not eoln(f) do begin i:=length(t1); begin if t1:=' ' then spacja:=1; if spacja:=1 do begin i:=spacja+1; if t1:='c' then lch:=lch+1 else ld:=ld+1; end; end; end; writeln('Liczba dziewczyn= ',ld); writeln('Liczba chłopców= ',lch); readln; end. Link do komentarza Udostępnij na innych stronach More sharing options...
centyl Napisano Czerwiec 12, 2010 Zgłoś Share Napisano Czerwiec 12, 2010 Na pierwszy rzut oka masz literówki przy deklaracji zmiennej sapcaj:byte; Powinno być spacja:byte; Reszta wydaje się OK, ale jeszcze czegoś poszukam Link do komentarza Udostępnij na innych stronach More sharing options...
cichy024 Napisano Czerwiec 12, 2010 Autor Zgłoś Share Napisano Czerwiec 12, 2010 Literówka musiała się przydarzyć przy wpisywaniu na forum bo w programie nie wyświetla komunikatu o błędzie. Link do komentarza Udostępnij na innych stronach More sharing options...
gus Napisano Czerwiec 12, 2010 Zgłoś Share Napisano Czerwiec 12, 2010 W instrukcjach warunkowych powinno być '=' zamiast ':=', chyba że to też błąd przy przepisywaniu. Napisz dokładniej co ci nie działa: nie kompiluje się, daje zły wynik, wyrzuca jakiś wyjątek? Link do komentarza Udostępnij na innych stronach More sharing options...
cichy024 Napisano Czerwiec 13, 2010 Autor Zgłoś Share Napisano Czerwiec 13, 2010 nie kompiluje się wyrzuca błąd właśnie w instrukcji if. Zmieniłem tak jak radziłeś i teraz wyskakuje tylko FATAL: COMPILATION ABORTED Link do komentarza Udostępnij na innych stronach More sharing options...
gus Napisano Czerwiec 14, 2010 Zgłoś Share Napisano Czerwiec 14, 2010 Jeszcze po IF 'warunek' musi być THEN zamiast DO Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.