Τετάρτη 28 Νοεμβρίου 2012

Βρίσκοντας τον Μέγιστο Αριθμό ενός Πίνακα στη C.

Πόσο συνηθισμένο πρόβλημα είναι να βρεις το μέγιστο αριθμό που υπάρχει σε έναν πίνακα(array).  Εδώ υπάρχει ένα αναλυτικό παράδειγμα που χρησιμεύει για οποιοδήποτε μεγέθους πίνακα.

 Έχουμε ένα πίνακα που το γεμίζουμε εμείς με τιμές(1, 2, 3, 4) και ένα ακόμα τον Y  που το γεμίζουμε με τυχαίες τιμές. Θα βρούμε και για τους δύο πίνακες τον μέγιστο αριθμό. 


#include<assert.h>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

int maxValue(int myArray[], size_t size) {
    /* enforce the contract */
    assert(myArray && size);
    size_t i;
    int maxValue = myArray[0];

    for (i = 1; i < size; ++i) {
        if ( myArray[i] > maxValue ) {
            maxValue = myArray[i];
        }
    }
    return maxValue;
}

int main(void) {
    int i;
    int x[] = {1, 2, 3, 4, 5};
    int *y = malloc(10 * sizeof(*y));

    srand(time(NULL));

    for (i = 0; i < 10; ++i) {
        y[i] = rand();
    }

    printf("Max of x is %d\n", maxValue(x, sizeof(x)/sizeof(x[0])));
    printf("Max of y is %d\n", maxValue(y, 10));

    return 0;
}

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου