Απορια στην πρωτη εργασια Java

Συζητήσεις για γλώσσες προγραμματισμού και θέματα σχετικά με προγραμματισμό.
User avatar
nikolas17
Gbyte level
Gbyte level
Posts: 1117
Joined: Sun Sep 20, 2009 12:51 am
Academic status: N>4
Gender:
Location: 192.168.1.1

Re: Απορια στην πρωτη εργασια Java

Post by nikolas17 » Mon Nov 02, 2009 12:11 am

Εαν δεν κάνω λάθος πρέπει να γράψεις 0.07292 με τελεία και όχι κόμμα. Επίσης το { τι χρειάζεται?

(λείπει κώδικας και δεν μπορώ να ξέρω - ίσως και να χρειάζεται βέβαια) :-)
Image
User avatar
philimonas
Kilobyte level
Kilobyte level
Posts: 314
Joined: Thu Jul 19, 2007 1:19 pm
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by philimonas » Mon Nov 02, 2009 12:14 am

Στο συγκεκριμένο, πρέπει να βάλεις '.' αντί για ',' όταν γράφεις δεκαδικούς αριθμούς!
Κοίταξε & τα υπόλοιπα προσεκτικά και θα βρεις τα λάθη!

Επίσης, βοηθάει να "στοιχίζεις" τον κώδικά σου, πχ κάπως έτσι:

Code: Select all

