cancer_X Δημοσ. 15 Νοεμβρίου 2009 Δημοσ. 15 Νοεμβρίου 2009 Γειά σας. θα ήθελα να ρωτήσω αν μπορεί κάποιος να με βοηθήσει στο παρακάτω πρόβλημα. έχουμε την διεπαφή με κύριο πρόγραμμα το: > #include<stdio.h> #include<conio.h> #include<dos.h> #include<stdlib.h> #include <time.h> #include "sorting_methods.h" #define N 30000 int getUniqueNumber(int p[N], int i); main() { int i,p[N]; long t0,t1,dt; //dt posos xronos perase struct time t; FILE *f; randomize(); gettime(&t0); t0=(360000*t.ti_hour+6000*t.ti_min+100*t.ti_sec+t.ti_hund); for (i=0;i<N;i++) { p[i] = getUniqueNumber(p,i); f=fopen("C:\\results.txt","w"); } bubblesort_int(p,N); gettime(&t); t1=(360000*t.ti_hour+6000*t.ti_min+100*t.ti_sec+t.ti_hund); getch(); return 0; } int getUniqueNumber(int p[N], int i) { int x,j, found; do { x=random(32768); found = 0; j=0; while (j<=i && found==0) { if (p[j]==x) found = 1; else j++; } }while (found == 1); return x; } και στην διεπαφή την συνάρτηση: > void bubblesort_int(int *s,int n) { int i,j,temp,o; for (i=1;i<n;i++) { printf("\n i=%d",i); for(o=0;o<n;o++) { printf("%.2d",s[o]); } for (j=n-1;j>=i;j--) { if (s[j-1]>s[j]) { temp=s[j-1]; s[j-1]=s[j] ; s[j]=temp ; } } } } το πρόγραμμα ορίζει εναν πινακα ακεραιων p[] τον οποίο ταξινομει με την μέθοδο της φυσαλίδας ,η συνάρτηση της φυσαλίδας έχει αναπτυχθεί και δηλωθεί στην διεπαφή sorting_methods.h οπως την παραθέτω παραπάνω, στην συνέχεια αποδίδονται αρχικές τιμές με την συνάρτηση getUniqueNumber που έχει αναπτυχθεί κάτω απο την main.πρέπει να υπολογίζουμε τον συνολικό χρόνο ταξινόμησης με την συνάρτηση gettime(δεν προσμετράτε ο χρόνος απόδσης τιμών(γιαυτό και η αφαίρεση),τα αποτελέσματα θα γράφονται στο αρχείο results.txt. Μπορεί κάποιος να με βοηθήσει ,γιατί δεν μου τρέχει το πρόγραμμα; ευχαριστώ.
cancer_X Δημοσ. 15 Νοεμβρίου 2009 Μέλος Δημοσ. 15 Νοεμβρίου 2009 αμα σου πω τωρα δεν ξέρω τι ειναι αυτοοοο
virxen75 Δημοσ. 15 Νοεμβρίου 2009 Δημοσ. 15 Νοεμβρίου 2009 αμα σου πω τωρα δεν ξέρω τι ειναι αυτοοοο όταν γράφεις τον κώδικα σου εδώ πατάς πρώτα από το γκρι πλαισιο πιο πάνω το # σου εμφανίζει σε αγκύλες (CODE)(/CODE) ανάμεσα τους γράφεις τον κώδικα σου π.χ. (CODE) #include <stdio.h> (/CODE) Υ.Γ. αντί (,) εσύ θα βλέπεις [,] το έκανα σκόπιμα για να σου εξηγήσω
karabouzouk... Δημοσ. 16 Νοεμβρίου 2009 Δημοσ. 16 Νοεμβρίου 2009 Δεν μου βρίσκεται πρόχειρος compiler τώρα αλλά αν θέλεις μπορείς να μας πεις τι error σου έβγαλε μήπως καταλάβω.. είσαι σίγουρος ότι έχεις γράψει σωστά το #include "sorting_methods.h" γιατί μην ξεχνάς ότι πρέπει να γράψεις ολόκληρο το path μέσα (π.χ #include "C:/methods/sorting_methods.h") ή να το βάλεις μεσα σε κάποιο φάκελο του compiler (ίσως..)..
cancer_X Δημοσ. 17 Νοεμβρίου 2009 Μέλος Δημοσ. 17 Νοεμβρίου 2009 οταν κανω compile μου πεταει λαθος unresolved external int bubblesort_int κ μολις βαλω την συναρτηση μεσα σε // στο σημειο που την καλω στην main κανει κανονικο compile :/
georgemarios Δημοσ. 17 Νοεμβρίου 2009 Δημοσ. 17 Νοεμβρίου 2009 ο λινκερ δε μπορει να βρει το object (.o) που περιεχει το implementation της bubblesort_int. Εχεις συμπεριλαβει στο προτζεκτ το .c (ή .cpp) που βρισκεται το σώμα της συναρτησης; 'Η αν το κανεις απο command line, βάζεις και το .c αρχειο στην εντολη για το compile? πχ, αν χρησιμοποιεις gcc κανεις κατι παρομοιο με αυτο: $ gcc -Wall main.c bubblesort.c -o [font=Trebuchet MS]myapp [[/font]code]
cancer_X Δημοσ. 17 Νοεμβρίου 2009 Μέλος Δημοσ. 17 Νοεμβρίου 2009 βασικά χρησιμοποιώ τον c++ builder 6,'εχω δημιουργήσει την main και την διεπαφή και τα έχω αποθηκεύσει μαζί σε ένα project. τα κάνω build αλλά δεν...
cancer_X Δημοσ. 17 Νοεμβρίου 2009 Μέλος Δημοσ. 17 Νοεμβρίου 2009 το cpp > [/color]#include "sorting_methods.h" void bubblesort_int(int *s,int n) { int i,j,temp,o; for (i=1;i<n;i++) for (j=n-1;j>=i;j--) if (s[j-1]>s[j]) { temp=s[j-1]; s[j-1]=s[j] ; s[j]=temp ; } }
virxen75 Δημοσ. 17 Νοεμβρίου 2009 Δημοσ. 17 Νοεμβρίου 2009 το αρχείο sorting_methods.h εννοώ ή έστω τα περιεχόμενα του και όχι τον κώδικα της εφαρμογής
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.