Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- int rozmiar_wynik;
- struct punkt
- {
- float x;
- float y;
- };
- struct punkt *funkcja(struct punkt *tablica, int rozmiar, float warunek)
- {
- int i, licznik = 0, k = 0;
- float odleglosc;
- for(i = 0; i < rozmiar; i++)
- {
- odleglosc = sqrt(tablica[i].x * tablica[i].x + tablica[i].y * tablica[i].y);
- if(odleglosc < warunek)
- licznik++;
- }
- struct punkt *wynik = (struct punkt*) malloc (licznik * sizeof(struct punkt));
- for(i = 0; i < rozmiar; i++)
- {
- odleglosc = sqrt(tablica[i].x * tablica[i].x + tablica[i].y * tablica[i].y);
- if(odleglosc < warunek)
- {
- wynik[k].x = tablica[i].x;
- wynik[k].y = tablica[i].y;
- k++;
- }
- }
- rozmiar_wynik = licznik;
- return wynik;
- }
- int main()
- {
- int i;
- struct punkt *tab = (struct punkt*) malloc (5 * sizeof(struct punkt));
- tab[0].x = 3;
- tab[0].y = 4;
- tab[1].x = 10;
- tab[1].y = 10;
- tab[2].x = 1;
- tab[2].y = 1;
- tab[3].x = 0;
- tab[3].y = 0;
- tab[4].x = 5;
- tab[4].y = 5;
- struct punkt *wynik = funkcja(tab, 5, 10);
- for(i = 0; i < rozmiar_wynik; i++){
- printf("%f %f\n", wynik[i].x, wynik[i].y);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement