• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
June 17, 2025, 23:01:23 pm

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
June 17, 2025, 23:01:23 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[Today at 21:32:50]

[Ψηφιακά Ολοκληρωμένα Κυκ...
by tzortzis
[Today at 21:25:42]

[Εφ.Θερμοδυναμική] Γενικέ...
by PAPARI69
[Today at 20:59:13]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by chris_p30
[Today at 19:46:54]

[Γραφική] Λυμένα θέματα
by okanpala
[Today at 18:56:22]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[Today at 14:25:00]

Αντικατάστασης πυκνωτή σε...
by george14
[Today at 13:58:20]

Πότε θα βγει το μάθημα; -...
by tzortzis
[Today at 13:19:53]

Αποτελέσματα Εξεταστικής ...
by george14
[Today at 12:08:25]

[ΨEE] Γενικές απορίες και...
by Juror8
[Today at 12:06:57]

[Οργάνωση Υπολογιστών] Γε...
by RAFI
[June 16, 2025, 22:46:54 pm]

[Σ.Π.Η.Ε.] Γενικές απορίε...
by Nikos_313
[June 16, 2025, 19:49:00 pm]

[ΘΤΠΑ] Γενικές απορίες κα...
by Nikos_313
[June 16, 2025, 16:56:56 pm]

[Αρχές Οικονομίας] Να επι...
by _Trob
[June 16, 2025, 13:28:21 pm]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[June 16, 2025, 12:13:45 pm]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[June 16, 2025, 01:56:37 am]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
by nmpampal
[June 15, 2025, 06:43:15 am]

Το thmmy.gr στο instagram...
by Mr Watson
[June 15, 2025, 00:50:23 am]

[Λογισμός ΙΙ] Απορίες σε...
by el mariachi
[June 14, 2025, 20:47:07 pm]

ΠΡΟΣΟΧΗ στο ανέβασμα θεμά...
by tzortzis
[June 14, 2025, 16:54:08 pm]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426698
Total Topics: 31710
Online Today: 242
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 60
Guests: 151
Total: 211
nikpapoutsi
nikosmonov
anastas1a
Evripidis
msandr
iliaskou
Tsomp
petrtheo
Zaxarenia
m.renia
evrinasto
iakov
soule
florianm
georsoti
cheinopor
christina02
pavlaras
thomassamaras
dimant
Born_Confused
chris123
Kenedy
theofr
xristostsi03
maria_s
stavr0s16
gntitsios
fivosfivos1
chris_p30
Fidelity
Pcsc
tzortzis
kkotsopo
chaniotism
filkilkis
dioannidi
smanio
Nekt
Mr Z
nasos
grammaths
dimitire
ikallima
engineer2030
Yamal
apol
Apaugasma
plapas
thaliatsk
zille
mpaltzak
Kelly Tsimpouri
AristeidisM
tmpadasn
andreassifo
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt) > [Δομημένος Πρ.] Εργασία Ε 2008
0 Members and 1 Guest are viewing this topic.
Pages: 1 ... 5 6 [7] 8 9 10 Go Down Print
Author Topic: [Δομημένος Πρ.] Εργασία Ε 2008  (Read 17711 times)
vasso
Καταστραμμένος
********
Gender: Female
Posts: 6672


Overambitious doer


View Profile WWW
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #90 on: May 19, 2008, 14:44:27 pm »

Quote from: solli144 on May 19, 2008, 14:33:04 pm
παιδια πρέπει οπωσδήποτε στη malloc να γίνεται typecasting? Δηλαδή  :  p=(* int)malloc(N);
Νομίζω ο Κορτέσης είχε πει ότι γίνεται αυτόματα αν η p έχει δηλωθεί  :   int *p
δηλαδή ότι ο τυπος void γίνεται αυτόματα int σε τέτοια εντολή εκχώρισης.

διορθώστε με αν κανω λάθος

γενικά ναι, πρέπει. Ο κομπάιλερ πετάει σφάλμα, απ' όσο ξέρω...
Logged

Είναι τα βλέφαρά μου
διάφανες αυλαίες.
Όταν τα ανοίγω βλέπω
μπρος μου ό,τι κι αν τύχει.
Όταν τα κλείνω βλέπω
μπρος μου ό,τι ποθώ.
vasso
Καταστραμμένος
********
Gender: Female
Posts: 6672


