Νέα

Ζώνη Ελεύθερου / Ανοικτού Κώδικα Λογισμικού

  • Μέλος που άνοιξε το νήμα TurboThor
  • Ημερομηνία ανοίγματος
  • Απαντήσεις 124
  • Εμφανίσεις 7K
  • Tagged users Καμία
  • Βλέπουν το thread αυτή τη στιγμή 3 άτομα (0 μέλη και 3 επισκέπτες)

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
Να εκφράσω κάποιες απορίες χωρίς καμια διάθεση αντιπαράθεσης.

Τι εννοείς πως θα είσαχθεί ένας αριθμός στο GUI;
( κάποιο παράδειγμα; )
Τι φύση και στοπό έχουν τα προγράμματα που κάνεις;

Πως χειρίζεται το GUI τα δεδομένα που εισάγει ο χρήστης

ή καλυτερα πως διαβάζει ενα GUI τα δεδομενα που εισαγει ενας χρηστης...

ειτε αυτα ειναι ακεραιοι ειτε ειδικοι χαρακτηρες ειτε γραμματα (χαρακτηρες).
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
Ε ναι, είναι ερωτήσεις αυτές; Εγώ στη θέση του Boltemort θα είχα προσβληθεί και δε θα ξανάγραφα στο thread με τόσους άσχετους που τολμούν να ρωτήσουν τα αυτονόητα...


Παράτα τα και τα 2. Παίξε με το πουλί σου μόνο μπας και ησυχάσουμε.

Κοιταξε επειδη τελικα μαλλον αλλος εχει προβλημα κατανοησης.
Εχουμε μια κουβεντα εδω και μπηκες να δημιουργησεις προβλημα.
Ξεκαθαρισα χθες πως δεν θυμαμαι αυτα που ρωτησες και πως νικησες . Εγω χθες ειπα
πως ΑΝ καποιος ειναι πληροφορικαριος και ΑΝ ενω ειναι θεωρει πως το να κανει ενα
compile στον κερνουλα που ειπες και εσυ ειναι ανωμαλια τοτε το επιπεδο του ακομη ειναι χαμηλο.

Εσυ γιατι προσβληθηκες? Χαμηλο ειναι το επιπεδο του αν δεν εχει μπει μεσα στα σκατα να καταλαβει
πως δουλευει το συστημα... αν παρολαυτα δεν θελει και δεν γουσταρει ας παει να κανει ενα μεταπτυχιακο στα οικονομικα να το γυρισει και να το παιξει μανατζερ. (Οχι πως υποτιμω την δουλεια του μανατζερ απλα λεω)

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

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
Πως χειρίζεται το GUI τα δεδομένα που εισάγει ο χρήστης

ή καλυτερα πως διαβάζει ενα GUI τα δεδομενα που εισαγει ενας χρηστης...

ειτε αυτα ειναι ακεραιοι ειτε ειδικοι χαρακτηρες ειτε γραμματα (χαρακτηρες).

Δηλαδή σε μια GUI φόρμα εισαγωγής δεδομένων όταν εισάγεται ένας Integer ( πχ. 12 )
και θα τον διαχειρηστούμε όπως θέλουμε με κάποια γλώσσα προγρ. ( C, C++, Assembly )
αυτή η μεταβλητή αλλάζει;
Ξέρω οτι απο Windows σε Linux υπάρχουν καποιες διαφορές σε κάποιες συναρτήσεις στα αποτελέσματα
πχ. random και ο λόγος είναι απλά στην διαφορά που υπάρχει ως προς την διαχείρηση του λειτουργικού με τον αριθμιτικό καταχωρητή.

Αλλά δεν νομίζω να υπάρχει αλλά περιεχομάνου σε μεταβλητη απο GUI περιβάλον σε περιβάλον console
εαν μπορώ να το πω έτσι.


Και πάλι να πω οτι κάνω διάλογο οχι αντιπαράθεση ( μπορεί όλοι μας να μάθουμε κάτι καινουργιο έτσι )
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
Δηλαδή σε μια GUI φόρμα εισαγωγής δεδομένων όταν εισάγεται ένας Integer ( πχ. 12 )
και θα τον διαχειρηστούμε όπως θέλουμε με κάποια γλώσσα προγρ. ( C, C++, Assembly )
αυτή η μεταβλητή αλλάζει;
Ξέρω οτι απο Windows σε Linux υπάρχουν καποιες διαφορές σε κάποιες συναρτήσεις στα αποτελέσματα
πχ. random και ο λόγος είναι απλά στην διαφορά που υπάρχει ως προς την διαχείρηση του λειτουργικού με τον αριθμιτικό καταχωρητή.

