May 15, 2024, Wednesday, 135

C/Zadanie4 2017

From MJanik

Jump to: navigation, search

Na laboratoriach pojawią się następujące elementy: wkaźniki, alokacja pamięci, łańcuchy znaków oraz pierwsza funkcja. Powrócimy również do wczytywania danych z pliku.



Wstęp - wskaźniki do przećwiczenia (1 pkt)

  • Stworzyć zmienną liczba o wartości 3 oraz zmienną liczba2 o wartości 5.
  • Stworzyć wskaźnik wsk_liczba na zmienną liczba.
  • Zmienić wartość zmiennej liczba używając stworzonego wkaźnika: zwiększyć jej wartość o 1.
  • Zmienić wkazanie wkaźnika wsk_liczba na zmienną liczba2.
  • Wypisać zarówno obie liczby jak i wskaźnik na ekran.
  • Stworzyć alokowaną dynamicznie tablicę liczby (ilość elementów w tablicy powinna zostać pobrana z klawiatury). Tablica powinna zostać w całości zainicjowana wartością zmiennej liczba. Tablicję należy wypisać na ekran, następnie zwolnić jej pamięć.
  • Stworzyć ciąg znaków (tablicę nazwa) przechowujący nazwę pliku: "zad08_genesis.txt".
  • Otworzyć i zamknąć plik o zadeklarowanej nazwie. Plik ściągnąć z: zad08_genesis.txt


Analiza tekstu - statystyka (3 pkt)

Napisać program analizujący angielski przekład Księgi Rodzaju. Program powinien wczytać treść księgi z pliku, obliczając: sumaryczną ilość wyrazów, średnią długość wyrazu oraz liczbę wystąpień danego słowa (np. 'God').

  • Pętla while odczytująca wyraz po wyrazie.
  • Obliczanie ilości i sumarycznej długości wyrazów.
  • Obliczanie liczby wystąpień słowa 'God' (dokładnie tak).
  • Obliczanie liczby słów zawierających literę 'i'.
  • Wyświetlenie wyników analizy na ekran.

Funkcja (1 pkt)

  • Stworzyć funkcję
void WypiszStatystyke(char* nazwa_pliku, char* slowo) 

która przyjmuje nazwę pliku oraz szukane słowo a na ekranie wypisuje statystykę.

    • Przenieść odpowiednie części już zrealizowanego programu do wnętrza funkcji.
    • Zamienić ustalone słowo 'God' na dowolne slowo - podawane jako argument.
    • Wywołać funkcję z funkcji głównej main:
WypiszStatystyke("zad08_genesis.txt","God");

Obowiązkowo:

  • Zrozumienie, analiza treści, projekt programu + poprawność i estetyka kodu.