Overambitious doer


View Profile WWW
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #91 on: May 19, 2008, 14:51:24 pm »

θυμίστε μου λίγο... ανέφερε πουθενά τι τύπου θα είναι τα εισερχόμενα σήματα; δηλαδή αν τα έβαλα ιντ, πειράζει;
Logged

Είναι τα βλέφαρά μου
διάφανες αυλαίες.
Όταν τα ανοίγω βλέπω
μπρος μου ό,τι κι αν τύχει.
Όταν τα κλείνω βλέπω
μπρος μου ό,τι ποθώ.
vasso
Καταστραμμένος
********
Gender: Female
Posts: 6672


Overambitious doer


View Profile WWW
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #92 on: May 19, 2008, 14:52:16 pm »

μπάι δε γουέι, το κομμάτι με την ριαλλοκ είναι ακριβώς 3 σειρούλες κώδικα μέσα σε ένα ιφ...
Αν σας πήρε πάνω από 10 μέσατζ μι.. Smiley
Logged

Είναι τα βλέφαρά μου
διάφανες αυλαίες.
Όταν τα ανοίγω βλέπω
μπρος μου ό,τι κι αν τύχει.
Όταν τα κλείνω βλέπω
μπρος μου ό,τι ποθώ.
Emfanever
Καταστραμμένος
********
Gender: Male
Posts: 5284


Πολίτης


View Profile
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #93 on: May 19, 2008, 14:54:48 pm »

Quote from: vasso on May 19, 2008, 14:51:24 pm
θυμίστε μου λίγο... ανέφερε πουθενά τι τύπου θα είναι τα εισερχόμενα σήματα; δηλαδή αν τα έβαλα ιντ, πειράζει;
Δε νομίζω να πειράζει απλά αν έχεις int τα εισερχόμενα να είναι int και τα στοιχεία του πίνακα
« Last Edit: May 19, 2008, 18:37:35 pm by Emfanever » Logged
vasso
Καταστραμμένος
********
Gender: Female
Posts: 6672


Overambitious doer


View Profile WWW
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #94 on: May 19, 2008, 14:59:48 pm »

Βασικά έβαλα τα σήματα των συναγερμών να είναι int και τα εισερχόμενα float, μια και οι πρώτες τιμές είναι μανίσιες ενώ οι άλλες μπορεί να έχουν μέσα θόρυβο. Άλλωστε, μόνο με int τιμές δεν έχει νόημα το e. (Βασικά βαριέμαι να αλλάξω όλες τις τιμές... )
Logged

Είναι τα βλέφαρά μου
διάφανες αυλαίες.
Όταν τα ανοίγω βλέπω
μπρος μου ό,τι κι αν τύχει.
Όταν τα κλείνω βλέπω
μπρος μου ό,τι ποθώ.
fourier
Guest
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #95 on: May 19, 2008, 19:26:57 pm »

Καποιο καλο παιδι που ξερει απο realloc μπορει να εντοπισει τι λαθος υπαρχει στο πιο κατω κομματι του κωδικα και την 5η φορα που εκτελειται η realloc μου πεταει σφαλμα?

Code:
printf("Den anagnwristhke to shma\n\n");

if (q==0){
WRONG = (float *) malloc(1*sizeof(float));
WRONG[0] = input;
q = 1;
}

else {
WRONG = realloc(WRONG,q+1);
WRONG[q] = input;
q++;
}

Η q ειναι μετρητης λανθασμενων σηματων, με αρχικη τιμη μηδεν. Στο πρωτο λαθος (aka μη αναγνωρισιμο) σημα πληρουται η συνθηκη του if οποτε δημιουργειται με τη malloc δυναμικος πινακας μηκους 1, και στο μοναδικο κελι του, το 0-ικο, καταχωρειται το σημα, ενω ο μετρητης γινεται q=1. Στο δευτερο λαθος σημα, η συνθηκη δεν πληρουται αρα περναμε στο else, οπου η realloc μεγαλωνει τον πινακα κατα 1, δινει στο καινουργιο κελι την τιμη του σηματος, μετα μεγαλωνουμε το μετρητη κατα ενα και φευγουμε...

