Hjelp med å forstå Pseudo-kode

stemmer
0

Kan noen vennligst fortelle meg hvordan jeg kan implementere følgende linje av pseudo-kode.

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

Jeg forstår ikke hva den 'med' betyr, betyr det at jeg har til å sikre at etter reduksjon modulo M, må c [k] er mindre enn eller lik M / 2. Hva betyr 'med' vanligvis bety (hvis noe) i pseudo-koden?

Merk at M er av typen int. Jeg implementere dette i Java hvis det hjelper.

Takk på forhånd.

Publisert på 07/03/2010 klokken 20:15
kilden bruker
På andre språk...                            


4 svar

stemmer
0

Er dette nødvendigvis pseudo-koden? Vanligvis er pseudo-kode bare beskrive hva koden skal gjøre, men i en mer naturlig språk (for eksempel mer som engelsk). I dette tilfellet, er jeg ikke helt sikker på hva som selv blir beskrevet. Dessuten tror jeg ikke 'med' nødvendigvis har en spesiell betydning, spesielt uten å se sammenheng med resten av det som er skrevet. Det kan være nyttig hvis du gir mer informasjon.

Svarte 07/03/2010 kl. 20:18
kilden bruker

stemmer
4

Jeg tror det betyr sett c[k] = c[k] + x*M, der -M/2 <= c[k] + x*M <= M/2(velg den positive eller negative heltall xslik at dette er sant).

For eksempel, hvis M = 5, ville vi ha:

       Forrige verdi Ny verdi
          av c [k] til c [k]
            8 -2
            9 -1
           10 0
           11 1
           12 2
           13 -2
Svarte 07/03/2010 kl. 20:18
kilden bruker

stemmer
0

Hmm. Sloppy pseudo-kode, heh. Men jeg tror han sier at den absolutte verdien av c [k] vil være mindre enn eller lik for modulo verdien av M delt på 2. Dette er mer eller mindre bare en gjetning imidlertid. Jeg har aldri møtt pseudo-kode med denne terminologien (den med) som brukes. Kanskje han bare prøver å la folk få vite at c [k] er alltid forsikret for å være med i grensene på grunn av modulo aritmetikk.

Svarte 07/03/2010 kl. 20:22
kilden bruker

stemmer
-1

c [k] = c [K] (mod m) med | c [k] | <= M / 2

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

Den "Med" kommer fra matematikk, og betyr "Hvis betingelsen er sann, så gjør det"

Du har merket denne "java", så jeg brukte Java matematikk biblioteket.

Svarte 07/03/2010 kl. 20:23
kilden bruker

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