Ĺadny brzuch
Witam. Może to zabrzmi śmiesznie, ale mam problem ze zrozumieniem treści owego zadania, głównie początku:
2 Stwórz pole umożliwiające wprowadzenie tekstu (ścieżki do pliku
tekstowego - np. dane.txt), w którym będzie zawarta w pierwszej linii ilość
elementów tablicy A, a w drugiej i następnych liczby naturalne oddzielone
znakiem spacji. Odczytaj ilość liczb, a następnie stwórz dynamiczną tablicę
integer wielkości A i wpisz do niej elementy z pliku dane.txt. Na danych z
pliku dokonaj następujących operacji:
a) znajdź element maksymalny oraz minimalny,
B) rozpiętość danych, czyli różnice pomiędzy elementem max a min,
c) policz wartość średnią elementów z dokładnością do 0.01.
Następnie zapisz te wartości do pliku wyjściowego wyniki.txt â każdą
policzoną wartość w osobnej linii.
Jeśli byłby ktoś na tyle miły, aby przedstawić to zadanie w sposób bardziej zrozumiały dla przeciętnego zjadacza chelba, to byłbym wdzięczny. Program ma być napisany w Visual C++, raczej nie obiektowo (no bo jak?).
Dziękuję serdecznie i pozdrawiam.
Masz napisać aplikację konsolową czy okienkową? Początek sugeruje, że to drugie, ale łatwiej i szybciej będzie w konsoli.
Użytkownik Kozack edytował ten post 18 kwiecień 2009, 14:40
Nie jest to określone. Wolę konsolowo, ale wydaje mi się, że ma być okienkowo.
Ja rozumiem to zadanie tak: masz plik tekstowy, której pierwsza linia ma znaczenie specjalne - określa liczbę pozostałych liczb w pliku. Te pozostałe liczby są zapisane w kolejnych liniach, czyli jest coś takiego:
10 1 5 43 3 23 9 3 99 12 91
Masz zatem 10 liczb naturalnych (1, 5, 43, 3, 23, 9, 3, 99, 12, 91). Tworzysz zatem tablicę dziesięcioelementową i umieszczasz w niej odczytane liczby. Teraz ustawiasz trzy zmienne (max, min i sum), po czym iterujesz po stworzonej tablicy i znajdujesz liczbę maksymalną, minimalną, a przy okazji sumujesz wszystkie liczby. Jak już to masz, to policzenie średniej nie powinno być problemem (suma / liczbę liczb, czyli w przykładzie 289/10 = 28,9) oraz obliczasz rozstęp (czy jak to nazwano u Ciebie - rozpiętość - w przykładzie 99-1 = 98). Teraz wystarczy zapisać w pliku wynik.txt coś takiego:
98 28,9
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
2 Stwórz pole umożliwiające wprowadzenie tekstu (ścieżki do pliku
tekstowego - np. dane.txt), w którym będzie zawarta w pierwszej linii ilość
elementów tablicy A, a w drugiej i następnych liczby naturalne oddzielone
znakiem spacji. Odczytaj ilość liczb, a następnie stwórz dynamiczną tablicę
integer wielkości A i wpisz do niej elementy z pliku dane.txt. Na danych z
pliku dokonaj następujących operacji:
a) znajdź element maksymalny oraz minimalny,
B) rozpiętość danych, czyli różnice pomiędzy elementem max a min,
c) policz wartość średnią elementów z dokładnością do 0.01.
Następnie zapisz te wartości do pliku wyjściowego wyniki.txt â każdą
policzoną wartość w osobnej linii.
Jeśli byłby ktoś na tyle miły, aby przedstawić to zadanie w sposób bardziej zrozumiały dla przeciętnego zjadacza chelba, to byłbym wdzięczny. Program ma być napisany w Visual C++, raczej nie obiektowo (no bo jak?).
Dziękuję serdecznie i pozdrawiam.
Masz napisać aplikację konsolową czy okienkową? Początek sugeruje, że to drugie, ale łatwiej i szybciej będzie w konsoli.
Użytkownik Kozack edytował ten post 18 kwiecień 2009, 14:40
Nie jest to określone. Wolę konsolowo, ale wydaje mi się, że ma być okienkowo.
Ja rozumiem to zadanie tak: masz plik tekstowy, której pierwsza linia ma znaczenie specjalne - określa liczbę pozostałych liczb w pliku. Te pozostałe liczby są zapisane w kolejnych liniach, czyli jest coś takiego:
10 1 5 43 3 23 9 3 99 12 91
Masz zatem 10 liczb naturalnych (1, 5, 43, 3, 23, 9, 3, 99, 12, 91). Tworzysz zatem tablicę dziesięcioelementową i umieszczasz w niej odczytane liczby. Teraz ustawiasz trzy zmienne (max, min i sum), po czym iterujesz po stworzonej tablicy i znajdujesz liczbę maksymalną, minimalną, a przy okazji sumujesz wszystkie liczby. Jak już to masz, to policzenie średniej nie powinno być problemem (suma / liczbę liczb, czyli w przykładzie 289/10 = 28,9) oraz obliczasz rozstęp (czy jak to nazwano u Ciebie - rozpiętość - w przykładzie 99-1 = 98). Teraz wystarczy zapisać w pliku wynik.txt coś takiego:
98 28,9