Εισαγωγή στον Προγραμματισμό Υπολογιστών
- pgetsos
- Venus Former Team Member
- Posts: 1192
- Joined: Sun Oct 13, 2013 1:29 am
- Academic status: MSc
- Gender: ♂
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Να συμπληρώσω, αν θες να συγκρίνεις δύο string, αν δηλαδή και τα δύο είναι "τάδε", σχεδόν πάντα με equals θες
str1.equals(str2)
Αν συγκρίνεις με literal, βάζε το αριστερά (θεωρείται "καλή πρακτική", ίδιο αποτέλεσμα έχει, αλλά καλό είναι να τα μάθεις από νωρίς κάτι τέτοια)
"tade".equals(str)
Αν θες να δεις που βρίσκεται ένας μόνο χαρακτήρας-γράμμα σε ένα String βάλε μονό αυτάκι στο index of. Ελαφρώς καλύτερη απόδοση, χρήσιμο μελλοντικά σε πρόγραμμα που θα σε νοιάζει αλλά είπαμε, οι καλές πρακτικές μαθαίνονται νωρίς
str.indexOf('s')
str1.equals(str2)
Αν συγκρίνεις με literal, βάζε το αριστερά (θεωρείται "καλή πρακτική", ίδιο αποτέλεσμα έχει, αλλά καλό είναι να τα μάθεις από νωρίς κάτι τέτοια)
"tade".equals(str)
Αν θες να δεις που βρίσκεται ένας μόνο χαρακτήρας-γράμμα σε ένα String βάλε μονό αυτάκι στο index of. Ελαφρώς καλύτερη απόδοση, χρήσιμο μελλοντικά σε πρόγραμμα που θα σε νοιάζει αλλά είπαμε, οι καλές πρακτικές μαθαίνονται νωρίς
str.indexOf('s')
Όταν μια μαύρη γάτα περάσει από μπροστά σου, σημαίνει ότι το ζώο πάει κάπου.
Μην αφήνεις τα μικρά μυαλά να σε πείσουν ότι τα όνειρα σου είναι πολύ μεγάλα.
Μην αφήνεις τα μικρά μυαλά να σε πείσουν ότι τα όνειρα σου είναι πολύ μεγάλα.
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Γιατι ομως το
επιστρεφει 1??? Aφου το Red δεν εχει το γραμμα s
Code: Select all
int x = color3.indexOf(s);
println (x);
- leecher
- Venus Former Team Member
- Posts: 139
- Joined: Fri Jan 23, 2015 9:47 pm
- Academic status: N>4
- Gender: ♂
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Το s είναι μεταβλητή. Δες πιο πάνω στον κώδικα σου να δεις σε τι αντιστοιχεί.
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Αναζητηση και ταξινομηση πεφτουν; Ειναι σος;
-
- Buffer underflow exception
- Posts: 2
- Joined: Mon Oct 14, 2013 5:33 pm
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Καλησπέρα! Τι μορφή έχει η εργαστηριακή εξέταση? Τι αυστηρότητα ως προς τη βαθμολόγηση και τι δυσκολία?
-
- bit level
- Posts: 14
- Joined: Sun Apr 26, 2015 5:27 pm
- Gender: ♂
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Μέτριας αυστηρότητας, σχετικά εύκολη σε σχέση με άλλους διδάσκοντες με αρκετές tricky ερωτήσεις και κώδικα που απαιτεί να έχεις καταλάβει τα functions, τις classes, το this κ.ο.κ.
Πρέπει να έχεις κάνει τις εργασίες και είσαι σε θέση να τις λύσεις στο χαρτί στο χρόνο που έχεις. Επίσης δες παλαιά θέματα γιατί οι tricky ερωτήσεις είναι παρόμοιες, π.χ. τι θα εμφανίσει το println(1+""+1) (εμφανίζει 11).
Πρέπει να έχεις κάνει τις εργασίες και είσαι σε θέση να τις λύσεις στο χαρτί στο χρόνο που έχεις. Επίσης δες παλαιά θέματα γιατί οι tricky ερωτήσεις είναι παρόμοιες, π.χ. τι θα εμφανίσει το println(1+""+1) (εμφανίζει 11).
- mashua
- bit level
- Posts: 18
- Joined: Wed Mar 11, 2015 10:56 pm
- Academic status: 1st year
- Gender: ♂
- Location: @th3n$
- Contact:
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Καλημέρα σε όλους, ερωτησούλες σχετικά με την εργαστηριακή εξέταση:
Θα μας εξετάσει στις ασκήσεις ή σε θέματα που θα εχουν ετοιμάσει εκείνη την ώρα;
Αν έχουν υπωθεί κάπου αυτα sorry αλλα είμαι παλαιότερου έτους και θα παραδώσω μόνο την τελευταια άσκηση και επίσης επειδή δεν εχω πάει σε εργαστήρια δε ξέρω τι παίζει. Η εργαστηριακή εξέταση είναι διαφορετική απο τις εξετάσεις για τις ασκήσεις;
Θενκσ προκαταβολικά.
Θα μας εξετάσει στις ασκήσεις ή σε θέματα που θα εχουν ετοιμάσει εκείνη την ώρα;
Αν έχουν υπωθεί κάπου αυτα sorry αλλα είμαι παλαιότερου έτους και θα παραδώσω μόνο την τελευταια άσκηση και επίσης επειδή δεν εχω πάει σε εργαστήρια δε ξέρω τι παίζει. Η εργαστηριακή εξέταση είναι διαφορετική απο τις εξετάσεις για τις ασκήσεις;
Θενκσ προκαταβολικά.
-
- byte level
- Posts: 120
- Joined: Tue Oct 07, 2014 8:17 pm
- Academic status: Alumnus/a
- Gender: ♂
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
1) Θέματα εκείνης της ώραςmashua wrote:Καλημέρα σε όλους, ερωτησούλες σχετικά με την εργαστηριακή εξέταση:
Θα μας εξετάσει στις ασκήσεις ή σε θέματα που θα εχουν ετοιμάσει εκείνη την ώρα;
Αν έχουν υπωθεί κάπου αυτα sorry αλλα είμαι παλαιότερου έτους και θα παραδώσω μόνο την τελευταια άσκηση και επίσης επειδή δεν εχω πάει σε εργαστήρια δε ξέρω τι παίζει. Η εργαστηριακή εξέταση είναι διαφορετική απο τις εξετάσεις για τις ασκήσεις;
Θενκσ προκαταβολικά.
2) Εκτός και αν άλλαξε κάτι δεν γίνεται εξέταση στις εργασίες
- mashua
- bit level
- Posts: 18
- Joined: Wed Mar 11, 2015 10:56 pm
- Academic status: 1st year
- Gender: ♂
- Location: @th3n$
- Contact:
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Οκ, thanks mate!efev2014 wrote: 1) Θέματα εκείνης της ώρας
2) Εκτός και αν άλλαξε κάτι δεν γίνεται εξέταση στις εργασίες
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Slide 7, από powerpoint "Εισαγωγή":
Αν είστε πρωτοετείς:
3 σειρές προγραμματιστικών ασκήσεων
Α = βαθμός ασκήσεων (άριστα =2)
Ε = βαθμός εργαστηρίου (άριστα =2)
Δ = βαθμός τελικής εξέτασης (άριστα=6)
Τελικός βαθμός Τ= Δ + Α+Ε, εάν Δ>=2
= Δ, εάν Δ<2
Προβιβάσιμος βαθμός: T>= βάση = 5
Το Α ειναι και για τις 3 ασκησεις ή για εστω μια;
Εχω δωσει 2 προγραμματιστικες ασκησεις. Πρεπει να γραψω βαθμο τουλαχιστον 2 στα γραπτα;
Αν είστε πρωτοετείς:
3 σειρές προγραμματιστικών ασκήσεων
Α = βαθμός ασκήσεων (άριστα =2)
Ε = βαθμός εργαστηρίου (άριστα =2)
Δ = βαθμός τελικής εξέτασης (άριστα=6)
Τελικός βαθμός Τ= Δ + Α+Ε, εάν Δ>=2
= Δ, εάν Δ<2
Προβιβάσιμος βαθμός: T>= βάση = 5
Το Α ειναι και για τις 3 ασκησεις ή για εστω μια;
Εχω δωσει 2 προγραμματιστικες ασκησεις. Πρεπει να γραψω βαθμο τουλαχιστον 2 στα γραπτα;
- Georgilakis Antonios
- Mbyte level
- Posts: 548
- Joined: Mon Dec 02, 2013 11:10 pm
- Academic status: Alumnus/a
- Gender: ♂
- Location: Straight into your Mind
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Το "Α" είναι και για τις τρεις ασκήσεις όλες μαζί. (~0.6 μονάδες η κάθε μία)fox0077 wrote:Slide 7, από powerpoint "Εισαγωγή":
Αν είστε πρωτοετείς:
3 σειρές προγραμματιστικών ασκήσεων
Α = βαθμός ασκήσεων (άριστα =2)
Ε = βαθμός εργαστηρίου (άριστα =2)
Δ = βαθμός τελικής εξέτασης (άριστα=6)
Τελικός βαθμός Τ= Δ + Α+Ε, εάν Δ>=2
= Δ, εάν Δ<2
Προβιβάσιμος βαθμός: T>= βάση = 5
Το Α ειναι και για τις 3 ασκησεις ή για εστω μια;
Εχω δωσει 2 προγραμματιστικες ασκησεις. Πρεπει να γραψω βαθμο τουλαχιστον 2 στα γραπτα;
Θα πρέπει στο τέλος να γράψεις τουλάχιστον 2/6 μονάδες, και η συνάρτηση Τ = Δ + Α + Ε να δίνει αποτέλεσμα >= 5 για να επιτύχεις στο μάθημα.
"Always keep a low profile. Cause when you get high, things can become strange."
"Never stop doing things you like. Never stop loving people you love. Never give up. Believe in yourself. Believe in your hidden powers."
"Honesty is an expensive gift, so don't expect it from cheap people."
The Scientist
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Δηλαδη 1 εργασια στην αριστη μορφη της δινει 0.6 μοναδες;
- Georgilakis Antonios
- Mbyte level
- Posts: 548
- Joined: Mon Dec 02, 2013 11:10 pm
- Academic status: Alumnus/a
- Gender: ♂
- Location: Straight into your Mind
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Ναι. (Ή όσο δίνει τελοσπάντων)fox0077 wrote:Δηλαδη 1 εργασια στην αριστη μορφη της δινει 0.6 μοναδες;
Γενικά το άθροισμα των μονάδων των εργασιών είναι <= 2. (εκτός αν υπάρχει κάποιο bonus βέβαια)
"Always keep a low profile. Cause when you get high, things can become strange."
"Never stop doing things you like. Never stop loving people you love. Never give up. Believe in yourself. Believe in your hidden powers."
"Honesty is an expensive gift, so don't expect it from cheap people."
The Scientist
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Αν από διαφάνειες και εργαστηριακά είμαστε εντάξει, χρειάζεται περαιτέρω διάβασμα από βιβλίο ή κάτι;
- Georgilakis Antonios
- Mbyte level
- Posts: 548
- Joined: Mon Dec 02, 2013 11:10 pm
- Academic status: Alumnus/a
- Gender: ♂
- Location: Straight into your Mind
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Practice για περισσότερη εξοικείωση. (Αν αυτό χρειάζεται)chris- wrote:Αν από διαφάνειες και εργαστηριακά είμαστε εντάξει, χρειάζεται περαιτέρω διάβασμα από βιβλίο ή κάτι;
Αν θες μπορείς να δεις και τα παραδείγματα του βιβλίου, και ειδικά τα κεφάλαια που απευθύνονται στα ACM graphics.
Προσωπικά θα έλεγα να μην αγνοηθούν ούτε τα εύκολα, γιατί από τα εύκολα μπορεί να χάσει κανείς μονάδες σε συνδυαστικά θέματα.
Last edited by Georgilakis Antonios on Sat Jan 28, 2017 5:30 am, edited 1 time in total.
"Always keep a low profile. Cause when you get high, things can become strange."
"Never stop doing things you like. Never stop loving people you love. Never give up. Believe in yourself. Believe in your hidden powers."
"Honesty is an expensive gift, so don't expect it from cheap people."
The Scientist
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Οκ, ευχαριστώ! ^_^Georgilakis Antonios wrote:Όχι, μόνο practice για περισσότερη εξοικείωση. (Αν αυτό χρειάζεται)
-
- Buffer underflow exception
- Posts: 1
- Joined: Mon Jan 30, 2017 6:58 pm
- Academic status: 1st year
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Καλησπερα σας, ειμαι πρωτοετης και θα δωσω το μαθημα για πρωτη φορα. Εχω κανει μια αναγνωση ολο το βιβλιο και τις διαφανειες και ξερω τα βασικα, ωστοσο αισθανομαι ανασφαλεια για το αν θα περασω το μαθημα. Μπορειτε να μου πειτε που να δωσω προσοχη τοσο για την εργαστηριακη εξεταση οσο και για την γραπτη;
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Μπορει καποιος να μου πει τις απαντησεις σε αυτα τα ερωτηματα; Εχω αρχισει να ανησυχω για την java...
α) Εστω οτι εχουμε ορισει την ακολουθη ταξη με ονομα Counter.
Εξηγηστε τι θα εμφανιστει στην κονσολα κατα την εκτελεση της παρακατω κυριας μεθοδου:
β) Εστω οτι εχουμε ορισει μια υπερ-ταξη η οποια μεταξυ αλλων περιλαμβανει και τις ακολουθες δηλωσεις μεταβλητων στιγμιοτυπου
Εστω οτι στην συνεχεια οριζουμε μια υπο-ταξη της παραπανω ταξης οπου σε μια απο τις μεθοδους της εμφανιζεται η δηλωση
Εξηγηστε αν αυτη η δηλωση θα οδηγησει σε σφαλμα ή οχι.
γ) Εξηγηστε τι θα εμφανιστει στην κονσολα κατα την εκτελεση του κωδικα (εμενα δεν μου το τρεχει καν)
α) Εστω οτι εχουμε ορισει την ακολουθη ταξη με ονομα Counter.
Code: Select all
public class Counter {
public int value;
public int getValue() {
return value;
}
public void increase() {
value++;
}
public Counter(int start){
value = start;
}
public Counter(int start) {
value = start;
}
public Counter() {
value = 0;
}
}
Code: Select all
public void run() {
Counter c1 = new Counter(25);
Counter c2 = new Counter();
println(c1.value);
println(c2.value);
c2 = c1;
println(c1.value);
println(c2.value):
c1.increase();
c1.increase();
c1.increase();
println(c1.value);
println(c2.value);
}
Code: Select all
private static final int x = 5;
private int y;
Code: Select all
int n1 = this.x*5;
γ) Εξηγηστε τι θα εμφανιστει στην κονσολα κατα την εκτελεση του κωδικα (εμενα δεν μου το τρεχει καν)
Code: Select all
int x = 5, y = 10;
x-=--y;
int a = y++*y--%y;
println(x);
println("msg"+x+y);
println(a);
- Georgilakis Antonios
- Mbyte level
- Posts: 548
- Joined: Mon Dec 02, 2013 11:10 pm
- Academic status: Alumnus/a
- Gender: ♂
- Location: Straight into your Mind
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
(A) Console Output:
ΣΗΜΕΙΩΣΗ: Πρέπει να αφαιρεθεί ο διπλός constructor (αυτός που είναι ίδιος δύο φορές), διαφορετικά έχουμε compile error.
(B) Η δήλωση δεν οδηγεί σε σφάλμα.
(Γ) Console Output:
Code: Select all
25
0
25
25
28
28
(B) Η δήλωση δεν οδηγεί σε σφάλμα.
(Γ) Console Output:
Code: Select all
-4
msg-49
0
"Always keep a low profile. Cause when you get high, things can become strange."
"Never stop doing things you like. Never stop loving people you love. Never give up. Believe in yourself. Believe in your hidden powers."
"Honesty is an expensive gift, so don't expect it from cheap people."
The Scientist
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
μου εξηγεις λιγο το γ) ερωτημα; αυτο
x-=--y; και αυτο
int a = y++*y--%y;
κατα τα αλλα σε ευχαριστω παρα πολυ που μου απαντησες!
x-=--y; και αυτο
int a = y++*y--%y;
κατα τα αλλα σε ευχαριστω παρα πολυ που μου απαντησες!
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Καλησπερα, τι να κανουμε επαναληψη για την εργαστηριακη εξεταση; Να διαβασουμε οτι καναμε στα εργαστηρια του εξαμηνου ή θα ειναι κατι ανεξαρτητο απο αυτα; Περυσι τι σας εβαλαν εργαστηριακη εξεταση;
- Georgilakis Antonios
- Mbyte level
- Posts: 548
- Joined: Mon Dec 02, 2013 11:10 pm
- Academic status: Alumnus/a
- Gender: ♂
- Location: Straight into your Mind
Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών
Στην γραμμή:fox0077 wrote:μου εξηγεις λιγο το γ) ερωτημα; αυτο
x-=--y; και αυτο
int a = y++*y--%y;
κατα τα αλλα σε ευχαριστω παρα πολυ που μου απαντησες!
Code: Select all
x -= --y;
Προσοχή μεγάλη, δεν είναι ίδιο με y--.
Στην συνέχεια, ο τελεστής -= υποδεικνύει ότι το δεξί μέρος πρέπει να αφαιρεθεί από το αριστερό, και το αποτέλεσμα να αποθηκευτεί κατόπιν στο αριστερό μέρος. Ισοδύναμο με:
Code: Select all
x = x - (--y); // Παρενθέσεις όχι απαραίτητες.
ή
y = y - 1;
x = x - y;
Code: Select all
int a = y++ * y-- % y;
Code: Select all
int u = y++; // Επιστροφή τιμής y και κατόπιν προσαύξηση.
int v = y--; // Επιστροφή τιμής y (έχει προηγουμένως προσαυξηθεί) και κατόπιν αφαίρεση 1 μονάδας από αυτό.
int w = u * v; // Εκτέλεση πολλαπλασιασμού.
int a = w % y; // Εύρεση υπολοίπου του w με την τελική τιμή του y και αποθήκευση του αποτελέσματος στην μεταβλητή a.
Προσοχή στους postfix τελεστές (++/--), που εκτελούνται κατά αναλογία με το προηγούμενο πρόγραμμα.
Δες και το παρακάτω έγγραφο: https://docs.oracle.com/javase/tutorial ... ators.html
"Always keep a low profile. Cause when you get high, things can become strange."
"Never stop doing things you like. Never stop loving people you love. Never give up. Believe in yourself. Believe in your hidden powers."
"Honesty is an expensive gift, so don't expect it from cheap people."
The Scientist