Μετα απο 5 λανθασμενα σηματα μου πεταει σφαλμα.........
« Last Edit: May 19, 2008, 19:44:40 pm by fourier » Logged
fourier
Guest
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #96 on: May 19, 2008, 19:50:45 pm »

Βασικα καλυτερα να ανεβασω ολοκληρο τον κωδικα μου:

Code:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define e 0.1

int check (float shmapoumpainei, int posaspitia, int *ka8egrammh, float **full, int *ais8hthraspoubre8hke, int *spitipoubre8hke);

int main (void) {

int i, j, k, q=0, n, m, temp1, temp2, temp3, result, id_aist, id_spiti;
float input;
float **SPITIA;
int *AISTH;
float *WRONG;

printf("\nPosa spitia eksyphretountai? ");
scanf("%d",&n);

printf("\n");

/* O MONODIASTATOS PINAKAS "AISTH" PERIEXEI TON ARI8MO TWN AIS8HTHRWN
GIA KA8E SPITI KSEXWRISTA */

AISTH = (int *) malloc(n*sizeof(int));

SPITIA = (float **) malloc(n*sizeof(float *));
for (i=0;i<n;i++) {
printf("Posous ais8hthres exei to %do spiti? ",i+1);
scanf("%d",&temp1);
SPITIA[i] = (float *) malloc(temp1*sizeof(float));
AISTH[i] = temp1;
}

for (i=0;i<n;i++) {
printf("\n");
temp2 = AISTH[i];
for (j=0;j<temp2;j++) {
printf("Kwdikos %dou ais8hthra %dou spitiou: ",j+1,i+1);
scanf("%f",&SPITIA[i][j]);
}
}

printf("\nEisagete ton ari8mo twn shmatwn pou 8a elegx8oun sthn epomenh periodo: ");
scanf("%d",&m);


printf("\nENARKSH DIADIKASIAS ELEGXOU SHMATWN.\n8a elegx8oun %d shmata.\n\n",m);

for (k=0;k<m;k++) {
printf("Eisagete to %do eiserxomeno shma: ",k+1);
scanf("%f",&input);

/* KLHSH THS CHECK */


result = check(input, n, AISTH, SPITIA, &id_aist, &id_spiti);

if (result!=-1) {
printf("Anagnwristhke shma apo to spiti %d kai ton ais8hthra %d!\n\n", id_spiti+1, id_aist+1);
}
else {
printf("To shma %4.2f den anagnwristhke. q=%d\n\n",input,q+1);

if (q==0){
WRONG = (float *) malloc(1*sizeof(float));
WRONG[0] = input;
q = 1;
}

else {
WRONG = realloc(WRONG,q+1);
WRONG[q] = input;
q++;
}

}
}


printf("\nParelhf8hsan ta parakatw lan8asmena shmata:\n");
for (i=0;i<q;i++) {
printf("%4.2f - ",WRONG[i]);
}

printf("\n\n");

free(SPITIA);
free(AISTH);
free(WRONG);
SPITIA=NULL;
AISTH=NULL;
WRONG=NULL;

return 0;
}

int check (float shmapoumpainei, int posaspitia, int *ka8egrammh, float **full, int *ais8hthraspoubre8hke, int *spitipoubre8hke) {

int i1, i2, tosoiyparxoun, dokimastiko=0;
float trexonshma, apolythtimh;

for (i1=0; i1<posaspitia; i1++) {
tosoiyparxoun = ka8egrammh[i1];

for (i2=0; i2<tosoiyparxoun; i2++) {
trexonshma = full[i1][i2];
apolythtimh = fabs(trexonshma - shmapoumpainei);

if (apolythtimh < e) {
*spitipoubre8hke = i1;
*ais8hthraspoubre8hke = i2;
dokimastiko = 1;
return 0;
}
}
}

if (dokimastiko != 1) {
return -1;
}
}

Logged
Emfanever
Καταστραμμένος
********
Gender: Male
Posts: 5284


Πολίτης


View Profile
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #97 on: May 19, 2008, 19:53:27 pm »

