Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- void gen_arr(float V[], int n, float dg, float gg) {
- int i;
- srand((unsigned)time(NULL));
- for (i = 0; i < n; i++) {
- V[i] = dg + (float)rand() / RAND_MAX * (gg - dg);
- }
- }
- int sekv_pret(float V[], int n, float x) {
- int i;
- for (i = 0; i < n; i++) {
- if (V[i] == x) {
- return i;
- }
- }
- return -1;
- }
- void swap(float *xp, float *yp) {
- float temp = *xp;
- *xp = *yp;
- *yp = temp;
- }
- void sort(float V[], int n) {
- int i, j;
- for (i = 0; i < n - 1; i++) {
- for (j = 0; j < n - i - 1; j++) {
- if (V[j] > V[j + 1]) {
- swap(&V[j], &V[j + 1]);
- }
- }
- }
- }
- int bin_pret(float V[], int n, float x) {
- int r, l = 0;
- r = n - 1;
- while (l <= r) {
- int m = l + (r - l) / 2;
- if (V[m] == x)
- return m;
- if (V[m] < x)
- l = m + 1;
- else
- r = m - 1;
- }
- return -1;
- }
- int main()
- {
- int i, n, dg, gg;
- float *V, x;
- printf("Unesite zelejni broj elemenata: ");
- scanf("%d", &n);
- V = (float *)malloc(n * sizeof(float));
- if (V == NULL)
- return 1;
- gen_arr(V, n, 0, 10);
- /*for (i = 0; i < n; i++) {
- printf("%f ", V[i]);
- }*/
- /*printf("\nUnesite trazeni element: ");
- scanf("%f", &x);*/
- printf("Element se nalazi na %d. mjestu\n", sekv_pret(V, n, 10));
- sort(V, n);
- /*for (i = 0; i < n; i++) {
- printf("%.2f ", V[i]);
- }*/
- /*printf("\nUnesite trazeni element: ");
- scanf("%f", &x);*/
- printf("Element se nalazi na %d. mjestu\n", bin_pret(V, n, 10));
- free(V);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement