Δημοσιεύτηκε: 19 Φεβ 2012, 23:24
από giannosfor
pc_magas έγραψε:Αναδρομή είναι όταν μια συνάρτηση καλεί τον εαυτό της.

Γνωρίζω τι είναι αναδρομή γι'αυτό σε ρώτησα.

Αυτό είναι σε C και χρησιμοποιεί αναδρομή,το είχα φτιάξει σε ένα thread πριν καιρό,
για να ελέγχει αν οι λέξεις είναι αντεστραμμένες.
Κώδικας: Επιλογή όλων
#define bool int
#define TRUE 1
#define FALSE 0

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int compare(char *s,char *st,int i)
{
if ( i > -1 )
{
if ( *s != *st)
return FALSE;
return compare(++s,--st,--i);
}
return TRUE;
}

void check_arg(char *arg[] )
{
if (arg[1] == NULL)
{
printf("Δέν έχει δωθεί όρισμα.\n");
exit(EXIT_FAILURE);
}
if (arg[2] == NULL)
{
printf("Δέν έχει δωθεί δεύτερο όρισμα.\n");
exit(EXIT_FAILURE);
}
if ( strlen(arg[1]) != strlen(arg[2]) )
{
printf("Οι λέξεις δέν έχουν το ίδιο μήκος.\n");
exit(EXIT_FAILURE);
}

}

int main(int argc, char *argv[])
{
int len;
bool cmp;

check_arg(argv);
len = strlen(argv[1]) -1;
cmp = compare( argv[1], argv[2] + len, len);
if ( cmp )
printf("Οι λέξεις είναι αντιστραμένες.\n");
else
printf("Δέν είναι αντιστραμένες.\n");

exit(EXIT_SUCCESS);
}


Καν'το όπως νομίζεις εσύ ξέρεις.

Αντικειμενοστρέφεια είναι ο βοηθός σου.