{
	if (k <= 800)
		poso1 = k*0.07292;
για να τα ξεχωρίζεις καλύτερα!

edit: Φαντάζομαι το '{' αναφέρεται σε κάποια επανάληψη ή κάποιο άλλο block που δεν έχει γίνει copy-paste..!
User avatar
skycloud
byte level
byte level
Posts: 53
Joined: Tue Sep 29, 2009 8:26 pm
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by skycloud » Mon Nov 02, 2009 12:22 am

αλλαξα τις τελεις και ξαναεκανα build και τωρα μ βγαζει διαφορετικα.... :S

cannot find symbol method read (int)

κτλ κτλ....

---------------------------

σορρυ κατι αλλο, τον αρι8μο 0.07292 τι τον δηλωνουμε??

---------------------------
philimonas wrote:Στο συγκεκριμένο, πρέπει να βάλεις '.' αντί για ',' όταν γράφεις δεκαδικούς αριθμούς!
Κοίταξε & τα υπόλοιπα προσεκτικά και θα βρεις τα λάθη!

Επίσης, βοηθάει να "στοιχίζεις" τον κώδικά σου, πχ κάπως έτσι:

Code: Select all

{
	if (k <= 800)
		poso1 = k*0.07292;
για να τα ξεχωρίζεις καλύτερα!

edit: Φαντάζομαι το '{' αναφέρεται σε κάποια επανάληψη ή κάποιο άλλο block που δεν έχει γίνει copy-paste..!

το '}' ανοιγει πριν το ιφ... ειναι λα8ος? δν εχει επαναληψη ο κωδικας...
Last edited by cypher on Mon Nov 02, 2009 2:10 am, edited 1 time in total.
Reason: Double post
“Rhaegar fought valiantly, Rhaegar fought nobly, Rhaegar fought bravely. And Rhaegar died. ”
User avatar
sandra
Wow! Terabyte level
Wow! Terabyte level
Posts: 4917
Joined: Mon Oct 02, 2006 11:37 am
Academic status: Alumnus/a
Gender:
Location: στη φωλιά μου κοιτώντας ένα χωράφι με στάρι...

Re: Απορια στην πρωτη εργασια Java

Post by sandra » Mon Nov 02, 2009 12:22 am

Άκυρη ερώτηση. Έχεις κλείσει σωστά την τάξη, τις εσωτερικές μεθόδους, τη main κλπ με τα άγκιστρα? Συνήθως αν σου χτυπάει λάθος λάθη έχεις κάνει πατατιά στην αρχή, όχι μέσα σε πιο προχωρημένο κώδικα
Από εδώ κι εμπρός θα είσαι για πάντα υπεύθυνος για εκείνο που έχεις ημερώσει.
Είσαι υπεύθυνος για το τριαντάφυλλο σου...
User avatar
skycloud
byte level
byte level
Posts: 53
Joined: Tue Sep 29, 2009 8:26 pm
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by skycloud » Mon Nov 02, 2009 12:26 am

sandra wrote:Άκυρη ερώτηση. Έχεις κλείσει σωστά την τάξη, τις εσωτερικές μεθόδους, τη main κλπ με τα άγκιστρα? Συνήθως αν σου χτυπάει λάθος λάθη έχεις κάνει πατατιά στην αρχή, όχι μέσα σε πιο προχωρημένο κώδικα
εχω κλεισει σιγουρα τα αγκιστρα τωρα αν τα εχω κλεισει στις σωστες θεσεις ειναι ενα απο τα πραγματα π δν ειμαι σιγουρη...
“Rhaegar fought valiantly, Rhaegar fought nobly, Rhaegar fought bravely. And Rhaegar died. ”
User avatar
nikolas17
Gbyte level
Gbyte level
Posts: 1117
Joined: Sun Sep 20, 2009 12:51 am
Academic status: N>4
Gender:
Location: 192.168.1.1

Re: Απορια στην πρωτη εργασια Java

Post by nikolas17 » Mon Nov 02, 2009 12:27 am

σορρυ κατι αλλο, τον αρι8μο 0.07292 τι τον δηλωνουμε??
Εμ, δεν χρειάζεται δήλωση αφού τον γράφεις 0.07292. Αλλιώς μπορείς να τον δηλώσεις

float x=0.07292f;

ή ποιο έυκολα

double x=0.07292;

(To x τυχαία μεταβλητή)
Image
User avatar
sandra
Wow! Terabyte level
Wow! Terabyte level
Posts: 4917
Joined: Mon Oct 02, 2006 11:37 am
Academic status: Alumnus/a
Gender:
Location: στη φωλιά μου κοιτώντας ένα χωράφι με στάρι...

Re: Απορια στην πρωτη εργασια Java

Post by sandra » Mon Nov 02, 2009 12:30 am

class itsname
{
main(){}
method1(){}
method2(){}
....
}
Σχεδιάγραμμα του πως πρέπει να είναι. (φυσικά λείπουν λεπτομέρειες από τη δήλωση των συναρτήσεων, απλά για να δεις που μπαίνουν τα άγγιστρα).
Για τον δεκαδικό όπως σου είπε και ο νικόλας αφού κάνεις εκχώρηση σε μία ήδη ορισμένη μεταβλητή (η οποία πρέπει να είναι double) δεν έχεις να πεις κάτι άλλο. Κάπου δηλαδή έχεις γράψει double k; έτσι?
Από εδώ κι εμπρός θα είσαι για πάντα υπεύθυνος για εκείνο που έχεις ημερώσει.
Είσαι υπεύθυνος για το τριαντάφυλλο σου...
User avatar
skycloud
byte level
byte level
Posts: 53
Joined: Tue Sep 29, 2009 8:26 pm
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by skycloud » Mon Nov 02, 2009 12:38 am

sandra wrote:class itsname
{
main(){}
method1(){}
method2(){}
....
}
Σχεδιάγραμμα του πως πρέπει να είναι. (φυσικά λείπουν λεπτομέρειες από τη δήλωση των συναρτήσεων, απλά για να δεις που μπαίνουν τα άγγιστρα).
Για τον δεκαδικό όπως σου είπε και ο νικόλας αφού κάνεις εκχώρηση σε μία ήδη ορισμένη μεταβλητή (η οποία πρέπει να είναι double) δεν έχεις να πεις κάτι άλλο. Κάπου δηλαδή έχεις γράψει double k; έτσι?

μαλιστα... δν μπορω να πω οτι καταλαβα 100% .. αλλα δν μας εχουν εξηγησει ακομα για τις μεθοντς ρε..... (ουτε τα χω διαβασει μονη μου χD)
το κ ειναι ακεραιος. ο πολ/σμος του με τον δεκαδικο π εγραψα ειναι double?
“Rhaegar fought valiantly, Rhaegar fought nobly, Rhaegar fought bravely. And Rhaegar died. ”
User avatar
nikolas17
Gbyte level
Gbyte level
Posts: 1117
Joined: Sun Sep 20, 2009 12:51 am
Academic status: N>4
Gender:
Location: 192.168.1.1

Re: Απορια στην πρωτη εργασια Java

Post by nikolas17 » Mon Nov 02, 2009 12:40 am

Ναι, double είναι
Image
User avatar
philimonas
Kilobyte level
Kilobyte level
Posts: 314
Joined: Thu Jul 19, 2007 1:19 pm
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by philimonas » Mon Nov 02, 2009 12:43 am

skycloud wrote: μαλιστα... δν μπορω να πω οτι καταλαβα 100% .. αλλα δν μας εχουν εξηγησει ακομα για τις μεθοντς ρε..... (ουτε τα χω διαβασει μονη μου χD)
το κ ειναι ακεραιος. ο πολ/σμος του με τον δεκαδικο π εγραψα ειναι double?
Τότε μάλλον δε χρειάζεται και το '{' πριν το if που έγραψες πριν :-p
User avatar
sandra
Wow! Terabyte level
Wow! Terabyte level
Posts: 4917
Joined: Mon Oct 02, 2006 11:37 am
Academic status: Alumnus/a
Gender:
Location: στη φωλιά μου κοιτώντας ένα χωράφι με στάρι...

Re: Απορια στην πρωτη εργασια Java

Post by sandra » Mon Nov 02, 2009 12:48 am

Δεν τα θυμάμαι αυτά τα βασικά. Αν κάνει πολλαπλασιασμό Int με double λέτε ότι αυτό γίνεται double. Στη θέση όμως του k που έχει δηλωθεί σαν int κρατάει μόνο το ακέραιο κομμάτι? Γιατί δεν το δηλώνεις double εξαρχής για σιγουριά. Επίσης ένα πιο περιφραστικό όνομα είναι προτιμότερο από το k. Σε δυο βδομάδες δε θα θυμάσαι τι εννοούσες.
Από εδώ κι εμπρός θα είσαι για πάντα υπεύθυνος για εκείνο που έχεις ημερώσει.
Είσαι υπεύθυνος για το τριαντάφυλλο σου...
User avatar
philimonas
Kilobyte level
Kilobyte level
Posts: 314
Joined: Thu Jul 19, 2007 1:19 pm
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by philimonas » Mon Nov 02, 2009 12:56 am

Βασικά, σε αυτό εδώ:

Code: Select all

if (k <= 800)
      poso1 = k*0.07292;
Το poso1 πρέπει να είναι double/float, ή η πράξη να γίνει cast, αλλιώς χτυπάει error.
Το k δεν πειράζει αν είναι ακέραιος. Σίγουρα πάντως ένα πιο περιφραστικό όνομα βοηθάει πολύ!
User avatar
sandra
Wow! Terabyte level
Wow! Terabyte level
Posts: 4917
Joined: Mon Oct 02, 2006 11:37 am
Academic status: Alumnus/a
Gender:
Location: στη φωλιά μου κοιτώντας ένα χωράφι με στάρι...

Re: Απορια στην πρωτη εργασια Java

Post by sandra » Mon Nov 02, 2009 12:57 am

Aχ, είχα ξεχάσει τον κώδικα νόμιζα έκανε εκχώρηση double σε Int, σόρυ!
Από εδώ κι εμπρός θα είσαι για πάντα υπεύθυνος για εκείνο που έχεις ημερώσει.
Είσαι υπεύθυνος για το τριαντάφυλλο σου...
User avatar
skycloud
byte level
byte level
Posts: 53
Joined: Tue Sep 29, 2009 8:26 pm
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by skycloud » Mon Nov 02, 2009 12:59 am

ρε παιδια ξεχναμε το βασικο που με ταλαιπωρει.... αυτο το could not find the main class τι στο καλο ειναι και πως φτιαχνεται :PP
“Rhaegar fought valiantly, Rhaegar fought nobly, Rhaegar fought bravely. And Rhaegar died. ”
User avatar
philimonas
Kilobyte level
Kilobyte level
Posts: 314
Joined: Thu Jul 19, 2007 1:19 pm
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by philimonas » Mon Nov 02, 2009 1:01 am

Είπαμε βρε :-p
Πρέπει να τα διορθώσεις(τα λάθη), για να μπορεί να γίνει compile και να φτιαχτεί αρχείο .class.
Το "Could not find the main class: ergasia1. Program will exit." που βγάζει αν κάνεις run είναι επειδή δεν υπάρχει αρχείο .class και επομένως δεν μπορεί να τρέξει το πρόγραμμα!
Άρα θα φτιαχτεί μόλις φτιάξεις τα λάθη του κώδικα και γίνει σωστά compile το αρχείο!!
User avatar
skycloud
byte level
byte level
Posts: 53
Joined: Tue Sep 29, 2009 8:26 pm
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by skycloud » Mon Nov 02, 2009 1:07 am

ααααααααα :D και οταν διορθωθει ο κωδικας, φτιαχνεται μονο του το .class?
“Rhaegar fought valiantly, Rhaegar fought nobly, Rhaegar fought bravely. And Rhaegar died. ”
User avatar
para
Wow! Terabyte level
Wow! Terabyte level
Posts: 3648
Joined: Sat Nov 04, 2006 2:59 am
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by para » Mon Nov 02, 2009 1:09 am

Είπαμε βρε :-p
para wrote:Το .class θα δημιουργηθεί αυτόματα μόλις καταφέρεις και κάνεις compile το .java (σ.σ. όταν διορθωθεί ο κώδικας) ;)
:-D
Γύρνα είμαι ένα άψυχο κορμί που σ' αγαπάει, αισθάνομαι στον άνεμο φτερό
Σαν μέσα σε όνειρο η ζωή με προσπερνάει, δείξε μου οίκτο μια στιγμή παρακαλώ...
#!
Κοίτα πως με κατάντησε η δική σου η αγάπη, να μη γνωρίζω από που να κρατηθώ
Στο τελευταίο της ζωής το σκαλοπάτι, Γύρνα, είμαι ένα βήμα απ' το γκρεμό...
User avatar
sandra
Wow! Terabyte level
Wow! Terabyte level
Posts: 4917
Joined: Mon Oct 02, 2006 11:37 am
Academic status: Alumnus/a
Gender:
Location: στη φωλιά μου κοιτώντας ένα χωράφι με στάρι...

Re: Απορια στην πρωτη εργασια Java

Post by sandra » Mon Nov 02, 2009 1:11 am

Βασικά αυτό δε στέκει και πολύ. Αν είχες κάποιο(α) τυπικό(ά) και συνηθισμένο(α) λάθος(η) δε θα σου έλεγε κάτι τέτοιο. Αν είσαι απολύτως σίγουρη ότι jdk και εγκατάσταση έχουν γίνει σωστά, για τρέξε ένα απλό πρόγραμμα, σε φάση εκτύπωση του hello world για να δούμε ότι όντως έχεις απλά συντακτικά λάθη.
Από εδώ κι εμπρός θα είσαι για πάντα υπεύθυνος για εκείνο που έχεις ημερώσει.
Είσαι υπεύθυνος για το τριαντάφυλλο σου...
User avatar
para
Wow! Terabyte level
Wow! Terabyte level
Posts: 3648
Joined: Sat Nov 04, 2006 2:59 am
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by para » Mon Nov 02, 2009 1:13 am

Στέκει γιατί αν δεν έχει κλείσει η main (δλδ αν δεν έχει μπει } στο τέλος της), τότε είναι λογικό να μην μπορεί να τη βρει ;)
Γύρνα είμαι ένα άψυχο κορμί που σ' αγαπάει, αισθάνομαι στον άνεμο φτερό
Σαν μέσα σε όνειρο η ζωή με προσπερνάει, δείξε μου οίκτο μια στιγμή παρακαλώ...
#!
Κοίτα πως με κατάντησε η δική σου η αγάπη, να μη γνωρίζω από που να κρατηθώ
Στο τελευταίο της ζωής το σκαλοπάτι, Γύρνα, είμαι ένα βήμα απ' το γκρεμό...
User avatar
philimonas
Kilobyte level
Kilobyte level
Posts: 314
Joined: Thu Jul 19, 2007 1:19 pm
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by philimonas » Mon Nov 02, 2009 1:16 am

