Εισαγωγή στον Προγραμματισμό Υπολογιστών

Τα posts που έγιναν κατά την διάρκεια του Ακαδημαϊκού Έτους 2016-2017 για τα προπτυχιακά μαθήματα.
Sylleth
bit level
bit level
Posts: 34
Joined: Mon Sep 26, 2016 4:47 am
Academic status: 1st year
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Sylleth » Tue Dec 06, 2016 2:34 am

Georgilakis Antonios wrote:Όπα, sorry, my fault. :-D

In that case, υπάρχει και το NetBeans.
Ψηνομαι να χρησιμοποιησω netbeans για να μαθω java μεσα απο ενα mooc του πανεπιστημιου του ελσινκι. Βεβαια, απ'οσο ειδα μεχρι στιγμης οι διαφανειες και τα εργαστηρια σε εμας δουλευουν με το acm.jar (που δεν ειμαι σιγουρος τι ακριβως κανει) και ο κωδικας φαινεται ελειπης σε σχεση με αυτον του course. Τι φαση, αλλη java κανουμε στο δικο μας πανεπιστημιο?
User avatar
Georgilakis Antonios
Mbyte level
Mbyte level
Posts: 548
Joined: Mon Dec 02, 2013 11:10 pm
Academic status: Alumnus/a
Gender:
Location: Straight into your Mind

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Georgilakis Antonios » Tue Dec 06, 2016 4:14 am

Sylleth wrote:Ψηνομαι να χρησιμοποιησω netbeans για να μαθω java μεσα απο ενα mooc του πανεπιστημιου του ελσινκι. Βεβαια, απ'οσο ειδα μεχρι στιγμης οι διαφανειες και τα εργαστηρια σε εμας δουλευουν με το acm.jar (που δεν ειμαι σιγουρος τι ακριβως κανει) και ο κωδικας φαινεται ελειπης σε σχεση με αυτον του course. Τι φαση, αλλη java κανουμε στο δικο μας πανεπιστημιο?
Nop, απλά το πρόγραμμα σπουδών ξεκινάει με κάτι πιο απλό (για αρχή) για Java, και μετά περνά στην κανονική φάση. (Java ΙΙ course)
"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
Sylleth
bit level
bit level
Posts: 34
Joined: Mon Sep 26, 2016 4:47 am
Academic status: 1st year
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Sylleth » Tue Dec 06, 2016 9:04 pm

Georgilakis Antonios wrote:
Sylleth wrote:Ψηνομαι να χρησιμοποιησω netbeans για να μαθω java μεσα απο ενα mooc του πανεπιστημιου του ελσινκι. Βεβαια, απ'οσο ειδα μεχρι στιγμης οι διαφανειες και τα εργαστηρια σε εμας δουλευουν με το acm.jar (που δεν ειμαι σιγουρος τι ακριβως κανει) και ο κωδικας φαινεται ελειπης σε σχεση με αυτον του course. Τι φαση, αλλη java κανουμε στο δικο μας πανεπιστημιο?
Nop, απλά το πρόγραμμα σπουδών ξεκινάει με κάτι πιο απλό (για αρχή) για Java, και μετά περνά στην κανονική φάση. (Java ΙΙ course)
Αρα εγω να συνεχισω να διαβαζω απο αυτο το course η θα μου γυρισει μπουμερανγκ και στην εξεταστικη δεν θα καταλαβαινω τιποτα επειδη τα διαβασα απο αλλου?
User avatar
Georgilakis Antonios
Mbyte level
Mbyte level
Posts: 548
Joined: Mon Dec 02, 2013 11:10 pm
Academic status: Alumnus/a
Gender:
Location: Straight into your Mind

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Georgilakis Antonios » Wed Dec 07, 2016 3:13 am

Καταρχήν, εξαρτάται από εσένα τι σε βοηθάει περισσότερο να διεκπεραιώσεις τουλάχιστον τις απαιτήσεις του μαθήματος.

Προφανώς το Java II course είναι πιο προχωρημένο σε σχέση με το Java I course, και προφανώς στην εξεταστική ίσως να σε βοηθήσει να γνωρίζεις κάτι παραπάνω.
Αυτό όμως δεν εγγυάται και το γεγονός ότι στις εξετάσεις η απόδοσή σου θα είναι και εντός αυτών που ζητούνται.