Αλλά δεν νομίζω να υπάρχει αλλά περιεχομάνου σε μεταβλητη απο GUI περιβάλον σε περιβάλον console
εαν μπορώ να το πω έτσι.


Και πάλι να πω οτι κάνω διάλογο οχι αντιπαράθεση ( μπορεί όλοι μας να μάθουμε κάτι καινουργιο έτσι )

τι εννοεις οταν λες φορμα εισαγωγης δεδομενων? ΕΓω λεω για την τυπικη εισοδο απο το πληκτρολογιο.
Τελοαπαντων τα GUI συνηθως έχουν δικια τους συνάρτηση διαβάσμαστος και χειρίζονται-διαβάζουν τα παντα ως strings.  :) Οποτε θα πρεπει να ξέρεις να τα μετατρέπεις και σε αριθμούς οποτε χρειάζεται για παραδειγμα σε εναν δικο σου κωδικα απο μια συνάρτηση.

Διαφορες με τα Windows υπαρχουν.
 

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
τι εννοεις οταν λες φορμα εισαγωγης δεδομενων? ΕΓω λεω για την τυπικη εισοδο απο το πληκτρολογιο.
Τελοαπαντων τα GUI συνηθως έχουν δικια τους συνάρτηση διαβάσμαστος και χειρίζονται-διαβάζουν τα παντα ως strings.  :) Οποτε θα πρεπει να ξέρεις να τα μετατρέπεις και σε αριθμούς οποτε χρειάζεται για παραδειγμα σε εναν δικο σου κωδικα απο μια συνάρτηση.

Διαφορες με τα Windows υπαρχουν.

Εχεις δίκιο οτι τα GUI δέχονται τα πάντα σαν strings αυτό είναι και ένα πρόβλημα που αντιμετώπησα
όταν ξεκίνησα να σκαλίζω διάφορα ( Qt, Netbeans ) για να δημιούργησω GUIs Application. Αλλά μετατρέπεις τα Inputs σε ότι θέλεις χρεισημοποιώντας built in functions της ίδιας της γλώσσας.

Φόρμα εισαγωγής δεδομένων είναι οποιαδήποτε application που διαχειρήζετε πληροφορίες που εισάγη ο χρήστης και εμφανίζει αποτελέσματα.
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
Εχεις δίκιο οτι τα GUI δέχονται τα πάντα σαν strings αυτό είναι και ένα πρόβλημα που αντιμετώπησα
όταν ξεκίνησα να σκαλίζω διάφορα ( Qt, Netbeans ) για να δημιούργησω GUIs Application. Αλλά μετατρέπεις τα Inputs σε ότι θέλεις χρεισημοποιώντας built in functions της ίδιας της γλώσσας.

Φόρμα εισαγωγής δεδομένων είναι οποιαδήποτε application που διαχειρήζετε πληροφορίες που εισάγη ο χρήστης και εμφανίζει αποτελέσματα.

:2funny: :2funny: :2funny: :2funny: :2funny: ναι οκ... ειμαι λιγο ζαλισμενος !!!!

ΑΥτες εδω εννοεις?


 

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
:2funny: :2funny: :2funny: :2funny: :2funny: ναι οκ... ειμαι λιγο ζαλισμενος !!!!

ΑΥτες εδω εννοεις?


Και οχι μόνο πχ. στην Java μπορείς να χρεισημοποιήσεις πχ. (int) όνομα μεταβλητής  τα λέω κάπως απλά.
Αλλά μην ξεχνάς οτι σε όλες ισχύοι ο κανόνας οτι c=a+b δηλαδή ας είναι text εφόσον ο χρήστης δώσει αριθμούς θα γίνει η πρόσθεση σωστά.
Τώρα βέβαια υπάρχει και ο ελενχος τι πληκτρολογεί ο χρήστης άλλη συζήτηση αυτή.
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
Και οχι μόνο πχ. στην Java μπορείς να χρεισημοποιήσεις πχ. (int) όνομα μεταβλητής  τα λέω κάπως απλά.
Αλλά μην ξεχνάς οτι σε όλες ισχύοι ο κανόνας οτι c=a+b δηλαδή ας είναι text εφόσον ο χρήστης δώσει αριθμούς θα γίνει η πρόσθεση σωστά.
Τώρα βέβαια υπάρχει και ο ελενχος τι πληκτρολογεί ο χρήστης άλλη συζήτηση αυτή.