Έβαλα έλεγχο για NULL και φταίει αυτό. Δηλαδή δεν υπάρχει άλλος χώρος μάλλον και επιστρέφει τιμή NULL
Logged
fourier
Guest
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #98 on: May 19, 2008, 19:54:14 pm »

Quote from: Emfanever on May 19, 2008, 19:53:27 pm
Έβαλα έλεγχο για NULL και φταίει αυτό. Δηλαδή δεν υπάρχει άλλος χώρος μάλλον και επιστρέφει τιμή NULL

 Shocked Shocked Shocked Shocked Shocked Shocked Shocked Shocked Shocked Shocked Shocked Shocked Shocked Shocked
Logged
Emfanever
Καταστραμμένος
********
Gender: Male
Posts: 5284


Πολίτης


View Profile
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #99 on: May 19, 2008, 20:01:44 pm »

Αλλά μπορεί από λάθος να επιστρέφει NULL. Γιατί όταν έτρεχα το πρόγραμμά σου μου έβγαζε σφάλμα λόγω NULL μετά από λίγο ,το δικό μου όμως όχι. Θα το κοιτάξω καλύτερα.
Logged
Emfanever
Καταστραμμένος
********
Gender: Male
Posts: 5284


Πολίτης


View Profile
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #100 on: May 19, 2008, 20:15:00 pm »

Αυτό είναι:

   else {
         WRONG = realloc(WRONG,(q+1)*sizeof(float));
         WRONG[q] = input;
         q++;
      }
Logged
fourier
Guest
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #101 on: May 19, 2008, 20:20:02 pm »

Κατι τετοια κωλολαθη θα μας φανε στο τελος... 1000 thanx Smiley
Logged
Larry_Flynt
Καταστραμμένος
********
Gender: Male
Posts: 5403



View Profile WWW
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #102 on: May 19, 2008, 21:22:45 pm »

Στο τέλος πρέπει να κάνουμε free?
Logged

void DrawShadow()
        {
            shadow = Matrix.CreateShadow(-directionalLight0Direction, game.functions.GetPlane(ref game.player.position, 5));
            Matrix[] bones = game.heroPlayer.GetSkinTransforms();
            Matrix[] shadowBones = new Matrix[bones.Length];

            for (int i = 0; i < shadowBones.Length; i++)
            {
                shadowBones = bones * shadow;
            }

            foreach (ModelMesh mesh in game.heroModel.Meshes)
            {
                foreach (Effect effect in mesh.Effects)
                {
                    effect.CurrentTechnique = effect.Techniques["Shadow"];
effect.Parameters["Bones"].SetValue(shadowBones);  effect.Parameters["View"].SetValue(game.viewMatrix);
effect.Parameters["Projection"].SetValue(game.projectionMatrix);
                }
                mesh.Draw();
            }
           
        }
Emfanever
Καταστραμμένος
********
Gender: Male
Posts: 5284


Πολίτης


View Profile
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #103 on: May 19, 2008, 21:27:09 pm »

Στα πλαίσια του μαθήματος δεν είναι απαραίτητο και μάλλον δεν έχει πρακτική σημασία ,αλλά εγώ το βάζω μήπως το θέλει
Logged
vasso
Καταστραμμένος
********
Gender: Female
Posts: 6672


Overambitious doer


View Profile WWW
Re: [Δομημένος Πρ.] Εργασία Ε 2008
« Reply #104 on: May 20, 2008, 06:56:52 am »

Γιατί χρειάζεται το WRONG = realloc(WRONG,(q+1)*sizeof(float)); ???
Μήπως θα  μπορούσε να γίνει απλά
WRONG =(float *) realloc(WRONG,(q+1));

και βασικά γιατί δεν αυξάνεις το q πριν τη ριαλοκ έτσι ώστε να μη βάλεις την πράξη στην παρένθεση, παρά μόνο το q...


δεν διάβασα όλο το πρόγραμμά σου, σόρι είναι ώρα δύσκολη...
Logged

Είναι τα βλέφαρά μου
διάφανες αυλαίες.
Όταν τα ανοίγω βλέπω
μπρος μου ό,τι κι αν τύχει.
Όταν τα κλείνω βλέπω
μπρος μου ό,τι ποθώ.
Pages: 1 ... 5 6 [7] 8 9 10 Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...