EndriuGiz Opublikowano 20 Listopada 2011 Opublikowano 20 Listopada 2011 Mam takie ćwiczenie kto pomoże w C++ ? Napisz funkcję o następującym nagłówku int baz(int *tab, int n, int dzielnik) która dla tablicy tab o rozmiarze n, zwróci liczbę elementów podzielnych przez dzielnik. [br]Dopisany: 20 Listopad 2011, 16:24_________________________________________________mam program napisany prze kolege ale nie moge wyslac taki sam wiec moze ktos by mi go przerobil? zabardzo sie na tym nie znam wiec moze ktos bardziej ogarniety by mi pomogl ?
zoltax Opublikowano 20 Listopada 2011 Opublikowano 20 Listopada 2011 #include <iostream> using std::cout; using std::cin; using std::endl; int baz(int *tab,int n, int dzielnik) { int d = 0; for(int i=0;i<n;i++) { if(tab % dzielnik == 0) { /// test d++; } } return d; } int main() { int tablica[] = {1,2,3,4,5,6,7,8,9,10}; cout << baz(tablica,10,2) << endl;; } prościej się nie dało Jak będziesz miał jakieś problemy, pisz. Je będę po 21 Tam gdzie masz // test powienno być tab [ i ] a nie samo tab. Nie wiem czemu forum nie wyświetla poprawnie
EndriuGiz Opublikowano 20 Listopada 2011 Autor Opublikowano 20 Listopada 2011 program pokazuje 5 po wykonaniu, to troche zamało, ten moj troche bardziej jest rozbudowany [br]Dopisany: 20 Listopad 2011, 17:20_________________________________________________#include <iostream> using std::cin; using std::cout; using std::endl; int baz (int *tab, int n, int dzielnik) { for (int i = 0; i < n; i++) { tab = rand()%100; } cout<<" Tablica po zapelnieniu: \n"; for (int j = 0; j < n ; j++) { cout<<tab[j] <<", "; } printf("Podaj dzielnik: \n"); cin >> dzielnik; int licznik3=0; for (int x=0; x < n; x++) { if (tab[x] % dzielnik == 0) { licznik3++; } } if (licznik3 > 0) { cout<<" Podzielnych przez " << dzielnik <<" w tablicy jest " <<licznik3 << " liczb "; } else { cout<<" Brak liczb podzielnych przez " <<dzielnik; } } int main (int argc, char* argv[]) { int *tab; int n; int dzielnik; cout<<" Z ilu elementow ma skladac sie tablica? "; cin >> n; tab = new int [n]; baz(tab, n, dzielnik); getchar(); getchar(); }[br]Dopisany: 20 Listopad 2011, 17:25_________________________________________________tam gdzie jest "kropka" ma byc przy tab x w kwadratowych nawiasach[br]Dopisany: 20 Listopad 2011, 17:28_________________________________________________i na gorze tak samo przy tab ma byc i w nawiasach potem =rand.....
zoltax Opublikowano 21 Listopada 2011 Opublikowano 21 Listopada 2011 To znaczy Twój się nie kompiluje ;p Wyrzuca mi błędami: prog.cpp: In function ‘int baz(int*, int, int)’: prog.cpp:11: error: ‘rand’ was not declared in this scope prog.cpp:25: error: invalid operands of types ‘int*’ and ‘int’ to binary ‘operator%’ Ale zauważ. W treści masz napisane: która dla tablicy tab o rozmiarze n, zwróci liczbę elementów podzielnych przez dzielnik. Czyli funkcja ma mieć podaną tablice, i na jej podstawie zwrócić ilość liczb w tej tablicy podzielnych przez dzielnik. int tablica[] = {1,2,3,4,5,6,7,8,9,10}; cout << baz(tablica,10,2) << endl;; Czyli jak masz mój przykład: Mamy zwrócić ilość liczb , które zawierają się w tablicy tablica i są podzielne przez 2. A są to liczby: 2,4,6,8,10. Czyli tych liczb mamy 5. A jednak działa :wallbash: Chyba jednak jest trochę za późno. Jutro odpiszę Ci dokładniej
EndriuGiz Opublikowano 13 Grudnia 2011 Autor Opublikowano 13 Grudnia 2011 Mam następne zadanie, pomoże ktoś? Napisz program, który posortuje n punktów (xi,yi) względem malejącej odległości od punktu centralnego (x0, y0). Program powinien wczytać dane ze standardowego wejścia o następującej postaci: x0 y0 n x1 y1 x2 y2 .... xn yn Na wyjściu program powinien wypisać permutację punktów (x1, y1), ...., (xn, yn): od tych leżących najdalej (x0, y0) do tych leżących najbliżej: x1' y1' x2' y2' ... xn' yn' Przykładowo, dla wejścia: 2 4 3 -10 15 2 5 3 8 Program powinien zwrócić: -10 15 3 8 2 5 Do rozwiązania zadania należy wykorzystać algorytm Insertion Sort. Przyjmij, że n<100. [br]Dopisany: 11 Grudzień 2011, 10:08_________________________________________________i jak ?
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się