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

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, 09:34:38 am

Login with username, password and session length

Αναζήτηση

Google

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

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[Today at 02:29:21]

[Οργάνωση Υπολογιστών] Γε...
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 Λαμπτήρας
[June 16, 2025, 15:55:08 pm]

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

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

Αποτελέσματα Εξεταστικής ...
by Nikos_313
[June 16, 2025, 12:01:53 pm]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by George_RT
[June 16, 2025, 10:22:18 am]

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

Αντικατάστασης πυκνωτή σε...
by nmpampal
[June 15, 2025, 16:25:56 pm]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
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]

Ρυθμίσεις Θεμάτων της Ανώ...
by el mariachi
[June 14, 2025, 11:56:45 am]

Πότε θα βγει το μάθημα; -...
by Nikos_313
[June 14, 2025, 10:00:55 am]

Αρχείο Ανακοινώσεων [Arch...
by Nikos_313
[June 14, 2025, 09:58:14 am]

Αλέξης Τσίπρας, η επιστρο...
by Yamal
[June 14, 2025, 04:42:23 am]
Στατιστικά
Members
Total Members: 9960
Latest: valco08
Stats
Total Posts: 1426680
Total Topics: 31710
Online Today: 169
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 10
Guests: 106
Total: 116
rafa98p
GeorgeGk
Sotirisbikos
acolak
grepanis
tsaliki
hacky
tzortzis
Geoth
Εμφάνιση

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

Νέα!
Η γραμματεία είναι ανοιχτή καθημερινά 12:00-13:30 Tongue
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt) > [Δομημένος Πρ.] Εργασία F
0 Members and 1 Guest are viewing this topic.
Pages: 1 2 [3] 4 Go Down Print
Author Topic: [Δομημένος Πρ.] Εργασία F  (Read 4567 times)
Luffy
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 636



View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #30 on: May 26, 2012, 18:03:06 pm »

'διαγραφεις' τις κορυφες και συνεπως τις ραβδους φανταζομαι και οχι το αντιθετο.
Logged
thanospr
Καταξιωμένος/Καταξιωμένη
***
Posts: 115


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #31 on: May 26, 2012, 18:23:28 pm »

Ναι ελεγχω αν ειναι οι κορυφες 1 η 3 και διαγραφω τα στοιχεια των connection και weight.
Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #32 on: May 26, 2012, 18:37:55 pm »

Quote from: Luffy on May 26, 2012, 18:03:06 pm
'διαγραφεις' τις κορυφες και συνεπως τις ραβδους φανταζομαι και οχι το αντιθετο.
Quote from: thanospr on May 26, 2012, 18:23:28 pm
Ναι ελεγχω αν ειναι οι κορυφες 1 η 3 και διαγραφω τα στοιχεια των connection και weight.

Εφόσον έχουμε στη διάθεση μας του πίνακες connection και weight που αναφέρονται άμεσα σε κορυφές, τότε το λογικό είναι ότι κάνουμε να το κάνουμε σε σχέση με τις κορυφές (πχ διαγραφή). Οποιαδήποτε ενέργεια σε ακμές/ράβδους θα είναι έμμεση. Εκτώς, βέβαια, και αν κάποιος σκεφτεί κάποιον άλλο τρόπο υλοποίησης...
« Last Edit: May 26, 2012, 18:45:00 pm by Exomag » Logged

zidan
Θαμώνας
****
Gender: Male
Posts: 305


FREEEEDOME


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #33 on: May 26, 2012, 18:45:59 pm »

ο πινακς connection[j] δεν χρειαζεται στο αλγοριθμο,η κανω λαθος???
Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #34 on: May 26, 2012, 18:59:42 pm »

Quote from: zidan on May 26, 2012, 18:45:59 pm
ο πινακς connection[j] δεν χρειαζεται στο αλγοριθμο,η κανω λαθος???

Ο πίνακας connection(i)(j) χρειάζεται στον αλγόριθμο, όπως χρειαζόταν και στην Εργασία C...
Logged

zidan
Θαμώνας
****
Gender: Male
Posts: 305


FREEEEDOME


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #35 on: May 26, 2012, 19:05:41 pm »

μα θα μπορουσα να παρω το weights[j]  με ελαχιστο βαρος κ να καταχωρω το κ τ
Logged
autos.gr
Καταξιωμένος/Καταξιωμένη
***
Posts: 167



View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #36 on: May 26, 2012, 19:10:38 pm »