Απο Java δεν γνωριζω , δεν μπορω να εκφερω αποοψη. Μονο μια υποθεση μπορω να κανω
οτι αυτο το (int) ονομα_μεταβλητης ειναι ουσιαστικα μετατροπέας? ΑΠλα μετατρεπει την μεταβλητή σε integer τυπο δεδομένων?
Τωρα σχετικα με τον ελεγχο.. αυτο πιστευω πως ειναι κυριως προβλημα της συνάρτησης
που χρησιμοποιει ο κωδικας και οχι τοσο του τι δινει ο χρήστης , απλα μεσω του χρηστη μπορεις να εντοπισεις τις αδυναμιες - ευπαθειες σε μια συναρτηση και για να μιλησω πιο συγκεκριμενα
ορισμενες συναρτήσεις που διαβάζουν απο το stdin πασχουν απο το πρόβλημα με το buffer αν εχεις ακουστα... το εχεις?
 

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
buffer -> Περιοχή φυσικής μνήμης όπου αποθηκεύονται προσωρινά δεδομένα ( πχ. buffer εκτυπωτή ).

πιο είναι το πρόβλημα με τα buffer απο το πληκτρολόγιο που είναι και standard input.
 

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
Μαλακία δεν είναι αυτό; :rolleyes:

Και φυσικά είναι αλλά απο την στιγμή που δημιούργουνται εργαλεία για την ευκολία στον προγραμμτισμό αυτά θα τα υποστείς.
- Ας πούμε με το Visual Studio ο καθένας κάνει προγράμματα απλά με drag & drop
και έτσι χάθηκε ο δομημένος προγραμματισμός.
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
buffer -> Περιοχή φυσικής μνήμης όπου αποθηκεύονται προσωρινά δεδομένα ( πχ. buffer εκτυπωτή ).

πιο είναι το πρόβλημα με τα buffer απο το πληκτρολόγιο που είναι και standard input.


Το προβλημα ειναι (τουλαχιστον στο λινουξ) το οποιο δεν δεχεται την συναρτηση fflush(stdin)
οτι το buffer εχει "βρωμισει" απο ακριβως προηγουμενη εισοδο σου  :) επομενως αν το βαλεις μεσα σε ενα loop (μπορει και να παιζει χωρις loop δεν θυμαμαι τωρα) θα καταλαβεις απο την εξοδο οτι σου δινει διπλα αποτελεσματα... αυτο συμβαινει λογω του οτι μενουν  απο πριν και τα ξαναβγαζει... αν θυμαμαι καλα η getchar πρεπει να εχει αυτο ακριβως το προβλημα.. επομενως θα πρεπει να χρησιμοποιεις την fgets και αν και αυτη δεν σου κανει... τοτε φτιαχνεις μια δικια σου στο αψε σβησε που διορθωνει τα προβληματα των ετοιμων...

ειναι σαν να λεμε... μην παρεις φαστ φουντ... κατσε ρε τεμπελη και μαγειρεψε σπιτισιο φαγητο  :2funny: :2funny: :2funny:

* Η fflush αν θυμαμαι καλα απλα καθαριζει το buffer οποτε εκει δεν μπορεις να διακρινεις το προβλημα. Στο λινουξ δεν παιζει η fflush. Στα windows κανεις καποιο header including για να την συμπεριλαβει στον πηγαιο ή μπαινει ετσι?  :think: :think: :think:

δεν θυμαμαι ρε.... και να φανταστεις τα εκανα και πριν κανα 3μηνο (προγραμματισμο σε windows)

και μπηκε χθες ο αλλος και πηγε να με βγαλει ψευτη επειδη δεν θυμομουν ποιες εντολες ειχα τρεξει οταν εκανα μεταγλωτιση τον πυρηνα  :grin: (πριν 2 χρονια)
 

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
Το προβλημα ειναι (τουλαχιστον στο λινουξ) το οποιο δεν δεχεται την συναρτηση fflush(stdin)
οτι το buffer εχει "βρωμισει" απο ακριβως προηγουμενη εισοδο σου  :) επομενως αν το βαλεις μεσα σε ενα loop (μπορει και να παιζει χωρις loop δεν θυμαμαι τωρα) θα καταλαβεις απο την εξοδο οτι σου δινει διπλα αποτελεσματα... αυτο συμβαινει λογω του οτι μενουν  απο πριν και τα ξαναβγαζει... αν θυμαμαι καλα η getchar πρεπει να εχει αυτο ακριβως το προβλημα.. επομενως θα πρεπει να χρησιμοποιεις την fgets και αν και αυτη δεν σου κανει... τοτε φτιαχνεις μια δικια σου στο αψε σβησε που διορθωνει τα προβληματα των ετοιμων...

