Obliczanie odległości między wartościami w wektorze

0

Witam, na wstępie chciałbym jedynie powiedzieć, że dopiero rozpocząłem nauki z C++ na studiach i niestety napotkałem na problem w jednej z prac domowych.

Praca domowa ma polegać na tym, iż:

Mamy 7 domków: Domek nr 1, domek nr 2, domek nr 3, domek nr 4, domek nr 5, domek nr 6, domek nr 7 - tworzą one więc wektor.
Poza tym domek nr 4 i domek nr 6 nie nadają się do użytku.

Zadanie polega na tym aby dla każdego z tych domków obliczyć sumę odległości od niego do pozostałych, np. dla domka 1 będzie to: 1+2+4+6=13(suma), dla domka 2: 1+1+3+5=10(suma), dla domka 3: 2+1+2+4=9(suma), dla domka 5: 4+3+2+2=11(suma), i dla domka 7: 6+5+4+2=17(suma), tamte pozostałe dwa domki omijamy, bo się nie nadają.

O ile wiem, co normalnie mam zrobić matematycznie i "na chłopski rozum", o tyle nie wiem, w jaki sposób zapisać to w języku C++ aby działało. Poza tym no chcę, żeby to było w miarę proste, żebym mógł to pojąć z obecną, raczej mizerną wiedzą niestety. :/

0

tablice i pętle już miałeś?

0

Tak, tablica i pętla wprowadzona, ale na razie na takich dość prostych przykładach. Do tego zadania jakoś nie mam podejścia, brakuje mi pomysłu jak obliczyć właściwie tą odległość, a dodatkowo pomijać te dwa domki, których nie możemy wykorzystywać.

0

Skąd biorą się liczby które dodajesz, np. "dla domku 1 będzie to: 1+2+4+6, skąd liczby 1, 2 ,4, 6?
Jeśli dana jest jaką tablica odległości między domkami, to zamień każdą odległość do domku nieużywalnego na zero i dodawaj wszystkie odlegości.

0

stwórz sobie tablice bool-i. Niech każdy domek odpowiada jednej wartości w tej tablicy. Dla tej tablicy wykonujesz pętle for. Jeżeli domek jest zdatny do użytku, to wykonujesz kolejna pętle for dla tej samej tablicy. Tam tworzysz zmienną do której sumujesz odległosci. W niej wykonujesz obliczenia. Jak byś nie rozumiał mogę napisać kod ;)

0
bogdans napisał(a):

Skąd biorą się liczby które dodajesz, np. "dla domku 1 będzie to: 1+2+4+6, skąd liczby 1, 2 ,4, 6?

Liczby te biorą się z tego, że:
Mamy najpierw domek 1:
Odległość domku nr 1 do domku nr 2 jest równa: 1
Odległość domku nr 1 do domku nr 3 jest równa: 2
Odległość domku nr 1 do domku nr 5 jest równa: 4
Odległość domku nr 1 do domku nr 7 jest równa: 6
Sumując odległości: 1+2+4+6=13

Analogicznie z resztą.

0

Tak jest na kartce, a w komputerze?
Wszystkie zdania postaci
Odległość domku nr 1 od domku nr 4 jest równa ...
zamień na
Odległość domku nr 1 od domku nr 4 jest równa 0.
I sumuj wszystkie odległości (po wszystkich domkach o innym numerze).

0

Dziękuję za szybkie odpowiedzi, będę kombinował. :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1