Επομένως, u choose. :-D
"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
Mickey
bit level
bit level
Posts: 38
Joined: Sat Dec 10, 2016 11:07 am
Academic status: 1st year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Mickey » Sun Dec 11, 2016 3:22 pm

Καλησπερα παιδια, δοκιμασα το προγραμμα της σελιδας 244-245 του βιβλιου του Roberts, αυτο με το Student, το εγραψα ακριβως οπως το εχει στο βιβλιο. Tο προγραμμα βεβαια το ονομασα lab για συντομια. Οταν ομως το μεταγλωτισσα μου βγαζει αυτο:
Error: Main method not found in class lab, please define the main method as:
public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application

Γιατι μου το βγαζει αυτο; Τι πρεπει να κανω;
User avatar
Alive
Venus Former Team Member
Posts: 457
Joined: Fri May 31, 2013 1:24 pm
Academic status: N>4
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Alive » Sun Dec 11, 2016 3:31 pm

Mickey wrote:Καλησπερα παιδια, δοκιμασα το προγραμμα της σελιδας 244-245 του βιβλιου του Roberts, αυτο με το Student, το εγραψα ακριβως οπως το εχει στο βιβλιο. Tο προγραμμα βεβαια το ονομασα lab για συντομια. Οταν ομως το μεταγλωτισσα μου βγαζει αυτο:
Error: Main method not found in class lab, please define the main method as:
public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application

Γιατι μου το βγαζει αυτο; Τι πρεπει να κανω;
Δείξε κώδικα.
Mickey
bit level
bit level
Posts: 38
Joined: Sat Dec 10, 2016 11:07 am
Academic status: 1st year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Mickey » Sun Dec 11, 2016 4:02 pm

Code: Select all

import acm.program.*;
public class lab {
	public lab (String name, int id) {
		studentName = name;
		studentID = id;
	}
	public String getName() {
		return studentName;
		}
	public int getID() {
		return studentID;
		}
	public void setCredits(double credits) {
		creditsEarned = credits;
		}
	public double getCredits() {
		return creditsEarned;
	}
	public void setPaidUp(boolean flag) {
		paidUp = flag;
	}
	public boolean isPaidUp() {
		return paidUp;
	}
	public String toString() {
		return studentName + " (#" +studentID + ")";
	}
	public static final double CREDITS_TO_GRADUATE = 32.0;
	private String studentName;
	private int studentID;
	private double creditsEarned;
	private boolean paidUp;
}
Last edited by Alive on Sun Dec 11, 2016 4:05 pm, edited 1 time in total.
Reason: Add code tags
User avatar
Alive
Venus Former Team Member
Posts: 457
Joined: Fri May 31, 2013 1:24 pm
Academic status: N>4
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Alive » Sun Dec 11, 2016 4:12 pm

Έχεις και κάποια άλλη class μέσα στη οποία δημιουργείς αντικείμενα της class lab?
Mickey
bit level
bit level
Posts: 38
Joined: Sat Dec 10, 2016 11:07 am
Academic status: 1st year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Mickey » Sun Dec 11, 2016 7:32 pm

Οχι...
==============================================
Επισης εχω αυτο το προγραμμα:

Code: Select all

import acm.program.*;
public class lab extends Program {
	
	private int topLeftX;
	private int topLeftY;
	private int bottomRightX;
	private int bottomRightY;
	
	public lab(int tlx, int tly, int brx, int bry) {
		topLeftX = tlx;
		topLeftY = tly;
		bottomRightX = brx;
		bottomRightY = bry;
	}
	
	public int surface() {
		int width, height;
		width = bottomRightX - topLeftX;
		height = topLeftY - bottomRightY;
		return width*height;
	}
	
	public void display() {
		println("Dimensions are: Top-Left corner -> (" + topLeftX + "," + topLeftY +")" + " and Bottom-Right corner -> (" + bottomRightX + "," + bottomRightY + ")");
	}
}
Το οποιο ομως δεν τρεχει και αντ'αυτου μου βγαζει:
lab.java:63: error: class, interface, or enum expected
}
^
1 error
Last edited by ChrysaK on Tue Dec 13, 2016 10:41 pm, edited 2 times in total.
Reason: double post
User avatar
Georgilakis Antonios
Mbyte level
Mbyte level
Posts: 548
Joined: Mon Dec 02, 2013 11:10 pm
Academic status: Alumnus/a
Gender:
Location: Straight into your Mind

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Georgilakis Antonios » Sun Dec 11, 2016 10:33 pm