ειναι σαν να λεμε... μην παρεις φαστ φουντ... κατσε ρε τεμπελη και μαγειρεψε σπιτισιο φαγητο  :2funny: :2funny: :2funny:

* Η fflush αν θυμαμαι καλα απλα καθαριζει το buffer οποτε εκει δεν μπορεις να διακρινεις το προβλημα. Στο λινουξ δεν παιζει η fflush. Στα windows κανεις καποιο header including για να την συμπεριλαβει στον πηγαιο ή μπαινει ετσι?  :think: :think: :think:

δεν θυμαμαι ρε.... και να φανταστεις τα εκανα και πριν κανα 3μηνο (προγραμματισμο σε windows)

και μπηκε χθες ο αλλος και πηγε να με βγαλει ψευτη επειδη δεν θυμομουν ποιες εντολες ειχα τρεξει οταν εκανα μεταγλωτιση τον πυρηνα  :grin: (πριν 2 χρονια)

Βασικός κανόνας του προγραμματισμού το λένε από παλιά σε όλα τα καλά σχολεία ( αυτο είναι σχόλιο για πλάκα )

Πριν χρεισημοποιήσεις μια μεταβλητή μηδένισε την
 

40DDD

Μέλος
Εγγρ.
29 Μαΐ 2011
Μηνύματα
3.729
Like
17
Πόντοι
16
Και φυσικά είναι αλλά απο την στιγμή που δημιούργουνται εργαλεία για την ευκολία στον προγραμμτισμό αυτά θα τα υποστείς.
- Ας πούμε με το Visual Studio ο καθένας κάνει προγράμματα απλά με drag & drop
και έτσι χάθηκε ο δομημένος προγραμματισμός.
Εγώ είμαι της παλιάς σχολής (strongly typed languages, functional programming κλπ). ;)
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
Βασικός κανόνας του προγραμματισμού το λένε από παλιά σε όλα τα καλά σχολεία ( αυτο είναι σχόλιο για πλάκα )

Πριν χρεισημοποιήσεις μια μεταβλητή μηδένισε την

δεν χρειαζεται... την δουλεια αυτη την κανει το λειτουργικο συστημα αντι για μενα  :cheesy:

Ποια η έξοδος του παρακάτω? :cheesy: (το εκανα προχειρα για να δω αν ισχυει αυτο που υποστηριζω παραπανω)
       
Κώδικας:
#include<stdio.h>
int main()
{
	int j;
	
	for(j=0; j<4; j++)
	
	printf("%d",j);
return 0;
}

βασικα αρχικοποιηση χρειάζεται να κάνεις στους δείκτες. Βεβαια αν δεν ασχολεισαι με C τσαμπα στα λεω...
 

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
Output -> 0,1,2,3

Αυτό θα τυπώσει
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
Output -> 0,1,2,3

Αυτό θα τυπώσει

Ακριβως επομενως... το μονο που χρειαζεται ειναι απλα να την δηλωσεις (για να αποκτησει διευθυνση μνημης)!!! Την αρχικοποιηση θα την κανει το λειτουργικο (τον μηδενισμο που ειπες παραπανω)... επομενως μηπως ειναι αλλο το νοημα της συμβουλης που δινεις το οποιο δεν ειμαι σε θεση να πιασω αυτη τη στιγμη  :think: :think: :think: επομενως ξηγησου!!!

να ριξω και εγω μια δικη μου συμβουλη?

Λοιπον επειδη βλεπω πολλους.... να μαθαινουν 10 γλωσσες προγραμματισμου ταυτοχρονα... ή μετα απο μερικους μηνες  ξαφνικα να σου λενε πως ξερουν 10 γλωσσες ενω μεχρι πριν δεν ηξεραν καμια... παιδια απλα αν δεν εχετε καταλαβει κατι 100% μην πατε στο επομενο... οσοι ειστε προγραμματιστες στρωθειτε να λυσετε μερικες ασκησεις... να δειτε αν καταλαβαινετε το εκαστοτε chapter... δεν εχει νοημα να "γνωριζεις" 10 γλωσσες και επι της ουσιας να μην ξερεις πραγματικα ουτε μια απο αυτες. ΔΙκη μου ταπεινη συμβουλη  ;)
 

Boldemort

