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

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
[Σ.Π.Η.Ε.] Γενικές απορίε...
by Nikos_313
[Today at 19:49:00]

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

[Εφ.Θερμοδυναμική] Γενικέ...
by Λαμπτήρας
[Today at 15:55:08]

[Αρχές Οικονομίας] Να επι...
by _Trob
[Today at 13:28:21]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[Today at 12:13:45]

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

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by George_RT
[Today at 10:22:18]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[Today at 01:56:37]

Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[June 15, 2025, 20:08:49 pm]

Αντικατάστασης πυκνωτή σε...
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]

Έναρξη Δηλώσεων Συμμετοχή...
by IEEE SB
[June 14, 2025, 00:10:19 am]

[Δυναμική Συμπεριφορά ΣΗΕ...
by soko_freta
[June 13, 2025, 01:05:36 am]
Στατιστικά
Members
Total Members: 9960
Latest: valco08
Stats
Total Posts: 1426676
Total Topics: 31711
Online Today: 226
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 69
Guests: 95
Total: 164
AgaG
0restis
Deviate
alexlemp
themis01
thathas12
ppapadoe
johnk
jojos
kpapama
Toaoutplasedakitoubiseswa
atampakc
apsathas
dleivadi
BossiTsif
Argiris
ellimoschou
theofr
gkyrodi
stolieras
theresnocur3
amprozos
DK06
dorapangeiou
ΦΙδανης Αριστοτελης
Σταυρος23
alexbaroutes
stefpapa21
giannisd
jim_sklab
tasos gourd
KZerenidis
mixkats
eleftheria
Roidos
cealexop
Notac
christinabisdeki
Spyros.kleanthous
superkolios
Nikos_313
grethem
bougatsa
xarisagraf
nmpampal
whatdoesthefoxsay
Fotis
itsikou
qwertyuiop
mike1996
AA RE LEWN
mmikelo
christina02
thomassamaras
valco08
gpap
vaggelis.ntokas
johnnypap
manos_diakakis
georkala
BENEDICTVS
IBOURAS
Εμφάνιση

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

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt) >  [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
0 Members and 1 Guest are viewing this topic.
Pages: 1 2 [3] 4 Go Down Print
Author Topic: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13  (Read 6278 times)
EAJ
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 576


Αντιλαμβάνεσαι τις επιλογές σου? Ξανασκέψου το...


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #30 on: September 24, 2013, 19:38:54 pm »

Quote from: airguitar on September 24, 2013, 18:50:49 pm
Στις εργασιες του ο Κορτεσης χρησιμοποιει πολλες φορες την εξης εκφραση στις επαναληψεις με for  :
Code:
 for(k=0;k<m;k++){
    fl=1;
    for(i=0;i<n;i++){
      sum=0;
      for(j=0;j<n;j++)
sum+=sinap[i][j]*state[j];
      if(sum<0)
newstate[i]=-1;
      else
newstate[i]=1;

Ποια ειναι η λογικη του που δεν την καταλαβαινω (π.χ οταν βαζει μεσα στην for μεταβλητη = κατι  στο συγκεκριμενο fl=1)??
 
ΕΥΧΑΡΙΣΤΩ !!

Είναι αρχικοποίηση πιθανότατα μίας βοηθητικής μεταβλητής η οποία θέλει να ξεκινάει από το 1 για κάθε διαφορετικό k. Υποψιάζομαι ότι δεν έχεις γράψει όλες τις εντολές...κάπου πρέπει να χρησιμοποιεί την fl...
Logged

Αν ανατρέξεις στα ποστ μου θα βρεις:
Τη φωνή της επιστήμης, της αλήθειας και της ελευθερίας...

Νόμπελ Οικονομικών
airguitar
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1395


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #31 on: September 24, 2013, 19:41:51 pm »

Code:
#include <stdio.h>
#define NMAX 10
void main()
{
  int i,j,k,n,m,state[NMAX],newstate[NMAX],fl;
  float sinap[NMAX][NMAX],sum;
  printf("Δώστε τον αριθμό των νευρώνων (max %d) = ? ",NMAX);
  scanf("%d",&n);

  for(i=0;i<n;i++){
    printf("Δώστε την κατάσταση του νευρώνα %d = ? ",i+1);
    scanf("%d",&state[i]);
    sinap[i][i]=0;
    for(j=i+1;j<n;j++){
      printf("Δώστε το βάρος της σύναψης του νευρώνα %d με τον νευρώνα %d = ? ",i+1,j+1);
      scanf("%f",&sinap[i][j]);
      sinap[j][i]=sinap[i][j];
    }
  }
  printf("Δώστε τον μέγιστο αριθμό επαναλήψεων για το stable state = ? ");
  scanf("%d",&m);
  for(k=0;k<m;k++){
    fl=1;
    for(i=0;i<n;i++){
      sum=0;
      for(j=0;j<n;j++)
sum+=sinap[i][j]*state[j];
      if(sum<0)
newstate[i]=-1;
      else
newstate[i]=1;
      if(newstate[i]!=state[i])fl=0;
    }
    if(fl)break;
    for(i=0;i<n;i++)
      state[i]=newstate[i];
  }
  if(fl){
    printf("Stable state\n");
    for(i=0;i<n;i++)
      printf("Νευρώνας %d  state = %d \n",i+1,state[i]);
  }
  else{
    printf("State μετά από %d επαναλήψεις\n",k);
    for(i=0;i<n;i++)
      printf("Νευρώνας %d  state = %d \n",i+1,state[i]);
  }
}

εδω ειναι ολος ο κωδικας
Logged
c0ndemn3d
Veteran
Αbsolute ΤΗΜΜΥ.gr
******
Posts: 4804


Yarr!


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #32 on: September 24, 2013, 19:42:52 pm »

Quote from: airguitar on September 24, 2013, 18:50:49 pm
Στις εργασιες του ο Κορτεσης χρησιμοποιει πολλες φορες την εξης εκφραση στις επαναληψεις με for  :
Code:
 for(k=0;k<m;k++){
    fl=1;
    for(i=0;i<n;i++){
      sum=0;
      for(j=0;j<n;j++)
sum+=sinap[i][j]*state[j];
      if(sum<0)
newstate[i]=-1;
      else
newstate[i]=1;



Ποια ειναι η λογικη του που δεν την καταλαβαινω (π.χ οταν βαζει μεσα στην for μεταβλητη = κατι  στο συγκεκριμενο fl=1)??
 
ΕΥΧΑΡΙΣΤΩ !!

Θα σου γράψω πρώτα την ισοδύναμη μορφή χωρίς σημαία:
Code:
do{
k=0;
for(i=0; i<n; i++){
sum=0;
for(j=0;j<n;j++)
sum += sinap[i][j]*state[j];
if(sum<0)
newstate[i] = -1;
else
newstate[i] = 1;
}
if(newstate[i]==state[i]){
for(i=0;i<n;i++)
state[i]=newstate[i];
}
k+=1;
}while(newstate[i]==state[i] && k < m); //Λυπάμαι για λάθη, είναι προχειρογραμμένο αλλά πιάνεις το νόημα.

Ρητορική ερώτηση: Ποιο σού φαίνεται καλύτερο;

Υπάρχουν περιπτώσεις που θες να κάνεις μια λούπα, για την οποία χρειάζεσαι 2 συνθήκες:
Έναν μετρητή (γιατί, για παράδειγμα, σαρώνεις τα στοιχεία ενός πίνακα)
Μια επιπλέον συνθήκη, διότι, για κάποιο λόγο μπορεί να υπάρχει κάτι το "περίεργο" στις τιμές του προγράμματος.

Η εντολή for έχει γραφτεί κυρίως για να ελέγχει τις τιμές ενός μετρητή και να κάνει καθορισμένες επαναλήψεις (όχι ότι δεν μπορείς να το αλλάξεις, αλλά συνήθως το προτιμότερο είναι να κάνεις το πρόγραμμα σου κατανοητό, διότι ο άλλος δεν ξέρει περί τίνος πρόκεται και η for έχει δημιουργηθεί για μια συγκεκριμένη κατηγορία επαναλήψεων). Εφόσον λοιπόν θα κάνεις μόνο έναν έλεγχο με τη for, πώς θα γίνει ο άλλος;

Θα γίνει με τη δημιουργία μιας σημαίας. Οι σημαίες είναι μεταβλητές οι οποίες παίρνουν 2 τιμές, οι οποίες αντιστοιχούν στο λογικό ΝΑΙ και λογικό ΟΧΙ (boolean). Αυτό μπορείς να το υλοποιήσεις κάλλιστα με έναν integer, στον οποία θα δίνεις τις τιμές 1 και 0 αντίστοιχα. Ξεκινάς με μια υπόθεση και λες ότι το τάδε γεγονός ισχύει (άρα βάζω στη σημαία την τιμή 1) και εκτελώ κανονικά τις απαιτούμενες λειτουργίες. Εφόσον τελειώνει η μια λούπα ελέγχεις αν ισχύει ακόμα η συνθήκη την οποία έχεις υποθέσει. Αν δεν ισχύει, αλλάζεις τη σημαία σε λογικό 0 και εκτελείς κάποιες απαιτούμενες εντολές (εδώ από ό,τι είδα δεν έχει τέτοιες, απλά αλλάζει την τιμή και τελειώνει). Μετά ουσιαστικά κάνεις έναν ελεγχο για να καθορίσεις αν θα συνεχίσεις τη λούπα, ή αν θα φύγεις. ΤΟ ΚΑΝΕΙΣ ΜΕ ΑΥΤΟΝ ΤΟΝ ΤΡΟΠΟ ΔΙΟΤΙ ΓΙΝΕΤΑΙ ΕΤΣΙ ΠΙΟ ΚΑΤΑΝΟΗΤΟ ΣΤΟΝ ΑΝΑΓΝΩΣΤΗ ΤΟΥ ΚΩΔΙΚΑ ΚΑΙ ΕΠΕΙΔΗ ΕΧΕΙΣ ΜΕΓΙΣΤΟ ΑΡΙΘΜΟ ΕΠΑΝΑΛΗΨΕΩΝ. Όπως ίσως βλέπεις, η αντίστοιχη λούπα με do είναι λίγο πιο δύσκολη στο να καταλάβεις εξ αρχής το πώς και το γιατί (ναι, δεν φαίνεται ακριβώς η διαφορά, αλλά σε μεγάλα προβλήματα θα το έπιανες το νόημα).


Υ.Γ. Ελπίζω να βοήθησα και να σημειωθεί ότι, για ευνόητους λόγους, η χρήση σημαιών δεν είναι πανάκεια.
« Last Edit: September 24, 2013, 20:35:37 pm by c0ndemn3d » 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?
EAJ
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 576


Αντιλαμβάνεσαι τις επιλογές σου? Ξανασκέψου το...


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #33 on: September 24, 2013, 19:51:52 pm »

Quote from: airguitar on September 24, 2013, 19:41:51 pm
Code:
#include <stdio.h>
#define NMAX 10
void main()
{
  int i,j,k,n,m,state[NMAX],newstate[NMAX],fl;
  float sinap[NMAX][NMAX],sum;
  printf("Δώστε τον αριθμό των νευρώνων (max %d) = ? ",NMAX);
  scanf("%d",&n);

  for(i=0;i<n;i++){
    printf("Δώστε την κατάσταση του νευρώνα %d = ? ",i+1);
    scanf("%d",&state[i]);
    sinap[i][i]=0;
    for(j=i+1;j<n;j++){
      printf("Δώστε το βάρος της σύναψης του νευρώνα %d με τον νευρώνα %d = ? ",i+1,j+1);
      scanf("%f",&sinap[i][j]);
      sinap[j][i]=sinap[i][j];
    }
  }
  printf("Δώστε τον μέγιστο αριθμό επαναλήψεων για το stable state = ? ");
  scanf("%d",&m);
  for(k=0;k<m;k++){
    fl=1;
    for(i=0;i<n;i++){
      sum=0;
      for(j=0;j<n;j++)
sum+=sinap[i][j]*state[j];
      if(sum<0)
newstate[i]=-1;
      else
newstate[i]=1;
      if(newstate[i]!=state[i])fl=0;
    }
    if(fl)break;
    for(i=0;i<n;i++)
      state[i]=newstate[i];
  }
  if(fl){
    printf("Stable state\n");
    for(i=0;i<n;i++)
      printf("Νευρώνας %d  state = %d \n",i+1,state[i]);
  }
  else{
    printf("State μετά από %d επαναλήψεις\n",k);
    for(i=0;i<n;i++)
      printf("Νευρώνας %d  state = %d \n",i+1,state[i]);
  }
}

εδω ειναι ολος ο κωδικας


To fl είναι βοηθητική μεταβλητή. Τη χρησιμοποιεί για να διακόψει το λουπ και να πάει στο επόμενο k. Παίρνει την τιμή 0 εκεί που έχει την
if(newstate!=state) fl=0;
Το 1 το βάζει έτσι...θα μπορούσε να βάλει οποιοδήποτε μη μηδενικό αριθμό. Οποιοσδήποτε μη μηδενικός αριθμός αντιστοιχεί στο TRUE και μόνο το 0 στο FALSE
if(fl)break;
    for(i=0;i<n;i++)
      state=newstate;
Logged

Αν ανατρέξεις στα ποστ μου θα βρεις:
Τη φωνή της επιστήμης, της αλήθειας και της ελευθερίας...

Νόμπελ Οικονομικών
kleopatra
Νεούλης/Νεούλα
*
Posts: 32



View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #34 on: October 07, 2013, 09:27:28 am »

παιδιά ξέρει κανείς από αρχεία; ο κορτέσης είπε  στο μάθημα του μήπως ότι θέλει σύνταξη δομής για την καταχώρηση πχ νεου πελάτη,νέου σεισμού κτλ?δλδ έτσι να λύσουμε και το θέμα με αρχείο?επίσης ποιος ξέρει ποια τεχνική χρησιμοποιούμε για να βρούμε που ακριβώς θα μετακινήσουμε τον κέρσορα ώστε να βρούμε για παράδειγμα κάποιο μέγιστο κάποιο ελάχιστο κοκ;βρηκα μια εντολή fgetpos(fp,metavliti) fsetpos(fp,metavliti) που κραταει τη θέση του κέρσορα αλλά δν ξέρω κατά πόσο θα θελε αυτή,Κάποιος που γνωρίζει ας απαντήσει σύντομα γτ χανόμαστεεεε!!!!!ευχαριστώ
Logged

eisai ap th brazil eimai ap ta H.M.M.Y Smiley
nikitas350
Καταξιωμένος/Καταξιωμένη
***
Posts: 201



View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #35 on: October 07, 2013, 12:06:41 pm »

Quote from: kleopatra on October 07, 2013, 09:27:28 am
παιδιά ξέρει κανείς από αρχεία; ο κορτέσης είπε  στο μάθημα του μήπως ότι θέλει σύνταξη δομής για την καταχώρηση πχ νεου πελάτη,νέου σεισμού κτλ?δλδ έτσι να λύσουμε και το θέμα με αρχείο?επίσης ποιος ξέρει ποια τεχνική χρησιμοποιούμε για να βρούμε που ακριβώς θα μετακινήσουμε τον κέρσορα ώστε να βρούμε για παράδειγμα κάποιο μέγιστο κάποιο ελάχιστο κοκ;βρηκα μια εντολή fgetpos(fp,metavliti) fsetpos(fp,metavliti) που κραταει τη θέση του κέρσορα αλλά δν ξέρω κατά πόσο θα θελε αυτή,Κάποιος που γνωρίζει ας απαντήσει σύντομα γτ χανόμαστεεεε!!!!!ευχαριστώ

Ναι, στα αρχεία μπορείς να αποθηκεύσεις και να ανακτάς ολόκληρες δομές (υπό την προυπόθεση ότι τα έχεις ανοίξει ως binary). Το "κέρσορα" τον μετακινούμε με την fseek και την θέση του την βλέπουμε με την ftell. (ref: http://www.cplusplus.com/reference/cstdio/fseek/)

Γενικά γνώμη μου είναι να προσπαθήσεις να γράψεις κάποιο μικρό πρόγραμμα με αρχεία για να δεις τι γίνεται, γιατί αλλιώς δεν βγαίνει. Smiley
Logged
Utrion
Ανερχόμενος/Ανερχόμενη
**
Posts: 98


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #36 on: October 07, 2013, 12:11:58 pm »

Μια γρήγορη ερώτηση οτάν λέει χωρίς γενικές μεταβλητες εννοεί χωρίς το define ? Δηλαδή εναν πίνακα θα τον δηλώνουμε
Logged
heavy melon
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Female
Posts: 1386


making things complex


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #37 on: October 07, 2013, 12:17:12 pm »

Quote from: Utrion on October 07, 2013, 12:11:58 pm
Μια γρήγορη ερώτηση οτάν λέει χωρίς γενικές μεταβλητες εννοεί χωρίς το define ? Δηλαδή εναν πίνακα θα τον δηλώνουμε

όχι, εννοεί global. και συνήθως δε θέλει χρήση τέτοιων
Logged

Μη γκρινιάζεις που δε σου 'ρθε η ζαριά
τζογάρισες στο όνειρο κι είσαι έτοιμος για όλα
Utrion
Ανερχόμενος/Ανερχόμενη
**
Posts: 98


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #38 on: October 07, 2013, 12:32:34 pm »

Quote from: ~Irida~ on October 07, 2013, 12:17:12 pm
Quote from: Utrion on October 07, 2013, 12:11:58 pm
Μια γρήγορη ερώτηση οτάν λέει χωρίς γενικές μεταβλητες εννοεί χωρίς το define ? Δηλαδή εναν πίνακα θα τον δηλώνουμε

όχι, εννοεί global. και συνήθως δε θέλει χρήση τέτοιων
ευχαριστώ Smiley άρα define επιτρέπεται Smiley
Logged
PureForm
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 520


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #39 on: October 07, 2013, 13:04:16 pm »

Quote from: kleopatra on October 07, 2013, 09:27:28 am
παιδιά ξέρει κανείς από αρχεία; ο κορτέσης είπε  στο μάθημα του μήπως ότι θέλει σύνταξη δομής για την καταχώρηση πχ νεου πελάτη,νέου σεισμού κτλ?δλδ έτσι να λύσουμε και το θέμα με αρχείο?επίσης ποιος ξέρει ποια τεχνική χρησιμοποιούμε για να βρούμε που ακριβώς θα μετακινήσουμε τον κέρσορα ώστε να βρούμε για παράδειγμα κάποιο μέγιστο κάποιο ελάχιστο κοκ;βρηκα μια εντολή fgetpos(fp,metavliti) fsetpos(fp,metavliti) που κραταει τη θέση του κέρσορα αλλά δν ξέρω κατά πόσο θα θελε αυτή,Κάποιος που γνωρίζει ας απαντήσει σύντομα γτ χανόμαστεεεε!!!!!ευχαριστώ
Αν χρησιμοποιεισεις καποια εντολη π δν εχει αναφερει ο κορτεσης δεν στο πιανει για σωστο ν τ θυμασε αυτο
Αν θυμαμε καλα τ παραπανχ π ειπες δεν εχουν ειπωθει στο μαθημα του
Logged
kleopatra
Νεούλης/Νεούλα
*
Posts: 32



View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #40 on: October 07, 2013, 13:29:53 pm »

Quote from: PureForm on October 07, 2013, 13:04:16 pm
Quote from: kleopatra on October 07, 2013, 09:27:28 am
παιδιά ξέρει κανείς από αρχεία; ο κορτέσης είπε  στο μάθημα του μήπως ότι θέλει σύνταξη δομής για την καταχώρηση πχ νεου πελάτη,νέου σεισμού κτλ?δλδ έτσι να λύσουμε και το θέμα με αρχείο?επίσης ποιος ξέρει ποια τεχνική χρησιμοποιούμε για να βρούμε που ακριβώς θα μετακινήσουμε τον κέρσορα ώστε να βρούμε για παράδειγμα κάποιο μέγιστο κάποιο ελάχιστο κοκ;βρηκα μια εντολή fgetpos(fp,metavliti) fsetpos(fp,metavliti) που κραταει τη θέση του κέρσορα αλλά δν ξέρω κατά πόσο θα θελε αυτή,Κάποιος που γνωρίζει ας απαντήσει σύντομα γτ χανόμαστεεεε!!!!!ευχαριστώ
Αν χρησιμοποιεισεις καποια εντολη π δν εχει αναφερει ο κορτεσης δεν στο πιανει για σωστο ν τ θυμασε αυτο
Αν θυμαμε καλα τ παραπανχ π ειπες δεν εχουν ειπωθει στο μαθημα του
ναι κατάλαβα.γενικα η μεθοδολογία που ίσως χρειάζεται είναι η ύπαρξη δομών με μεταβλητές τα επιμέρους στοιχεία του χρήστη του προϊόντος κτλ.Αυτό με βοηθάει στο γεγονός ότι μπορώ να διαβάσω όλα μαζί τα στοιχεία του ενός χρήστη χωρίς να χρειάζεται ενα-ενα αναγκαστικά με fread .μονο όταν θέλω κάτι συγκεκριμένο από τα στοιχεία το κάνω αυτό.επίσης των αριθμό των σειρων του αρχείου μπορώ να τον πάρω από τη διαίρεση ftell(fp)/sizeof(a) όπου a όνομα δομής και να αποθηκεύσω το πλήθος αυτό σε μια μεταβλητή στη main ώστε να το χρησιμοποιώ.Έτσι αν θέλω να βρω κάποιο μέγιστο με μια for(i=0; i<ftell(fp)/sizeof(a); i++) να βρίσκω θέση i που ξεκινάει η γραμμή και διαβάζοντας από κει πάιρνω την τιμή.Σωστά?Αν μπορεί κάποιος ας με διορθώσει γιατι αυτα τα getsize setsize συναρτήσεις που έκανε ο κορτέσης στην επίλυση της άσκησης F 2013μου φάνηκαν λίγο κινέζικα.Η ενεργειακή φοιτήτρια ζητάει την κατανόηση σας στις κοτσάνες  Smiley
Logged

eisai ap th brazil eimai ap ta H.M.M.Y Smiley
nikitas350
Καταξιωμένος/Καταξιωμένη
***
Posts: 201



View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #41 on: October 07, 2013, 15:39:55 pm »

Quote from: kleopatra on October 07, 2013, 13:29:53 pm
Quote from: PureForm on October 07, 2013, 13:04:16 pm
Quote from: kleopatra on October 07, 2013, 09:27:28 am
παιδιά ξέρει κανείς από αρχεία; ο κορτέσης είπε  στο μάθημα του μήπως ότι θέλει σύνταξη δομής για την καταχώρηση πχ νεου πελάτη,νέου σεισμού κτλ?δλδ έτσι να λύσουμε και το θέμα με αρχείο?επίσης ποιος ξέρει ποια τεχνική χρησιμοποιούμε για να βρούμε που ακριβώς θα μετακινήσουμε τον κέρσορα ώστε να βρούμε για παράδειγμα κάποιο μέγιστο κάποιο ελάχιστο κοκ;βρηκα μια εντολή fgetpos(fp,metavliti) fsetpos(fp,metavliti) που κραταει τη θέση του κέρσορα αλλά δν ξέρω κατά πόσο θα θελε αυτή,Κάποιος που γνωρίζει ας απαντήσει σύντομα γτ χανόμαστεεεε!!!!!ευχαριστώ
Αν χρησιμοποιεισεις καποια εντολη π δν εχει αναφερει ο κορτεσης δεν στο πιανει για σωστο ν τ θυμασε αυτο
Αν θυμαμε καλα τ παραπανχ π ειπες δεν εχουν ειπωθει στο μαθημα του
ναι κατάλαβα.γενικα η μεθοδολογία που ίσως χρειάζεται είναι η ύπαρξη δομών με μεταβλητές τα επιμέρους στοιχεία του χρήστη του προϊόντος κτλ.Αυτό με βοηθάει στο γεγονός ότι μπορώ να διαβάσω όλα μαζί τα στοιχεία του ενός χρήστη χωρίς να χρειάζεται ενα-ενα αναγκαστικά με fread .μονο όταν θέλω κάτι συγκεκριμένο από τα στοιχεία το κάνω αυτό.επίσης των αριθμό των σειρων του αρχείου μπορώ να τον πάρω από τη διαίρεση ftell(fp)/sizeof(a) όπου a όνομα δομής και να αποθηκεύσω το πλήθος αυτό σε μια μεταβλητή στη main ώστε να το χρησιμοποιώ.Έτσι αν θέλω να βρω κάποιο μέγιστο με μια for(i=0; i<ftell(fp)/sizeof(a); i++) να βρίσκω θέση i που ξεκινάει η γραμμή και διαβάζοντας από κει πάιρνω την τιμή.Σωστά?Αν μπορεί κάποιος ας με διορθώσει γιατι αυτα τα getsize setsize συναρτήσεις που έκανε ο κορτέσης στην επίλυση της άσκησης F 2013μου φάνηκαν λίγο κινέζικα.Η ενεργειακή φοιτήτρια ζητάει την κατανόηση σας στις κοτσάνες  Smiley

Για να δουλεύεις με δομές σε ένα αρχείο πρέπει να το ανοίξεις ως binary.
+Η fteel σου λέει που βρίσκεσαι. Για να βρείς το "μέγεθος" του αρχείου θα πρέπει να κάνεις

int size;
fseek(fp, 0, SEEK_END);
size = ftell(fp);

(η SEEK_END πλέον μπορεί να μην τρέχει σε όλους τους compiler σωστά, αλλά νομίζω ότι ο κορτέσης την δέχεται)
Logged
heavy melon
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Female
Posts: 1386


making things complex


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #42 on: October 07, 2013, 16:55:26 pm »

πότε χρησιμοποιούμε fprintf, fscanf
και πότε fread, fwrite?

διάβασα κάπου ότι οι fread, fwrite είναι για τυχαία προσπέλαση αρχείων
σε συνδυασμό με fseek. αλλά δε το πολυκατάλαβα αυτό. αφού και με τις άλλες 2 δε μπορούμε να κάνουμε τυχαία προσπέλαση με χρήση fseek?

Επίσης θεωρούμε πάντα τυχαίας προσπέλασης αρχεία ή σειριακά ή μας το διευκρινίζει?

edit: οι διαφορές που ρωτάω παραπάνω μήπως έχουν να κάνουν με το buffering κυρίως?  Huh
« Last Edit: October 07, 2013, 16:58:05 pm by ~Irida~ » Logged

Μη γκρινιάζεις που δε σου 'ρθε η ζαριά
τζογάρισες στο όνειρο κι είσαι έτοιμος για όλα
Fcoriolis
Guest
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #43 on: November 15, 2013, 03:13:33 am »

Την άσκηση με τον Αλγόριθμο αναζήτησης της κινητικής αντίδρασης στερεάς κατάστασης μπόρεσε να τη λύσει κανείς;
Logged
adiaforos
Καταξιωμένος/Καταξιωμένη
***
Posts: 236


View Profile
Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 12-13
« Reply #44 on: February 05, 2014, 01:55:13 am »

σε ενα αρχειο..,εχοντας περασει τους αριθμους-εγγραφες με το fwrite ,αμα μετα θελησεις να τα ανακτησεις στη main και να τα εκτυπωσεις αρκει μια for και μεσα να εχει το fread η χρειαζεται μεσα στη for να βαλω και την εντολη fseek(fp,sizeof(int),seek_cur)??
δηλαδη αυτο που ρωταω ειναι αν με το fread οταν κανει αναγνωσει τα δεδομενα απο το αρχειο μετακινειται και ο δεικτης στο τελος τησ αναγνωσης η ξανα επανερχεται στην αρχη
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...