Μπας και κατά το compile ξεχνάς να δηλώσεις στο classpath την βιβλιοθήκη ACM ?
(Υποθέτω)
"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
Mickey
bit level
bit level
Posts: 38
Joined: Sat Dec 10, 2016 11:07 am
Academic status: 1st year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Mickey » Sun Dec 11, 2016 11:24 pm

Όχι... Το μεταγλωτισσα οπως και ολα τα αλλα προγραμματα που δουλευανε κανονικα... :-(
Mickey
bit level
bit level
Posts: 38
Joined: Sat Dec 10, 2016 11:07 am
Academic status: 1st year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Mickey » Mon Dec 12, 2016 7:33 pm

Georgilakis Antonios wrote:Όπα, sorry, my fault. :-D

In that case, υπάρχει και το NetBeans.
++ Κατέβασα το NetBeans με all-inclusive, αλλά δεν αναγνωρίζει αυτά του πακέτου acm, όπως πχ το println...
User avatar
Georgilakis Antonios
Mbyte level
Mbyte level
Posts: 548
Joined: Mon Dec 02, 2013 11:10 pm
Academic status: Alumnus/a
Gender:
Location: Straight into your Mind

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Georgilakis Antonios » Mon Dec 12, 2016 7:48 pm

Mickey wrote:++ Κατέβασα το NetBeans με all-inclusive, αλλά δεν αναγνωρίζει αυτά του πακέτου acm, όπως πχ το println...
Ξαναδες το include path. (classpath)
[Όχι το import]
"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
User avatar
Hermes
bit level
bit level
Posts: 30
Joined: Thu Dec 15, 2016 6:17 pm
Academic status: 1st year
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Hermes » Thu Dec 15, 2016 6:30 pm

Παιδια, το προγραμμα που επισυναψε ο Mickey ουτε εμενα μου τρεχει, και μου βγαζει το ιδιο πραγμα. +εψαξα παλια θεματα σε αυτο το μαθημα αλλα δεν βρηκα την αντιστοιχη κατηγορια(!)
User avatar
Georgilakis Antonios
Mbyte level
Mbyte level
Posts: 548
Joined: Mon Dec 02, 2013 11:10 pm
Academic status: Alumnus/a
Gender:
Location: Straight into your Mind

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Georgilakis Antonios » Thu Dec 15, 2016 8:19 pm

Το τελευταίο πρόγραμμα που επισυνάφθηκε μεταγλωττίζεται κανονικά.
Η απόδειξη είναι στο επισυναπτόμενο αρχείο.
You do not have the required permissions to view the files attached to this post.
"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
User avatar
Hermes
bit level
bit level
Posts: 30
Joined: Thu Dec 15, 2016 6:17 pm
Academic status: 1st year
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Hermes » Sat Dec 17, 2016 4:40 pm

!!! περιεργο γιατι εμενα μου βγαζει error...
Εχω αλλη μια ερωτηση: Δεν εχω καταλαβει τι κανει η μεθοδος toString και γιατι να την χρησιμοποιουμε. Ειδα και μερικα σχετικα tutorials αλλα δεν καταλαβα Χριστο
User avatar
Georgilakis Antonios
Mbyte level
Mbyte level
Posts: 548
Joined: Mon Dec 02, 2013 11:10 pm
Academic status: Alumnus/a
Gender:
Location: Straight into your Mind

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Georgilakis Antonios » Sat Dec 17, 2016 6:22 pm

Hermes wrote:!!! περιεργο γιατι εμενα μου βγαζει error...
Εχω αλλη μια ερωτηση: Δεν εχω καταλαβει τι κανει η μεθοδος toString και γιατι να την χρησιμοποιουμε. Ειδα και μερικα σχετικα tutorials αλλα δεν καταλαβα Χριστο
Δίνει μια αναπαράσταση του αντικειμένου ως αλφαριθμητικό.
Χρήσιμο για debug.
"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
Mickey
bit level
bit level
Posts: 38
Joined: Sat Dec 10, 2016 11:07 am
Academic status: 1st year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Mickey » Wed Dec 28, 2016 5:22 pm

please ας επισυναψει καποιος τα περυσινα θεματα στα γραπτα αυτου του μαθηματος για να δω τι παιζει :cry:
User avatar
ala_mages
Gbyte level
Gbyte level
Posts: 1489
Joined: Sun Jun 06, 2010 7:04 pm
Academic status: N>4
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by ala_mages » Wed Dec 28, 2016 7:42 pm

Mickey wrote:please ας επισυναψει καποιος τα περυσινα θεματα στα γραπτα αυτου του μαθηματος για να δω τι παιζει :cry:
Παλαια θέματα έχει εδώ γενικά viewtopic.php?p=347904#p347904
Mpomp is building an army.
░░░░░███████ ]▄▄▄▄▄▄▄▄
▂▄▅█████████▅▄▃▂ ______☻/︻╦╤─
Il███████████████████]. /▌
_◥⊙▲⊙▲⊙▲⊙▲⊙▲⊙▲⊙◤.. _ / \
Spoiler: εμφάνιση/απόκρυψη
Welcome to the [url=http://www.youtube.com/watch?feature=player_detailpage&v=pAY9CNkKOsg#t=59]ricefields[/url] mathaf*ka [url=http://foss.aueb.gr]Turn on the foss please![/url]
Mickey
bit level
bit level
Posts: 38
Joined: Sat Dec 10, 2016 11:07 am
Academic status: 1st year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by Mickey » Wed Dec 28, 2016 7:48 pm

Ο καθηγητης εχει αλλαξει απο περυσι, οποτε εχει νοημα να δουμε μονο τα περυσινα θεματα
fox0077
byte level
byte level
Posts: 117
Joined: Sun Oct 09, 2016 2:19 pm
Academic status: 4th year

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by fox0077 » Wed Dec 28, 2016 8:48 pm

Έχουμε αυτό το πρόγραμμα. Οποιος μπορει ας μου εξηγησει την διαφορα μεταξυ του equals και του ==. Επισης τι ειναι το s=color3.substring(1, 2) καθως και του indexof. Με δικα σας λογια, δεν θελω να με παραπεμψετε σε αλλο σάιτ καθως φοβαμαι οτι δεν θα καταλαβω ολα τα αγγλικα... Ευχαριστω

Code: Select all

import acm.program.*;

public class testStrings extends ConsoleProgram {

	public void run() {

		String s=new String();

		String color1 = "RED";
		println ("Color1 = " + color1);

   		String color2 = new String ("RED");
   		println ("Color2 = " + color2);

   		String color3 = new String ("Red");
   		println ("Color3 = " + color3);

   		if (color1.equals(color2))println ("color1=color2");
   		else println ("color1<>color2");

   		if (color1 == color2)println ("color1=color2");
   		else println ("color1<>color2");

   		if (color2.equalsIgnoreCase(color3))println ("color2=color3");
   		else println ("color2<>color3");

   		s=color3.substring(1,2);
   		println (s);

   		int x=color3.indexOf(s);
   		println (x);

   		x=color2.indexOf(s);
   		println (x);

   		s=String.valueOf(x);
   		s=s.concat("@");
   		println (s);
   	}
}
User avatar
kras
Kilobyte level
Kilobyte level
Posts: 253
Joined: Mon Sep 01, 2014 1:21 am
Academic status: 4th year
Gender:

Re: Εισαγωγή στον Προγραμματισμό Υπολογιστών

Post by kras » Wed Dec 28, 2016 9:24 pm

Ο τελεστής == ελέγχει αν δύο αναφορές είναι ίσες. Δηλαδή αν δείχνουν στο ίδιο αντικείμενο. Πιο απλά, αν δύο αναφορές δείχνουν σε ένα κοινό αντικείμενο.
Η μέθοδος equals συγκρίνει τα αντικείμενα στα οποία δείχνουν οι αναφορές και επιστρέφει true αν αυτά είναι ίσα. Το τι σημαίνει το γεγονός ότι δύο στιγμιότυπα μιας κλάσης είναι ίσα εξαρτάται από την εκάστοτε κλάση και υλοποίηση της equals.

Η str.substring(x, y) επιστρέφει ένα υπο-string του str, ξεκινώντας από την θέση x μέχρι και τη θέση y-1.

Η str.indexof(s) επιστρέφει τη θέση στην οποία εμφανίζεται για πρώτη φορά μέσα στο str to s.
Locked

Return to “Ακαδημαϊκό Έτος 2016-2017”