Για να δεσμευσω μνήμη σε πίνακες πχ στον connection , αρχικα τον ορίζω σαν δείκτη  *connection [Ν][Ν-1]  στη δήλωση μεταβλητών σωστά?
Και οταν είναι να τον δεσμεύσω γράφω connection[ ][ ]=(int*)malloc(sizeof(int)*N*(N-1)) ? ι να βάλω [Ν][Ν-1] στις αγκύλες?
Logged

I'm just a bast4rd but at least I admit it...~
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #37 on: May 26, 2012, 19:16:51 pm »

Quote from: autos.gr on May 26, 2012, 19:10:38 pm
Για να δεσμευσω μνήμη σε πίνακες πχ στον connection , αρχικα τον ορίζω σαν δείκτη  *connection [Ν][Ν-1]  στη δήλωση μεταβλητών σωστά?
Και οταν είναι να τον δεσμεύσω γράφω connection[ ][ ]=(int*)malloc(sizeof(int)*N*(N-1)) ? ι να βάλω [Ν][Ν-1] στις αγκύλες?

Οι στήλες του connection δε θα είναι ένας σταθερός αριθμός (αφού κάθε κορυφή δε συνδέεται με τον ίδιο αριθμό κορυφών). Ένας τρόπος δήλωσης (ενδεικτικός) είναι:
Code:
int **connection,*points,n; \\Το στοιχείο points[i] θα έχει τον αριθμό τον κορυφών με τις οποίες συνδέεται η κορυφή i
printf("Number of Points = ");
scanf("%d",&n);
if ((points=(int *)malloc(n*sizeof(int)))==NULL)
        exit(1);
if ((connection=(int **)malloc(n*sizeof(int *)))==NULL) {
        exit(1);
}
for (i=0;i<n;i++){
            printf("\nNumber of Points (%d) is connected with = ",i);
            scanf("%d",&points[i]);
            if ((connection[i]=(int *)malloc(points[i]*sizeof(int)))==NULL)
                    exit(1);
}

« Last Edit: May 26, 2012, 19:28:11 pm by Exomag » Logged

manos
Νεούλης/Νεούλα
*
Posts: 44


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #38 on: May 26, 2012, 20:31:55 pm »

Exomag μπορείς να εξηγήσεις λίγο περισσότερο την έκφραση if ((connection=(int **)malloc(n*sizeof(int *)))==NULL)?
Ποιο είναι το μέγεθος του χώρου που δεσμεύει εδώ η malloc?Πόσο είναι το sizeof(int *)?
Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #39 on: May 26, 2012, 20:55:11 pm »

Quote from: manos on May 26, 2012, 20:31:55 pm
Exomag μπορείς να εξηγήσεις λίγο περισσότερο την έκφραση if ((connection=(int **)malloc(n*sizeof(int *)))==NULL)?
Ποιο είναι το μέγεθος του χώρου που δεσμεύει εδώ η malloc?Πόσο είναι το sizeof(int *)?

sizeof(int *) είναι όσο "ζυγίζει" ένας integer pointer στο μηχάνημα σου (συνήθως 8 byte).
Η malloc εδώ θα δεσμεύσεις n*sizeof(int *), άρα συνή8ως 8n byte.
Στην έκφραση που έγραψα αρχικά θα γίνει η εκχώρηση (connection=(int **)malloc(n*sizeof(int *))). Αν γίνει με επιτυχία τότε ως τιμή αυτής της εκχώρησης θα είναι ο pointer που θα επιστρέψει η malloc (εμάς μας νοιάζει ότι θα είναι μια οποιαδήποτε μη-μηδενική τιμή-pointer), ενώ αν δεν γίνει με επιτυχία τότε ως τιμή αυτής της εκχώρησης θα είναι ο NULL pointer. Στην πρώτη περίπτωση(=επιτυχία) η συνθήκη θα γίνει connection==NULL, που είναι ψευδής, άρα δε θα κάνει exit. Στην δεύτερη περίπτωση(=αποτυχία) η συνθήκη θα γίνει NULL==NULL, που είναι αληθής, άρα θα τερματίσει το πρόγραμμα (μέσω της συνάρτησης exit), μιας και δε μπόρεσε να δεσμευτεί ο απαιτούμενος χώρος για τον connection πίνακα (που θα έχει τις διευθύνσεις των πρώτων στοιχείων της κάθε γραμμής=κορυφής)...
Logged

