[C++] funkcje tablicowe

damian147
Użytkownik
Użytkownik
Posty: 2
Rejestracja: 20 cze 2017, o 18:47
Płeć: Mężczyzna
Lokalizacja: Daleko

[C++] funkcje tablicowe

Post autor: damian147 »

Witam,
Mam do zrobienia program z wykorzystaniem różnych funkcji tablicowych ale nie wiem jak się za to zabrać. Proszę o pomoc


Napisz funkcje o następujących nagłówkach:

(a)

Kod: Zaznacz cały

double wartosc_towaru(const vector<double> & ilosc, const vector<double> & cena, vector<double> & wartosc)

Funkcja zwraca łączną wartość całego towaru zadanego w tablicach \(\displaystyle{ _{ilosc}}\) i \(\displaystyle{ _{cena}}\) (bierzemy pod uwagę krótszą, gdy są różnej długości!). Funkcja ma wypełniać także kolejne elementy tablicy wartosc wartością kolejnych towarów (element \(\displaystyle{ _{wartosc}}\) obliczany jest jako iloczyn elementów \(\displaystyle{ _{ilosc}}\) i \(\displaystyle{ _{cena}}\)). Jeśli cokolwiek było wcześniej w tablicy \(\displaystyle{ _{wartosc}}\) — ma to zostać usunięte.


(b)

Kod: Zaznacz cały

void ciag_na_szereg(vector<double> & a)

Kolejne elementy tablicy oznaczają wyrazy ciągu {\(\displaystyle{ a_{n}}\)}. Po zakończeniu działania funkcji w tablicy mają być elementy ciągu {\(\displaystyle{ S_{n}}\)} zdefiniowanego jako \(\displaystyle{ S_{n}}\)=
\(\displaystyle{ \sum_{i=0}^{n} {a_{n}}\).
Ostatnio zmieniony 21 cze 2017, o 06:19 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
Ponury123
Użytkownik
Użytkownik
Posty: 128
Rejestracja: 5 lip 2015, o 14:48
Płeć: Mężczyzna
Lokalizacja: nie wiem
Podziękował: 11 razy
Pomógł: 24 razy

[C++] funkcje tablicowe

Post autor: Ponury123 »

Pierwsze pytanie, czy mają to być typowe tablice? Bo z deklaracji funkcji wynika że mają to być wektory.

Ale sama koncepcja dla punktu a) wgląda tak(przyjmuje że dane są w wektorach):

Kod: Zaznacz cały

1. Wyczyszczenie wektora wartosc
2. porównanie długości wektora ilosc i wektora cena
3. zapisz sobie długość krótszego do zmiennej lokalnej size
4. pętla 
for (int i = 0; i < size; i++) {
    wartosc.get(i) = ilosc.get(i) * ilosc.get(i);
    sum += wartość.get(i); // zmienna lokalna przechowująca wartość całego towaru
}     
5. return sum;
Ostatnio zmieniony 20 cze 2017, o 21:38 przez Ponury123, łącznie zmieniany 1 raz.
damian147
Użytkownik
Użytkownik
Posty: 2
Rejestracja: 20 cze 2017, o 18:47
Płeć: Mężczyzna
Lokalizacja: Daleko

[C++] funkcje tablicowe

Post autor: damian147 »

Czy mógłbyś te 3 pierwsze punkty zapisać w c++? Nie bardzo rozumiem o co w nich chodzi (jestem w tym nowy). Dalej może jakoś dam radę
Ponury123
Użytkownik
Użytkownik
Posty: 128
Rejestracja: 5 lip 2015, o 14:48
Płeć: Mężczyzna
Lokalizacja: nie wiem
Podziękował: 11 razy
Pomógł: 24 razy

[C++] funkcje tablicowe

Post autor: Ponury123 »

Kod: Zaznacz cały

1. wartosc.clear();
double size; //utworzenie zmiennej lokalnej wewnątrz ciała funkcji  
2. 
if (ilosc.size() > cena.size()) {
    size = cena.size(); //pkt.3
}
else {
    size = ilosc.size(); // pkt. 3
}

ODPOWIEDZ