• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
February 02, 2026, 19:14:05 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.
February 02, 2026, 19:14:05 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
[Μεταφορά και Διανομή ΗΕ]...
by Mr Watson
[Today at 18:55:28]

Τι καφέ πίνετε;
by MeTheWizard
[Today at 18:27:47]

Πότε θα βγει το μάθημα; -...
by chatzikys
[Today at 16:35:02]

[Ηλεκτρονική Ι] Γενικές α...
by nmpampal
[Today at 15:25:00]

[Θ.Υ.Α.] Επικαιρότητα, απ...
by OlgaG
[February 01, 2026, 00:17:07 am]

H Στοά των Off Topic
by chatzikys
[January 31, 2026, 21:05:09 pm]

Πολεμοσυνέδριο στο ΑΠΘ
by dimikotz
[January 31, 2026, 20:47:47 pm]

[ΣΑΕ Ι] Γενικές απορίες κ...
by sassi
[January 31, 2026, 03:35:56 am]

[ΣΦ ΗΛ-ΜΗΧ] Ανακοίνωση Σχ...
by Χαρούμενη Πατάτα
[January 30, 2026, 21:10:34 pm]

[Τηλεπ. Συστήματα ΙΙΙ] Γε...
by sofipout
[January 30, 2026, 20:34:25 pm]

[Η/Μ Πεδίο ΙΙ] Ανάλυση πα...
by Tsn
[January 30, 2026, 18:59:46 pm]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by Διάλεξις
[January 30, 2026, 12:45:58 pm]

[Unofficial Mod] Dark Mod...
by nmpampal
[January 29, 2026, 23:02:21 pm]

[Μετάδοση Θερμότητας] Γεν...
by chatzikys
[January 29, 2026, 20:58:16 pm]

[Ηλεκτρική Οικονομία] Γεν...
by ttsengel
[January 29, 2026, 19:29:04 pm]

[Οπτική] Γενικές Πληροφορ...
by Σουλης
[January 29, 2026, 16:07:44 pm]

Erasmus στο Università de...
by georgino
[January 28, 2026, 17:58:29 pm]

Εξετάσεις με τάμπλετ
by Nikos_313
[January 27, 2026, 17:37:10 pm]

[Πυρηνική Τεχνολογία] Γεν...
by chatzikys
[January 27, 2026, 14:11:26 pm]

Ωρολόγιο Πρόγραμμα Εαρινο...
by PolarBear
[January 27, 2026, 00:16:34 am]
Στατιστικά
Members
Total Members: 10346
Latest: Tzokas
Stats
Total Posts: 1430009
Total Topics: 31900
Online Today: 422
Online Ever: 6054
(January 14, 2026, 06:07:19 am)
Users Online
Users: 74
Guests: 177
Total: 251
Μιχάλης Αβραμίδης
tipaeinapeiato
despoina15
Saint_GR
GeorgeChri
et7gr
chrismzag
Arispap
g.petss
vasilikitsatsi
andrkott
agapi
soa2002
tsakalokagkouras
mike1996
Rizotto
malogeor
apsathas
Stathisxd
ELEF
Mitousis
kstavroulis
faidonchatz
george polymeros
gpr000
nataliakara
ggalamat
chaniotism
stavros0201
kevangelo
giorgos_skl
leolam
micelethe
PANKRAV
Μακαρονοτέρας
Hyperlaz02
george14
iodim
mariachatz
dimitrisblioumis
akoutouc
mgrivab
Kenedy
AODON
themisb
MeTheWizard
chriskazakos
DJ Stefzia
mpilas_giwrgos
manwlakhs
nikosvaltas
anna.ts
Natk
vaggelisx
KZerenidis
Mitsos1
dimitris585
Anasta
odkoutrolikos
HlektrikhPatata
christina02
Psycher
Bill g
swtotrelas
Anastasiam
nietigheid
Sanaia
mrotskos
PeriklisL
Mr Watson
akoil
truethessalonikios
Εμφάνιση

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

THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt, tony stank) > [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
0 Members and 1 Guest are viewing this topic.
Pages: 1 [2] 3 Go Down Print
Author Topic: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D  (Read 5543 times)
zisis00
Καταξιωμένος/Καταξιωμένη
***
Posts: 176


View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #15 on: May 15, 2011, 13:16:17 pm »

Quote from: elen// on May 15, 2011, 11:35:40 am
Quote from: elen// on May 14, 2011, 12:59:30 pm
μπορει κανεις να βοηθησει με το παρακατω?
οταν οριζουμε την συναρτηση θα πρεπει να βαλουμε στα ορισματα ποιντερ και τουσ πινακες ωστε να παρει την διευθυνση και μετα με διπλο ποιντερ οταν μεσα στην συναρτηση θελουμε να χρησιμοποιησουμε τις τιμες του πινακα??εκανα κατι τετοιο αλλα το βγαζει λαθοσ...εχει κανεις καμια ιδεα??

ξερει κανεις τι πρεπει  να κανουμε?? Huh

Έστω οτι έχουμε έναν pointer p_foo και δεσμέυουμε μνήμη γι'αυτόν με την malloc() στην main

Code:
main () {
   int *p_main;
   p_main = (int *)malloc(N*sizeof(int));
   p[0] = 15;
}

0x7fff6a40852c: p_main                                    0x7fffcdd1337 (= η πρώτη θέση της μνήμης που δεσμεύτηκε απο την malloc())
-------------------------------                                     -------------------------------------------
|      0x7ffcfdd1337      |                ----->             |  15 | ... | ... | ... |             ...           |
-------------------------------                                     --------------------------------------------
**TIP: Η τιμή πριν την p_main( 0x7fff6a40852c ) είναι η διεύθυνση μνήμης της p_main  (&p_main) ωστε να την καταλαβαίνει ο compiler. Είναι σταθερή και δεν μπορει να αλλάξει και ούτε μας ενδιαφέρει σε αυτήν την περίπτωση. Δεν έχει καμία σχέση με την τιμή μέσα στο κουτάκι η οποία ειναι μεταβλητή και μπορεί να αλλάζει κατα την διάρκει της εκτέλεσης.

Στο σουπερ-γαμάτο σχήμα φαίνεται ο δείκτης p_main (o οποίος έχει διεύθυνση μνήμης 0x7fff6a40852c , δηλαδή το &p_main), κρατάει αποθηκευμένη μέσα στο κουτακι του την διεύθυνση μνημης του πρώτου στοιχείου που έγινε allocate  με την malloc(). Έτσι η εντολή p[0] = 23; θα δώσει στο πρώτο στοιχείο την τιμή 0. (το p[1] θα έδινε στο δεύτερο κ.ο.κ)

Κατόπιν καλούμε την συνάρτηση foo()

Code:
void foo(int *p_foo) {
   p_foo[0]  = 23;
}

int main () {
   ...
   fοο(p_main);
   ...
}

Στην foo στέλνουμε την τιμή που είναι αποθηκευμένη στην p_main δηλαδή την 0x7ffcfdd1337. Οπότε ο νέος pointer μεσα στην foo, ο p_foo θα έχει και αυτος την τιμή 0x7ffcfdd1337.

Και το σχήμα μας γίνετα ως εξής

p_foo
------------------------------
|   0x7ffcfdd1337        |                    ----------------
------------------------------                                      |
                                                                           V
0x7fff6a40852c: p_main                                    0x7fffcdd1337 (= η πρώτη θέση της μνήμης που δεσμεύτηκε απο την malloc())
-------------------------------                                     -------------------------------------------
|      0x7ffcfdd1337      |                ----->             |  15 | ... | ... | ... |             ...           |
-------------------------------                                     --------------------------------------------

οπότε η εντολή p_foo[0] = 23; θα δώσει την τιμή 23 στο πρώτο στοιχειο που δείχνει ο pointer p_foo δηλαδή στην μνήμη που έχει δεσμευτεί απο την malloc()
και το τελικό σχήμα είναι:

p_foo
------------------------------
|   0x7ffcfdd1337        |                    ----------------
------------------------------                                      |
                                                                           V
0x7fff6a40852c: p_main                                    0x7fffcdd1337 (= η πρώτη θέση της μνήμης που δεσμεύτηκε απο την malloc())
-------------------------------                                     -------------------------------------------
|      0x7ffcfdd1337      |                ----->             |  23 | ... | ... | ... |             ...           |
-------------------------------                                     --------------------------------------------

Οπότε κανένα άγχος για διπλους pointers στην άσκηση η οτιδήποτε τετοιο.. Παρακάτω παρουσιάζω και ολοκληρο το source αν κάποιος θέλει να παίξει ωστε να τα κατανοήσει καλύτερα.

Code:
#include <stdio.h>
#include <stdlib.h>

void foo(int *p_foo) {
p_foo[0] = 23;
}

int main() {
int *p_main = (int *) malloc(5*sizeof(int));
p_main[0] = 15;
printf("%d\n", p_main[0]);
foo(p_main);
printf("%d\n", p_main[0]);

return 0;
}
Logged
Άντι ιστ κρίιγκ
Νεούλης/Νεούλα
*
Gender: Female
Posts: 47



View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #16 on: May 15, 2011, 14:24:43 pm »

Όταν λέει
" Να μη χρησιμοποιηθούν πουθενά γενικές μεταβλητές. "

τι ακριβώς εννοεί; ότι δε μπορώ να δηλώσω καμία μεταβλητή στη main; Κι αν ναι, πώς θα το πετύχω αυτό;
Logged
teslaaaa
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Female
Posts: 2687


Buongiorno Principessa!


View Profile WWW
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #17 on: May 15, 2011, 14:29:49 pm »

απ οτι καταλαβα εννοει να μη δηλωσεις μεταβλητες πανω πανω οι οποιες θα εχουν εμβελεια για ολες τις συναρτησεις που θα χρησιμοποιησεις στο προγραμμα..
Logged

Κάντε την εφαρμογή μου για να πάρω πτυχίο!!

http://www.youtube.com/watch?v=ipjaLMd8TqM

https://www.youtube.com/watch?v=gQU3EphIpMY
Άντι ιστ κρίιγκ
Νεούλης/Νεούλα
*
Gender: Female
Posts: 47



View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #18 on: May 15, 2011, 14:31:11 pm »

To προγραμμα θα έχει μόνο μία συνάρτηση, την calk?
Logged
teslaaaa
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Female
Posts: 2687


Buongiorno Principessa!


View Profile WWW
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #19 on: May 15, 2011, 14:35:16 pm »

την calk και τη main λογικα...
Logged

Κάντε την εφαρμογή μου για να πάρω πτυχίο!!

http://www.youtube.com/watch?v=ipjaLMd8TqM

https://www.youtube.com/watch?v=gQU3EphIpMY
Άντι ιστ κρίιγκ
Νεούλης/Νεούλα
*
Gender: Female
Posts: 47



View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #20 on: May 15, 2011, 14:36:41 pm »

Ευχαριστώ! Αυτό εδώ
Code:
        int *x = malloc(N * sizeof (float));
        if (x == NULL)
        {
          
               exit(0)
              
        }


είναι που εννοούμε όταν λέμε δέσμευση μνήμης;

θα το βάλω μέσα στην calk, ή στη main;
Logged
teslaaaa
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Female
Posts: 2687


Buongiorno Principessa!


View Profile WWW
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #21 on: May 15, 2011, 14:42:34 pm »

Quote from: Άντι ιστ κρίιγκ on May 15, 2011, 14:36:41 pm
Ευχαριστώ! Αυτό εδώ
Code:
        int *x = malloc(N * sizeof (float));
        if (x == NULL)
        {
          
               exit(0)
              
        }


είναι που εννοούμε όταν λέμε δέσμευση μνήμης;

θα το βάλω μέσα στην calk, ή στη main;
ναι το χρησιμοποιεις για να δεσμευσεις δυναμικα μνημη για τους πινακες που σου ζηταει και το βαζεις στη main ωστε να το χρησιμοποιησεις μετα και στν calk μαλλον...
αν και νομιζω οτι ξεχασες εναν (float*) μπροστα απ τη malloc που δειχνει τις διευθυνσεις των θεσεων μνημης που χρησιμοποιησε η συναρτηση..
Logged

Κάντε την εφαρμογή μου για να πάρω πτυχίο!!

http://www.youtube.com/watch?v=ipjaLMd8TqM

https://www.youtube.com/watch?v=gQU3EphIpMY
Kle
Καταξιωμένος/Καταξιωμένη
***
Gender: Male
Posts: 135



View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #22 on: May 15, 2011, 14:49:01 pm »

αφου η συναρτηση calk πρεπει να ειναι void και δεν μας επιτρεπει να εκτυπωνουμε αποτελεσματα πως θα επιστρεψουμε τον πυλώνα που πρέπει να αντικατασταθεί από τον σταθμό βάσης ?
Logged
teslaaaa
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Female
Posts: 2687


Buongiorno Principessa!


View Profile WWW
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #23 on: May 15, 2011, 14:55:06 pm »

με pointers..εκανε παρομοιο παραδειγμα ο μαμαλακης την παρασκευη..
Logged

Κάντε την εφαρμογή μου για να πάρω πτυχίο!!

http://www.youtube.com/watch?v=ipjaLMd8TqM

https://www.youtube.com/watch?v=gQU3EphIpMY
Άντι ιστ κρίιγκ
Νεούλης/Νεούλα
*
Gender: Female
Posts: 47



View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #24 on: May 15, 2011, 14:57:04 pm »

Η calk ποιες παραμέτρους θα έχει; x,y,p?
Logged
butterfly_1
Αρχάριος/Αρχάρια

Posts: 1


View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #25 on: May 15, 2011, 18:11:51 pm »

Quote from: teslaaaa on May 15, 2011, 14:55:06 pm
με pointers..εκανε παρομοιο παραδειγμα ο μαμαλακης την παρασκευη..

μπορει καποιος να ανεβασει το συγκεκριμενο παραδειγμα που εκανε την παρασκευη;
Logged
marc0.
Ανερχόμενος/Ανερχόμενη
**
Gender: Male
Posts: 51


View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #26 on: May 15, 2011, 18:13:39 pm »

Όντως =]
Logged

