Εμφάνιση 1-5 από 5
  1. #1
    γεια σας...ειμαι φοιτήτρια και έχω δυσκολία σε μία εργασία μου...μου ζητάει να υπολογίσω μεταξύ 2 πόλεων την απόσταση με javascript μέσω της ευκλείδιας απόστασης...σας παρακαλώ όποιος μπορεί ας με βοηθήσει...ευχαριστώ

  2. #2
    Εγγραφή
    17-09-2007
    Ηλικία
    47
    Μηνύματα
    865
    Downloads
    1
    Uploads
    0
    Σε ποιό σημείο ακριβώς έχεις κολλήσει;

    Ίσως αυτά να βοηθήσουν:

    Ευκλείδια απόσταση (το πρώτο αποτέλεσμα της αναζήτησης "euclidean distance"),
    Μαθηματικές συναρτήσεις σε Javascript (το πρώτο αποτέλεσμα της αναζήτησης "javascript math functions")

  3. #3
    Κώδικας:
    function maximum(){
    var str = document.getElementById('Originating_Destination').value;
    var str2 = document.getElementById('Destination_City').value;
    var my_array2 = str2.split("/");
    var my_array = str.split("/");
    var n1=my_array[1]-my_array2[1];
    var n3=my_array2[2]-my_array[2];
    var n2=2;
    var p = Math.pow(n1,n2);
    var p2 = Math.pow(n3,n2);
    var sum=(p+p2);
    var sqr = Math.sqrt(sum);
    var rounded = Math.round(sqr);
    var maximum_array = new Array();
    σε αυτό το σημείο θέλω να βρω την μέγιστη απόσταση μεταξύ των πόλεων.... μία βοήθεια σας παρακαλώωωωωω

    ........Auto merged post: maria19 πρόσθεσε 0 λεπτά και 48 δευτερόλεπτα αργότερα ........

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

    ........Auto merged post: maria19 πρόσθεσε 1 λεπτά και 41 δευτερόλεπτα αργότερα ........

    ειναι να φτιάξω την ευκλείδια διαίρεση που πρέπει να υπολογίζει την απόσταση μεταξύ 2 πόλεων... αυτό το έκανα...την μέγιστη απόσταση δεν μπορώ να κάνω...
    Τελευταία επεξεργασία από το μέλος maria19 : 24-12-09 στις 17:33. Αιτία: auto merged post

  4. #4
    Εγγραφή
    17-09-2007
    Ηλικία
    47
    Μηνύματα
    865
    Downloads
    1
    Uploads
    0
    Καλημέρα,

    Αρχικά κάνω μια παράκαμψη, που είναι όμως μακροπρόθεσμα πιο χρήσιμη από το να βρείς την απάντηση σε μια άσκηση. Ο κώδικάς σου βγάζει σωστό αποτέλεσμα, αλλά είναι πολύ λάθος από πλευράς στύλ. Αυτό σημαίνει ότι σε ένα μήνα ούτε εσύ δε θα μπορείς να βρείς τι ακριβώς κάνει. Στον γράφω παρακάτω, αιτιολογόντας τις αλλαγές με σχόλια:

    Spoiler:
    Κώδικας:
    // Η συνάρτηση που έχεις βρίσκει την απόσταση.
    // Ονόμασέ την ανάλογα. Η εύρεση του μεγίστου είναι
    // άλλη λειτουργία, σπάσε την σε άλλη συνάρτηση.
    // Αυτό λέγεται "separation of concerns", δηλαδή κάθε
    // τμήμα του προγράμματός σου εκτελέι μία πολύ
    // καθορισμένη λειτουργία.
    function distance() {
      // ονόμασε τις μεταβλητές σου ανάλογα με τη χρήση
      // τους, ώστε να μπορείς να καταλάβεις εποπτικά
      // κάθε γραμμή του προγράμματός σου
      var origin_coords_str = document.getElementById('Originating_Destination').value;
      var destination_coords_str = document.getElementById('Destination_City').value;
      var origin_coords_arr = origin_coords_str.split("/");
      var destination_coords_arr = destination_coords_str.split("/");
      var xdiff = Number(origin_coords_arr[1]) - Number(destination_coords_arr[1]);
      var ydiff = Number(origin_coords_arr[2]) - Number(destination_coords_arr[2]);
      // var n2=2; // το δύο είναι το...δύο! δε χρειάζεσαι μεταβλητή να το κρατάει!
      // δε χρειάζεσαι μεταβλητές για τα ενδιάμεσα αποτελέσματα!
      // var p = Math.pow(n1,n2);
      // var p2 = Math.pow(n3,n2);
      // var sum=(p+p2);
      var dist = Math.sqrt(xdiff*xdiff + ydiff*ydiff);
      var dist_rounded = Math.round(dist); // αυτό σου χρειάζεται;
      return dist_rounded;
    }


    Ας υποθέσουμε τώρα ότι έχεις έναν πίνακα με τις αποστάσεις πόλεων που σου έχει επιστρέψει η distance(). Τον περνάς στην παρακάτω συνάρτηση, που βρίσκει και σου επιστρέφει το μέγιστο:

    Κώδικας:
    function max(arr) {
      var max = -99999; // ένας πολύ μικρός αριθμός
      var i;
      for( i=0; i < arr.length; i++ ) {
        if( arr[i] > max ) {
          max = arr[i];
        }
      }
      return max;
    }
    Τώρα μένει για σένα να καλέις τη distance() όταν χρειάζεσαι μια απόσταση, να τη βάζεις σε έναν πίνακα και τη max() για να βρείς τη μέγιστη.

    Θα πρότεινα και μια συνάρτηση validate() που να επιστρέφει true/false ανάλογα αν τα inputs σου έιναι έγκυρα (πχ αν αντί για συντεταγμένες γράψω "τυρόπιτες"). Αν επιστρέφει false δεν υπολογίζεται η απόσταση. Αυτό βέβαια τελείως προαιρετικό.

    Καλή συνέχεια!

  5. #5
    Κώδικας:
    function maximum(arr) {
    var origin_coords_str = document.getElementById('Originating_Destination').value;
      var destination_coords_str = document.getElementById('Destination_City').value;
      var origin_coords_arr = origin_coords_str.split("/");
      var destination_coords_arr = destination_coords_str.split("/");
      var xdiff = Number(origin_coords_arr[1]) - Number(destination_coords_arr[1]);
      var ydiff = Number(origin_coords_arr[2]) - Number(destination_coords_arr[2]);
     //  var n2=2; // το δύο είναι το...δύο! δε χρειάζεσαι μεταβλητή να το κρατάει!
      // δε χρειάζεσαι μεταβλητές για τα ενδιάμεσα αποτελέσματα!
      // var p = Math.pow(n1,n2);
     //  var p2 = Math.pow(n3,n2);
     //  var sum=(p+p2);
      var dist = Math.sqrt(xdiff*xdiff + ydiff*ydiff);
      var dist_rounded = Math.round(dist);
      var maximum = -99999; // ένας πολύ μικρός αριθμός
      var i;
      for( i=0; i < arr.length; i++ ) {
        if( arr[i] > max ) {
          maximum = arr[i];
        }
      }
      alert (maximum)
    }

    ετσι θα πρέπει να είναι... βασικά δεν μπορώ να κάνω το max, θέλει 2 for και να κάνω σύγκριση... αν μπορείς να με βοηθήσεις εκεί... σε ευχαριστώ πολύ... επίσης στο κώδικα του max ,μου βγάζει λάθος το length και δεν ξέρω γιατι...
    Τελευταία επεξεργασία από το μέλος [Insomniac] : 27-12-09 στις 22:26. Αιτία: Code tag

Παρόμοια Θέματα

  1. Πρόβλημα στο dreamweaver με έτοιμο template.
    Από kostas_spr στο φόρουμ Internet, web surfing και online υπηρεσίες
    Μηνύματα: 0
    Τελευταίο Μήνυμα: 14-07-09, 10:03
  2. ΒΟΗΘΕΙΑ ΣΤΟ Dreamweaver........
    Από dimitra_press στο φόρουμ Web authoring, development & web design
    Μηνύματα: 7
    Τελευταίο Μήνυμα: 27-04-09, 16:55
  3. width σε list menu στο dreamweaver
    Από mavr2412 στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμού
    Μηνύματα: 1
    Τελευταίο Μήνυμα: 04-12-08, 16:22
  4. Πρόβλημα εισαγωγής Flash menu σε html template (στο Dreamweaver)
    Από michmav στο φόρουμ Web authoring, development & web design
    Μηνύματα: 4
    Τελευταίο Μήνυμα: 12-02-08, 21:09
  5. βοήθεια με dreamweaver
    Από teopont στο φόρουμ Web authoring, development & web design
    Μηνύματα: 5
    Τελευταίο Μήνυμα: 04-04-06, 13:03

Bookmarks

Bookmarks

Δικαιώματα - Επιλογές

  • Δεν μπορείτε να δημοσιεύσετε νέα θέματα
  • Δεν μπορείτε να δημοσιεύσετε νέα μηνύματα
  • Δεν μπορείτε να αναρτήσετε συνημμένα
  • Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας
  •  
  • Τα BB code είναι σε λειτουργία
  • Τα Smilies είναι σε λειτουργία
  • Το [IMG] είναι σε λειτουργία
  • Το [VIDEO] είναι σε λειτουργία
  • Το HTML είναι εκτός λειτουργίας