• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Funkcja minimum z tablicy wskaźniki C++

Object Storage Arubacloud
0 głosów
518 wizyt
pytanie zadane 25 grudnia 2020 w C i C++ przez dark41 Użytkownik (760 p.)

witam

mam napisać:

funkcja uogólnionej minimum_z_tablicy. informacje o początku i rozmiarze tablicy przekazuj za pomocą 2 wskaźników pokazujących na pierwszy element w tablicy oraz miejsce tuz za końcem tablicy

int tab [10];

tab[0] =7           tab[1]=33 ..............

int m = minimum_z_tablicy(tab , tab + 10)

 

Są święta i mam ograniczony kontakt z wykładowcą a nie rozumiem po co w argumentach podawać wskaźniki

jest jakaś funkcja wyciągająca minimum z tablicy z pomocą wskaźników, normalnie zrobiłbym tak ale bez wskaźników

int min = int tab[0]

for (int i =0; int <10; int++){

int min = min > tab[i]

}

 

2 odpowiedzi

0 głosów
odpowiedź 25 grudnia 2020 przez forvev Początkujący (390 p.)
Nie lepiej przekazać całą tablice do funkcji za pomocą argumentu "tab" i wtedy szukać w niej minimum? Bo ten zapis "tab+10" wydaje się być zbędny, gdyż za pomocą tego pierwszego argumentu przekażesz co trzeba( tylko musisz odpowiednio zapisac tą tablice jako wskaźnik).
komentarz 26 grudnia 2020 przez j23 Mędrzec (194,920 p.)

Nie lepiej przekazać całą tablice do funkcji za pomocą argumentu "tab" i wtedy szukać w niej minimum?

A skąd będziesz wiedzieć, jak duża jest ta tablica? Masz dwie opcje: przekazać dodatkowy parametr określający wielkość tablicy lub  przekazać wskaźnik na koniec zbioru.

komentarz 26 grudnia 2020 przez forvev Początkujący (390 p.)
Będę wiedział, bo zadeklarował sobie tablice o rozmiarze 10, a więc w argumencie dajemy początkowy adres komórki(ja w tym przykładzie tab), a wewnątrz funkcji działamy na zasadzie wskaźnik-przesunięcie.
komentarz 26 grudnia 2020 przez j23 Mędrzec (194,920 p.)
Podejrzewam, że wartość 10 to tylko przykład, a funkcja powinna być w stanie obsłużyć różnej wielkości tablice.
komentarz 26 grudnia 2020 przez forvev Początkujący (390 p.)
To w takim przypadku dynamiczne alokowanie pamięci, co wydaje mi się lepszym i wydajniejszym sposobem na zajmowanie szufladek w pamięci. Chyba, że są lepsze i wydajniejsze sposoby, o których jeszcze nie wiem;)
komentarz 26 grudnia 2020 przez j23 Mędrzec (194,920 p.)
Nie wiem, co tu ma dynamicznie alokowana pamięć do rzeczy. OP ma napisać funkcję szukającą wartości minimalnej w jakimś zbiorze liczb określonego dwoma wskaźnikami wskazującymi na jego początek i koniec. I tyle. A jaki typ pamięci zastosujesz jest tutaj bez znaczenia.
–1 głos
odpowiedź 25 grudnia 2020 przez TOWaD Mądrala (5,700 p.)
edycja 25 grudnia 2020 przez TOWaD
struct tablicaint {

tablica (const size_t size){
ptrbegin = new int [size+1];
ptrend = ptrbegin+size;
}
int operator [] ..... //edit
void sort () ...... //edit
int ptrbegin*{nullptr};
int ptrend*(nullptr};
~tablica(){
ptrend=nullptr;
delete ptrbegin;
ptrbegin=nullptr;
}
}

pewnie oto coś takiego (nie wiem czy kod do końca poprawny bo nie kompilowałem)chodzi bardzo użyteczne choć std::set jest znacznie lepszy

edit :: operatory w opusieMagnum lub cpp0x.pl

komentarz 26 grudnia 2020 przez j23 Mędrzec (194,920 p.)
Co? Nie pomyliłeś wątków?
komentarz 26 grudnia 2020 przez TOWaD Mądrala (5,700 p.)

po prostu nie wiedziałem jak inaczej wskazać 1miejsce za końcem tablicy, na logikę to miejsce już  nie należy do tablicy. Ale doba po prostu nie wiem.

Podobne pytania

0 głosów
1 odpowiedź 1,069 wizyt
0 głosów
2 odpowiedzi 945 wizyt
pytanie zadane 24 sierpnia 2018 w C i C++ przez Hrabia_ Nowicjusz (120 p.)
0 głosów
1 odpowiedź 644 wizyt
pytanie zadane 25 października 2016 w C i C++ przez victordeleco2 Użytkownik (920 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...