Δημοσιεύτηκε: 19 Φεβ 2012, 23:24
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);
}
Καν'το όπως νομίζεις εσύ ξέρεις.
Αντικειμενοστρέφεια είναι ο βοηθός σου.