Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

zwracanie wskaźnika

Ostatnio zmodyfikowano 2015-12-04 18:45
Autor Wiadomość
Filippo9669
Temat założony przez niniejszego użytkownika
zwracanie wskaźnika
» 2015-12-02 18:08:16
cześć. borykam się z takim oto problemem: mam pewną funkcję, która chciałbym, aby zwróciła więcej niż jedną wartość. jednocześnie jest na tyle mała, że bez sensu jest deklarować na jej potrzeby strukturę. myślałem o wskaźnikach, ale nie za bardzo wiem, jak potem zajmować się taką funkcją zwracającą wskaźnik.
przykładowa byłaby taka: użytkownik podaje współrzędne dwu punktów (x,y), po czym funkcja znajduje środek odcinka łączącego oba te punkty i zwraca współrzędne tegoż punktu. prosiłbym o pomoc :)

Filip
P-141310
michal11
» 2015-12-02 18:14:20
Wszystko zależy jakie dane chcesz zwrócić, w zależności od tego możesz zwracać vector(tablicę), mapę, krotkę, wartości zwracać przez referencję/wskaźnik jako argumenty.
P-141313
pekfos
» 2015-12-02 19:03:17
przykładowa byłaby taka: użytkownik podaje współrzędne dwu punktów (x,y), po czym funkcja znajduje środek odcinka łączącego oba te punkty i zwraca współrzędne tegoż punktu.
Użyj struktury. To najlepsze rozwiązanie, jeśli chcesz pisać funkcje do operacji na punktach. Jeśli nie chcesz poświęcić na to tych paru linii, możesz użyć gotowej struktury z jednej z multum bibliotek.
P-141320
Filippo9669
Temat założony przez niniejszego użytkownika
» 2015-12-02 19:32:52
to może inaczej. na pierwszym roku mam przedmiot informatyka I i jako, że coś tam już kiedyś programowałem (niedużo) to uznałem, że napiszę kolokwium zaliczające semestr we wcześniejszym terminie. no i przerobienia był pisany na ćwiczeniach program, gdzie wszystko odbywało się w funkcji głównej, ja natomiast dostałem za zadanie zrobić funkcję, która będzie zwracać wartości x,y położenia punktu, na podstawie danych przekazywanych w mainie. ćwiczeniowiec oglądając program powiedział, żeby zrobił prostą funkcję - domyślam się, że zwracającą wskaźnik, a nie strukturę.
P-141321
michal11
» 2015-12-02 19:46:11
Zrób strukturę. Ew. std::pair<>
P-141323
carlosmay
» 2015-12-02 20:28:37
no i przerobienia był pisany na ćwiczeniach program, gdzie wszystko odbywało się w funkcji głównej, ja natomiast dostałem za zadanie zrobić funkcję, która będzie zwracać wartości x,y położenia punktu, na podstawie danych przekazywanych w mainie.
 Wynika z tego, że program jako taki już jest, ale do przerobienia.
Jak w tym programie przechowywane są dane?
P-141330
Filippo9669
Temat założony przez niniejszego użytkownika
» 2015-12-02 22:56:48
utworzone były dwie tablice o rozmiarze n wypełniane liczbami losowymi - jedna tablica odpowiadała za składowe x punktów, druga za y. potem użytkownik podawał jakiś swój punkt (xp, yp), następnie w mainie wyszukiwane były współrzędne punktu najbardziej oddalonego od tego wprowadzonego przez użytkownika. moim zadaniem było stworzyć funkcję zewnętrzną, która właśnie by to robiła - szukała tego najbardziej oddalonego punktu, zwracała współrzędne x,y oraz numer indeksu tablicy, pod którym znajduje się ten punkt.
P-141343
carlosmay
» 2015-12-03 00:15:55
Rozumiem to tak:
Funkcja niech przyjmuje obie tablice, oraz współrzędne punku odwzorowania.
Szukasz w każdej parze wartości maksymalnie odsuniętej od punktu odwzorowania.
Jak znajdziesz to zwracasz nr indeksu (wartości nie musisz bo w tablicach nie nanosisz zmian, więc możesz później odczytać te wartości).

Ew. gdy osobno chcesz szukać w każdej z tablic, to mechanizm będzie ten sam,
tylko funkcja przyjmie jedną tablicę i jedną odpowiadającą współrzędną punktu odniesienia.
Funkcję wtedy wywołujesz dwa razy( raz dla każdej tablicy).

Jednak uważam, że wiązanie takich danych w strukturze jest dużo lepszym rozwiązaniem.
Możesz wtedy napisać dla niej metody, które będą wyliczać różne kombinacje.
P-141345
« 1 » 2
  Strona 1 z 2 Następna strona