Edytuj stronę Odnośniki Fold/unfold all ODT export Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić. ====== Przykładowe zadania do wykładu 9 - Pliki i strumienie ===== - Napisz program kopiujący zawartość pliku do innego pliku - Napisz program, który do pliku zapisze ''N'' wygenerowanych liczb losowych z przedziału '[A,B]'. Nazwę pliku wynikowego oraz wartości ''A'', ''B'', i ''N'' podaje użytkownik - Napisz program, który wyświetli na ekranie wszystkie komentarze z podanego pliku źródłowego w języku C - Napisz program, który wyświetli na ekranie najdłuższy wyraz z podanego pliku tekstowego. - Napisz program, który wyświetli częstość występowania wszystkich liter alfabetu w podanym pliku tekstowym. - Napisz program, który wyświetla tekst zawarty w pliku HTML pomijając wszystkie tagi, tzn. wyrażenia postaci ''<pewien tekst>''. - Napisz program porównujący dwa pliki znak po znaku. W przypadku pojawienia się pierwszej różnicy program kończy działanie wypisując wartość różniących się bajtów i ich pozycję w pliku (podobnie jak polecenie powłoki Unix/Linux ''cmp'') - Napisz program porównujący dwa pliki linia po linii. Przy napotkaniu pierwszej różniącej się linii program przerywa swoje działanie wypisując różniące się wiersze. - Napisz program, który z pliku wyświetli tylko te linie w których znajduje się pewien wzorzec (podobnie do polecenia ''grep''). - Napisz program wyznaczający wartość średnią wszystkich liczb rzeczywistych zapisanych w pliku. Zakładamy, że plik zawiera wyłącznie liczby w postaci tekstowej odseparowane białymi znakami. - Napisz program, który połączy pomiary zawarte w dwóch plikach. Pomiary zapisane są w postaci tekstowej w rosnącej kolejności, po jednej liczbie w każdym wierszu. Wynikowy plik powinien zawierać wszystkie liczby z obu plików ułożone w rosnącej kolejności. Program powinien działać dla dowolnie dużych plików, przekraczających rozmiarem nawet ilość pamięci operacyjnej. - Załóżmy, że pewien plik zawiera w postaci tekstowej bazę danych medycznych, gdzie w pojedynczej linii zapisane są następujące informacje: nazwisko (nie dłuższe niż 20 znaków), imię (nie dłuższe niż 20 znaków), następnie umieszczona jest liczba całkowita określająca wiek a następnie dwie liczby rzeczywista określające wzrost i wagę. Np.: \\ ''Bond James 33 199.5 85.5''\\ Załóżmy, że plik nie zawiera więcej niż 1000 takich wpisów. * Napisz program, który wyświetli na ekranie w kolejnych liniach imię, nazwisko i [[wp>http://pl.wikipedia.org/wiki/Wskaźnik_masy_ciała|współczynnik masy ciała BMI]] każdego badanego. Dla pacjentów z nadwagą lub niedowagą wyświetlany jest dodatkowo komunikat o przekroczeniu normy. * Napisz program, który wyznaczy średnią wagę i średni wzrost dla wszystkich pacjentów powyżej 30 roku * Napisz program, który wyświetli wpisy w porządku rosnącej wagi ciała * Napisz program, który wyświetli wpisy w porządku alfabetycznym względem nazwisk - Napisz program realizujący prostą bazę danych studentów. Pojedynczy rekord zawiera imię, nazwisko, numer indeksu i średnią z ocen. Program powinien umożliwiać: * dodanie nowego rekordu do bazy * wyświetlenie na ekranie wszystkich rekordów * zapisanie całej bazy do pliku * odczyt bazy z pliku - Napisz program szyfrujący i deszyfrujący tekst zawarty w podanym pliku. Program pobiera nazwę pliku do zaszyfrowania, nazwę pliku do którego zapisze zaszyfrowany tekst oraz słowo-klucz. Komunikat zaszyfrowany przy pomocy danego klucza powinien być możliwy do odszyfrowania wyłącznie po podaniu takiego samego słowa-klucza. Obmyśl samodzielnie algorytm szyfrowania, lub wykorzystaj dowolny znany Ci algorytym lub jego modyfikację (np. szyfr Cezara)