manos
Νεούλης/Νεούλα
*
Posts: 44


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #40 on: May 26, 2012, 21:14:25 pm »

Ναι αλλά εμείς για τον πίνακα connection θέλουμε να δεσμεύσουμε n*(p[0]+p[1]+...p[n-1])*sizeof(int) και όχι 8n bytes(κάθε γραμμή θα έχει p*sizeof(int))
Logged
c0ndemn3d
Veteran
Αbsolute ΤΗΜΜΥ.gr
******
Posts: 4804


Yarr!


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #41 on: May 26, 2012, 21:29:29 pm »

Quote from: manos on May 26, 2012, 21:14:25 pm
Ναι αλλά εμείς για τον πίνακα connection θέλουμε να δεσμεύσουμε n*(p[0]+p[1]+...p[n-1])*sizeof(int) και όχι 8n bytes(κάθε γραμμή θα έχει p*sizeof(int))

Code:
connection = (int **)malloc(n*sizeof(int *));
if(connection==NULL)
printf("Could not allocate enough memory");
exit(0);
for(i=0;i<n;i++){
connection[i] = (int *)malloc((n-1)*sizeof(int));
if(connection[i] == NULL)
printf("Could not allocate enough memory");
       exit(0);

Πρώτα ελέγχεις για τα 8*n bytes. Από εκεί και πέρα θα κάνεις ξεχωριστούς ελέγχους για κάθε malloc που χρησιμοποιείς για να κάνεις δισδιάστατο τον πίνακα.
Logged

In response, the pirates had to adhere to a doctrine of their own...
war against the world

They took my home, I can't walk away from that; can you?
 Forget me, forget Teach, forget loyalty, compacts, honours, debts, all of it.
The only question that matters is this: Who are you?
Xleboniaris
Ανερχόμενος/Ανερχόμενη
**
Gender: Male
Posts: 96


Μόνο Αγάπη!


View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #42 on: May 26, 2012, 23:46:33 pm »

Εδώ δεν είναι όπως στην  C , δηλαδή δεν δίνω κορυφή εκκίνησης αλλά ξεκινάω τον αλγόριθμο διαλέγοντας την ακμή με το λιγότερο βάρος και τις κορυφές που συνδέονται με αυτή ,έτσι δεν είναι ? Και τι κάνω αν προκύψουν περισσότερες από μια ακμές με το ίδιο βάρος(ελάχιστο) που συνδέονται με μια κορυφή?   
Logged

85 δις έξτρα χρέος,
99 χρόνια όλη η δημόσια περιουσία σε ξένα χέρια,
παράλληλη οριστικη εξάτμιση του ιδιωτικού τομέα,
εκμηδενιση της διεθνούς εικόνας της χωρας και 1.000.000 περαστικοί και μόνιμοι μουσουλμανοι προσφυγομεταναστες που τους περισυλλεγει το Γερμανικό Ναυτικό στα Ελληνικά χωρικά ύδατα.

Τόσο χρειάστηκε για να ξεφτιλιστεί για τους έχοντες κοινό νου η αριστερή ιδεολογία εν Ελλάδι. Οτι δεν καταφεραν οι νεκροι του Εμφυλίου, το κατάφερε σε ένα 15μηνο ενας επαγγελματιας άεργος.

Τα κεφάλια μέσα τώρα και ο καθένας ας κάνει το κουμάντο του.

Καληνύχτα Ελλάδα. 


bonus: Socialist 'paradise' of Venezuela ...
https://www.youtube.com/watch?v=3wytJE1u3KY
sg31a
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1186



View Profile
Re: [Δομημένος Πρ.] Εργασία F
« Reply #43 on: May 27, 2012, 00:32:54 am »

δλδ μπορούμε να γεμίσουμε τους πίνακες connection και weight οπως στην C?
Logged
Sub-Zero
Guest
Re: [Δομημένος Πρ.] Εργασία F
« Reply #44 on: May 27, 2012, 13:06:01 pm »

Quote from: aggeloukos on May 27, 2012, 00:32:54 am
δλδ μπορούμε να γεμίσουμε τους πίνακες connection και weight οπως στην C?

Nαι απλά στην αρχή του προγράμματος θα δηλώσεις μεγέθη χρησιμοποιώντας malloc για να δεσμεύσεις την απαραίτητη μνήμη
Logged
Pages: 1 2 [3] 4 Go Up Print
Jump to:  

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