para wrote:Είπαμε βρε :-p
:smt019 :smt019
sandra wrote:Βασικά αυτό δε στέκει και πολύ. Αν είχες κάποιο(α) τυπικό(ά) και συνηθισμένο(α) λάθος(η) δε θα σου έλεγε κάτι τέτοιο.
Το "Could not find the main class ergasia1" κλπ το βγάζει επειδή to JCreator προσπαθεί να τρέξει την εντολή java ergasia1 και δεν υπάρχει αρχείο ergasia1.class για να βρει τη main μέσα σε αυτό. Δοκίμασε να τρέξεις java akyro και θα σου βγάλει το ίδιο λάθος!
User avatar
skycloud
byte level
byte level
Posts: 53
Joined: Tue Sep 29, 2009 8:26 pm
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by skycloud » Mon Nov 02, 2009 1:50 am

ωραια αυτο π εχω καταλαβει εγω ειναι οτι πρωτα πρεπει να δημιουργη8ει το .class και μετα να τρεξει το προγραμμα το jcreator σωστα?
εκανα ενα προγραμματακι π μας εκαναν στο εργαστηριο οποτε ειναι σωστος ο κωδικας του σιγουρα (firstapp το ονομασαμε) και εκει π ειναι ο φακελος με τα προγραμματα που φτιαχνω στο jcreator εχει δυο φαιλς. ενα firstapp.class και ενα firstapp.java. ομως μονο ενα ergasia.java....
“Rhaegar fought valiantly, Rhaegar fought nobly, Rhaegar fought bravely. And Rhaegar died. ”
User avatar
philimonas
Kilobyte level
Kilobyte level
Posts: 314
Joined: Thu Jul 19, 2007 1:19 pm
Academic status: Alumnus/a
Gender:

Re: Απορια στην πρωτη εργασια Java

Post by philimonas » Mon Nov 02, 2009 1:55 am

Σωστά, εσύ γράφεις το αρχείο .java, το οποίο μεταγλωττίζεται (compile) σε αρχείο .class για να μπορεί να τρέξει. Το .class δημιουργείται αν το .java είναι συντακτικά σωστό και χωρίς αυτό, δεν τρέχει το πρόγραμμά σου!
Post Reply

Return to “Προγραμματισμός”