Σεβαστός
Εγγρ.
4 Σεπ 2009
Μηνύματα
47.529
Κριτικές
12
Like
42
Πόντοι
1.220
οπα λαθος μου... στον παραπανω κωδικα... η j ουτως η αλλως αρχικοποιειται μεσα στην for...  :2funny: :2funny: :2funny:  τι μαλακας θα γελουσε και ο παρδαλος κωδικας!!!... μισο να το διορθωσω τωρα που το ξανακοιταξα καλυτερα!
ειπα και πριν... ειμαι ζαλισμενος αποψε!!!

Κώδικας:
int main()
{
	int j;
	
	//for(j=0; j<4; j++)
	
	printf("%d",j);
	
	j++;
	
	printf("%4d",j);

τωρα ειναι οκ! Δεν την αρχικοποιω πουθενα.. παιρνει την τιμη 0 απο το OS και στην συνεχεια την αυξανει 1 φορα... ισα ισα για να δειξουμε το παραδειγμα...

χεχεχεχε
 

LoneMarvel

Μέλος
Εγγρ.
11 Μαΐ 2006
Μηνύματα
1.157
Like
353
Πόντοι
36
Ακριβως επομενως... το μονο που χρειαζεται ειναι απλα να την δηλωσεις (για να αποκτησει διευθυνση μνημης)!!! Την αρχικοποιηση θα την κανει το λειτουργικο (τον μηδενισμο που ειπες παραπανω)... επομενως μηπως ειναι αλλο το νοημα της συμβουλης που δινεις το οποιο δεν ειμαι σε θεση να πιασω αυτη τη στιγμη  :think: :think: :think: επομενως ξηγησου!!!

να ριξω και εγω μια δικη μου συμβουλη?

Λοιπον επειδη βλεπω πολλους.... να μαθαινουν 10 γλωσσες προγραμματισμου ταυτοχρονα... ή μετα απο μερικους μηνες  ξαφνικα να σου λενε πως ξερουν 10 γλωσσες ενω μεχρι πριν δεν ηξεραν καμια... παιδια απλα αν δεν εχετε καταλαβει κατι 100% μην πατε στο επομενο... οσοι ειστε προγραμματιστες στρωθειτε να λυσετε μερικες ασκησεις... να δειτε αν καταλαβαινετε το εκαστοτε chapter... δεν εχει νοημα να "γνωριζεις" 10 γλωσσες και επι της ουσιας να μην ξερεις πραγματικα ουτε μια απο αυτες. ΔΙκη μου ταπεινη συμβουλη  ;)

Η συμβουλή είναι παλιός κανόνας όταν ακόμα το λειτουργικό ήταν Ms-Dos και το Unix υπήρχε σε κάποιες μεγάλες εταιρείες που τότε ψάχνανε για προγραμματιστές.
Και όπως καταλαβαίνεις το Dos δεν το έχεις εμπιστοσύνη τη θα κάνει με μια μεταβλητή.

Θα σου πω και κάτι ακόμα που μου το είπε ένας καθηγητης το 1991 περίπου.
Ολες οι γλώσσες προγραμματισμού έχουν 10 το πολλή εντολές
print, echo ( Display Outputs )
read, input ( Input Variables )
for, while ( Loop Commands )
if, switch ( Question Commands )
και καποιες που μου διαφεύγουν τώρα
αλλά όλες έχουν κάποιες χιλιάδες functions
αυτές ναι θα συμφωνησω μαζί σου πρέπει να ματώσεις για να της μάθεις.

μα πάνω απο όλα πρέπει να μάθεις να σχεδιάζεις σε χαρτί το τι θέλεις να κάνεις αλλιώς .....
 

40DDD

Μέλος
Εγγρ.
29 Μαΐ 2011
Μηνύματα
3.729
Like
17
Πόντοι
16
Η συμβουλή είναι παλιός κανόνας όταν ακόμα το λειτουργικό ήταν Ms-Dos και το Unix υπήρχε σε κάποιες μεγάλες εταιρείες που τότε ψάχνανε για προγραμματιστές.
Και όπως καταλαβαίνεις το Dos δεν το έχεις εμπιστοσύνη τη θα κάνει με μια μεταβλητή.

Θα σου πω και κάτι ακόμα που μου το είπε ένας καθηγητης το 1991 περίπου.

μα πάνω απο όλα πρέπει να μάθεις να σχεδιάζεις σε χαρτί το τι θέλεις να κάνεις αλλιώς .....
+1

Αυτό που εννοούσε είναι ότι αυτό που χρειάζεται είναι να μάθεις τη μεθολογία/τρόπο σκέψης. Η σύνταξη κάθε γλώσσσας μικρή σημασία έχει. ;)
 

Stories

Νέο!

Stories

Top Bottom