Βοήθεια με την κατανόηση Ψευδο-κώδικα

ψήφοι
0

Μπορεί κάποιος παρακαλώ να μου πείτε πώς μπορώ να εφαρμόσει την ακόλουθη γραμμή της ψευδο-κώδικα.

c[k]=c[k] (mod M) with |c[k]|<=M/2

Δεν καταλαβαίνω ποιο είναι το «με» μέσα, σημαίνει ότι θα πρέπει να διασφαλιστεί ότι μετά από αναγωγή modulo Μ, γ [k] πρέπει να είναι μικρότερη ή ίση με Μ / 2. Τι σημαίνει «με» συνήθως σημαίνει (αν μη τι άλλο) σε ψευδο-κώδικα;

Σημειώστε ότι το Μ είναι του τύπου int. Είμαι εφαρμογή αυτή σε Java αν αυτό βοηθάει.

Ευχαριστώ εκ των προτέρων.

Δημοσιεύθηκε 07/03/2010 στις 21:15
πηγή χρήστη
Σε άλλες γλώσσες...                            


4 απαντήσεις

ψήφοι
0

Είναι αυτό απαραίτητα ψευδο-κώδικα; Συνήθως, ψευδο-κώδικας είναι απλά περιγράφει τι θα κάνουμε κώδικα, αλλά σε μια πιο φυσική γλώσσα (π.χ. περισσότερο σαν αγγλικά). Σε αυτήν την περίπτωση, δεν είμαι ακριβώς σίγουρος τι ακόμα να περιγραφεί. Επιπλέον, δεν νομίζω «με το» έχει κατ 'ανάγκη μια εξειδικευμένη έννοια, ειδικά χωρίς να δει το πλαίσιο του υπόλοιπου ό, τι είναι γραμμένο. Θα μπορούσε να είναι χρήσιμο αν δώσει περισσότερες πληροφορίες.

Απαντήθηκε 07/03/2010 στις 21:18
πηγή χρήστη

ψήφοι
4

Νομίζω ότι σημαίνει σύνολο c[k] = c[k] + x*M, όπου -M/2 <= c[k] + x*M <= M/2(επιλέξτε το θετικό ή αρνητικό ακέραιο xόπως ότι αυτό είναι αλήθεια).

Για παράδειγμα, αν Μ = 5, θα είχαμε:

       Προηγούμενη τιμή Νέα τιμή
          του c [k] του c [k]
            8 -2
            9 -1
           10 0
           11 1
           12 2
           13 -2
Απαντήθηκε 07/03/2010 στις 21:18
πηγή χρήστη

ψήφοι
0

Χμμ. Προχειρότητα ψευδο-κώδικα, heh. Αλλά νομίζω ότι λέει ότι η απόλυτη τιμή του c [k] θα είναι μικρότερη ή ίση πάρα πολύ η αξία modulo της Μ διαιρείται δια 2. Αυτό είναι περισσότερο ή λιγότερο απλά μια εικασία όμως. Δεν έχω συναντήσει ποτέ ψευδοκώδικα με αυτή την ορολογία (η με) που χρησιμοποιείται. Ίσως αυτός είναι ακριβώς που προσπαθεί να μάθει ο κόσμος ότι ο [k] είναι πάντα ασφαλισμένος να είναι μαζί με τα όρια, λόγω της αριθμητικής modulo.

Απαντήθηκε 07/03/2010 στις 21:22
πηγή χρήστη

ψήφοι
-1

c [k] = c [k] (mod Μ) με | c [k] | <= Μ / 2

if(Math.abs(c[k]) <= M/2){
  c[k] %= M;
}

Το «Με» προέρχεται από τα μαθηματικά, και σημαίνει «Εάν η συνθήκη είναι αληθής, τότε το κάνει»

Έχετε ετικέτα αυτή «java», γι 'αυτό χρησιμοποιείται η βιβλιοθήκη math Java.

Απαντήθηκε 07/03/2010 στις 21:23
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more