May 1, 2025, Thursday, 120

PP 2017 Zadanie 5

From Łukasz Graczykowski

(Difference between revisions)
Jump to: navigation, search
Line 7: Line 7:
…<br>
…<br>
</code>
</code>
-
 
+
<br>
-
 
+
'''Do wykonania:'''<br>
 +
* Stworzyć (dynamicznie) tablicę liczb rzeczywistych (float) o rozmiarze danym liczbą zbadanych studentów i wczytać do niej z zewnętrznego pliku dane.
 +
* Wypisać na ekran tablicę danych – funkcja zewnętrzna:<br>
 +
<code>void wypisz(const float* tab, int n)</code> ('''1 p.''')
 +
* Obliczyć i wypisać na ekran wartość średnią wczytanej próbki danych – funkcja zewnętrzna:<br>
 +
<code>float srednia(const float* tab, int n)</code> ('''1 p.''')
 +
*vObliczyć i wypisać na ekran odchylenie standardowe wartości średniej (jak policzyć odchylenie standardowe – patrz Uwaga 1 poniżej) – funkcja zewnętrzna
 +
float odchStd(const float* tab, int n).  (1 p.)
 +
* Zaimplementować funkcję sortującą dane za pomocą algorytmu sortowania przez wstawianie, tzw. Insert Sort (patrz Uwaga 2 poniżej) – funkcja zewnętrzna
 +
void sortuj(float* tab, int n). (1.5 p.)<br>
 +
<br>
 +
Program powinien działać w pętli <code>while</code>, a każda z powyższych opcji powinna być realizowana za pomocą odpowiedniej opcji używając <code>switch-case</code>. ('''1.5 p.''')
 +
Plik z danymi należy ściągnąć z:<br>
 +
[[http://www.if.pw.edu.pl/~lgraczyk/PP2016/lab05/wzrost.txt http://www.if.pw.edu.pl/~lgraczyk/PP2016/lab05/wzrost.txt]]
<html>
<html>

Revision as of 18:25, 9 April 2017

Urząd statystyczny postanowił, w ramach okresowego badania populacji, zmierzyć wzrost pewnej reprezentatywnej grupy studentów. Do opracowania wyników badania niezbędne jest: policzenie średniego wzrostu studentów z badanej próbki, odchylenia standardowego wartości średniej, oraz posortowanie danych.
Plik z danymi ma następujący format:
liczba_studentów
wzrost1
wzrost2


Do wykonania:

  • Stworzyć (dynamicznie) tablicę liczb rzeczywistych (float) o rozmiarze danym liczbą zbadanych studentów i wczytać do niej z zewnętrznego pliku dane.
  • Wypisać na ekran tablicę danych – funkcja zewnętrzna:

void wypisz(const float* tab, int n) (1 p.)

  • Obliczyć i wypisać na ekran wartość średnią wczytanej próbki danych – funkcja zewnętrzna:

float srednia(const float* tab, int n) (1 p.)

  • vObliczyć i wypisać na ekran odchylenie standardowe wartości średniej (jak policzyć odchylenie standardowe – patrz Uwaga 1 poniżej) – funkcja zewnętrzna

float odchStd(const float* tab, int n). (1 p.)

  • Zaimplementować funkcję sortującą dane za pomocą algorytmu sortowania przez wstawianie, tzw. Insert Sort (patrz Uwaga 2 poniżej) – funkcja zewnętrzna

void sortuj(float* tab, int n). (1.5 p.)

Program powinien działać w pętli while, a każda z powyższych opcji powinna być realizowana za pomocą odpowiedniej opcji używając switch-case. (1.5 p.) Plik z danymi należy ściągnąć z:
[http://www.if.pw.edu.pl/~lgraczyk/PP2016/lab05/wzrost.txt]


Lista kroków (przykład dla n-elementowej tablicy):
K01: Dla j = n - 1, n - 2, ..., 0: wykonuj K02...K04
K02: x ← tablica[j]; i ← j + 1
K03: Dopóki ( i <= n ) ∧ ( x > tablica[i] ): wykonuj tablica[i - 1] ← tablica[i]; i ← i + 1
K04: tablica[i - 1] ← x
K05: Zakończ