You can't take the king on your first turn.
Άντι ιστ κρίιγκ
Νεούλης/Νεούλα
*
Gender: Female
Posts: 47



View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #27 on: May 15, 2011, 20:00:47 pm »

α) Η ισχύς του σήματος που θα φτάνει από έναν πυλώνα στον σταθμό βάσης δεν πρέπει να είναι μικρότερη από μια τιμή minp που ορίζουν οι προδιαγραφές του σταθμού.

Εδω μιλαει για  το w? Ή το p?
Logged
istar
Θαμώνας
****
Gender: Male
Posts: 358


do it yourself...


View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #28 on: May 15, 2011, 21:25:42 pm »

α) Η ισχύς του σήματος """που θα φτάνει"" από έναν πυλώνα στον σταθμό βάσης δεν πρέπει να είναι μικρότερη από μια τιμή minp που ορίζουν οι προδιαγραφές του σταθμού.

Εδω μιλαει για  το w? Ή το p?

4) Ένα σήμα που εκπέμπεται  ισχύ P από μια θέση Α """φτάνει"" σε μια θέση Β με ""ισχύ"" w=P/d2 όπου d η απόσταση ανάμεσα στις θέσεις Α και Β.

Άρα μιλάει για το w.
Logged

Η ελευθερία μου είναι στις σόλες
των αλήτικων παπουτσιών μου.

Είναι καλύτερα να αγωνίζεσαι μάταια, παρά να ζεις μάταια
png
Veteran
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Female
Posts: 2101



View Profile
Re: [Δομημένος Πρ.] ΕΡΓΑΣΙΑ D
« Reply #29 on: May 15, 2011, 23:12:27 pm »

που είσαι ρε θοδωρήηηηηηηη  Undecided
Logged

τακτοποιημένο χάος
Pages: 1 [2] 3 Go Up Print
Jump to:  

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