Close
Faqja 0 prej 2 FillimFillim 12 FunditFundit
Duke shfaqur rezultatin -9 deri 0 prej 11
  1. #1
    i/e regjistruar
    Anėtarėsuar
    06-11-2005
    Postime
    10

    Java - Shifrimi me shvendosje (transposition cipher)

    Pershendetje!

    Kam nje detyre shtepie per ta bere ne Java, por nuk kam ide se as ku tja filloj :S, kerkoj ndihmen tuaj.



    Detyra e dhene eshte:
    Transpositon code- e cila e kodon mesazhin e dhene duke ja transponuar shkronjat. Hapat qe duhet te ndjeken:

    1. A string , s, is read; say that s has length n.
    2. The smallest square matrix that can hold n characters is created.
    3. The characters in s are copied one by one into the columns of the matrix.
    4.The output is the rows of the matrix


    p.sh. hyrja eshte stringu abcdefghijklmn, i cili ruhet ne matrice 4 me 4 si pason:
    a e i m
    b f j n
    c g k x
    d h l x


    Dalja do te jene fjalet aeim, bfjn, cgkx, dhlx.
    po ashtu me duhet te shkruj edhe algoritmin i cili e dekodon. Kodi duhet te shkruhet ne Java


    Flm per ndihme

  2. #2
    Programues Softueresh Maska e edspace
    Anėtarėsuar
    04-04-2002
    Vendndodhja
    Filadelfia, SHBA
    Postime
    2,565
    Duhet tė ndjekėsh kėto hapa:

    1. Lexo vargun dhe gjej gjatėsinė
    2. Gjej rrėnjėn katrore tė gjatėsisė dhe rrumbullakose lart nė numrin e plotė.
    3. Krijo matricėn 2-dimensionale me pėrmasa ceil( sqrt(n) )
    4. Mbushe matricėn duke pėrdorur njė cikėl for.

    Mė poshtė ke kodin qė ndjek kėto hapa por i printon shkronjat nė ekran pa i hedhur nė matricė.


    Kodi PHP:
    import java.io.*;

    public class 
    Shifrim
    {

        public static 
    void main (String[] args)
        {

            
    System.out.println("Shkruaj tekstin:");

            
    String s "";
            
    InputStreamReader input = new InputStreamReader(System.in);
            
    BufferedReader reader = new BufferedReader(input);

            try {
                
    reader.readLine(); 
            } catch(
    Exception e){}
            
            
    int n s.length();   
            
    int sqrtN = (int) Math.ceilMath.sqrt( (double) ) );   
            
    int sqrtN2 sqrtN sqrtN;
            
    char mbushja 'X';

            
    int ijk
            for (
    0sqrtNi++) { 
                for (
    insqrtN) {
                    
    System.out.print( s.charAt(j) ); 
                }
                for (
    jsqrtN2sqrtN) {
                    
    System.out.print(mbushja);
                }
                
    System.out.println(); 
            }
      
        } 



    Ja dhe njė provė:

    Kodi:
    Shkruaj tekstin:
    Kam nje detyre shtepie per ta bere ne Java, por nuk kam ide se as ku tja filloj
    Keeteoma 
    atpa r sf
    myi J i i
     rebandkl
    ne evueul
    j prak  o
    esee, stj
     hr  kejX
    dt npa aX
    Edi

  3. #3
    ReSpEcT Maska e Neo_AS
    Anėtarėsuar
    08-04-2005
    Vendndodhja
    i cik ne Shqipri, i cik ne Itali...
    Postime
    74

    Post

    Kodi PHP:
    class Shifrim {
    public static 
    void main(String args[]) {

    String s "abcdefghijklmn";
    int n = (int) Math.ceil(Math.sqrt((double) s.length())); 
    char[][] = new char[n][n];
    int i=0;

    for (
    int j=0j<nj++){
    for (
    int k=0k<nk++){
    if(
    i<s.length()) 
    m[k][j] = s.charAt(i);
    i++;
    }}

    for(
    int j=0j<m.lengthj++){
    for (
    int k=0k<m.lengthk++){
    System.out.print(m[j][k]);
    }
    System.out.println();
    }}} 
    Ne vend te String s hap 1 kanal per input. Ne vend te System.out.print(m[j][k]) mund te vendosesh 1 String ku te fusesh karakteret. Shif e bej vet, pershtate me detyren. Kodi duhet te jet ne rregull, gjithsesi po gjete ndonje gabim rregulloje!
    Neo!

  4. #4
    i/e regjistruar
    Anėtarėsuar
    06-11-2005
    Postime
    10
    Flm shuuummm prej te dyve Edi dhe Neo_as, edhe pse shumicen e kodit te Edi se kuptova se skemi msu ende lishur me import java.io.*;....por megjithate e perfundova disi detyren.
    Flm shume prap.
    Tung.

  5. #5
    i/e regjistruar
    Anėtarėsuar
    06-11-2005
    Postime
    10

    Ndihme lidhur me sortimin

    edhe ni ndihme e vogel nese bon...
    eshte dhene matrica
    8 1 3
    a d g
    b e x
    c f x

    duhet qe te beje sortimin ashtu qe matrica te del:
    1 3 8
    d g a
    e x b
    f x c

    pra gjate sortimimit te numrave edhe shtyllat nen to te zhvendosen...

    Flm

  6. #6
    ReSpEcT Maska e Neo_AS
    Anėtarėsuar
    08-04-2005
    Vendndodhja
    i cik ne Shqipri, i cik ne Itali...
    Postime
    74
    Kodi PHP:
    char cTemp;
    for(
    int i=oi<matrica.lengthi++){
      for (
    int j=0j<matrica[i].lengthj++){
        
    cTemp matrica[i][j];
        
    matrica[i][matrica.lenght[i]-j] = cTemp;

    Kjo gjoja ktu siper duhet te funksionoj... provoje
    Perndryshe perdor ket tjetren(edhe se per ket te dyten nuk jom shum i sigurt)

    Kodi PHP:
    char cTemp;
    for(
    int i=oi<matrica.lengthi++){
      for (
    int j=0j<matrica[i].lengthj++){
        
    cTemp matrica[i][j];
        
    matrica[i][(j%matrica.length[i])] = CTemp;

    P.S.: Asnjona nga ato gjonat siper nuk esht testuar kshuqe mund te gjesh ndonje gabim

  7. #7
    i/e regjistruar
    Anėtarėsuar
    06-11-2005
    Postime
    10
    Jo me sa duket nuk funksionon. Prap kthen matricen e njejt nuk e sorton :s

  8. #8
    Programues Softueresh Maska e edspace
    Anėtarėsuar
    04-04-2002
    Vendndodhja
    Filadelfia, SHBA
    Postime
    2,565
    Kodi mė poshtė kryen atė qė ke kėrkuar. Pjesa mė e vėshtirė ėshtė mėnyra si matrica kthehet nga njė varg, nė njė matricė tė renditur. Studioje me kujdes, ndiq disa shembuj me laps nė fletore dhe nuk besoj se do jetė e vėshtirė pėr t'u kuptuar. Nėse ke paqartėsira, bėj pyetje.

    Ushtrimet qė ke hapur nė kėtė temė janė tėrhequr nga ky libėr:
    http://www.cis.ksu.edu/~schmidt/CIS200/ch8V12.html

    Kodi PHP:
    import java.io.*;
    import java.util.*;

    public class 
    Shifrim
    {

        public static 
    void main (String[] args)
        {

            
    System.out.println("Shkruaj matricėn: ");
            

            
    //------ Merr tė dhėnat --------

            
    String strMatrica "";
            
    String strKodi "";
            
    InputStreamReader input = new InputStreamReader(System.in);
            
    BufferedReader reader = new BufferedReader(input);

            try {
                
    strMatrica reader.readLine();
                
    System.out.println("Shkruaj kodin e kyēit: ");
                
    strKodi reader.readLine();
            } catch(
    Exception e){
                
    System.out.println("Gabim gjatė marrjes sė tė dhėnave.");
                
    System.exit(1);
            }
            
            
    //------ Kontrollo tė dhėnat --------

            
    int numKolonave strKodi.length(); 
            
    int numRreshtave strMatrica.length() / numKolonave
            if ((
    strMatrica.length() % numKolonave) != 0) {
                
    System.out.println("Gjatėsia e kodit nuk pėrshtatet me matricėn.");
                
    System.exit(1);
            }
           

            
    //------ Rendit dhe Printo Kodin --------

            
    char[] charKodi strKodi.toCharArray();
            
    Arrays.sort(charKodi);
            
    System.out.println(charKodi);
            

            
    //------ Rendit Matricėn --------

            
    char[][] matricaRenditur = new char[numRreshtave][numKolonave]; 
            
    int kRenditur 0;
            
            for (
    int k 0numKolonavek++) {
                
                for (
    int i 0charKodi.lengthi++ ) {
                    if ( 
    charKodi[i] == strKodi.charAt(k) ) {
                        
    charKodi[i] = ' '
                        
    kRenditur i;
                        break; 
                    }
                }
                
            
                for (
    int r 0numRreshtaver++) {
                    
    matricaRenditur[r][kRenditur] = strMatrica.charAt(numKolonave k);    
                }
            }

            
    //------ Printo Matricėn --------

            
    for (int r 0numRreshtaver++) {
                for (
    int k 0numKolonavek++) {
                    
    System.out.print(matricaRenditur[r][k]);     
                }
                
    System.out.println(); 
            }
           
        } 
    // main
       


    Provat:

    Kodi:
    Shkruaj matricėn: 
    adgbexcfx
    Shkruaj kodin e kyēit: 
    813
    
    138
    dga
    exb
    fxc

    Kodi:
    Shkruaj matricėn: 
    afkbglchmdinejx
    Shkruaj kodin e kyēit: 
    421
    
    124
    kfa
    lgb
    mhc
    nid
    xje
    Ndryshuar pėr herė tė fundit nga edspace : 06-07-2006 mė 01:53
    Edi

  9. #9
    i/e regjistruar
    Anėtarėsuar
    06-11-2005
    Postime
    10

    Flm shumm

    flm shuumm per mundin....por veq kete pjesen e kodit se kuptoj. Nese mundesh pakez me ma spjegu...



    //------ Rendit dhe Printo Kodin --------

    char[] charKodi = strKodi.toCharArray();
    Arrays.sort(charKodi);
    System.out.println(charKodi);


    Tung.

  10. #10
    Programues Softueresh Maska e edspace
    Anėtarėsuar
    04-04-2002
    Vendndodhja
    Filadelfia, SHBA
    Postime
    2,565
    Pėr tė renditur matricėn, na duhet tė renditim kodin mė parė. Kodin e kemi marrė nga pėrdoruesi si varg (string) por klasa string nuk ka metodė pėr tė renditur shkronjat. Atėherė na duhet tė hedhim kodin nė njė matricė dhe pastaj tė pėrdorim metodėn Arrays.sort() pėr tė renditur shkronjat.

    Psh:
    E zėmė se strKodi = "183"

    Krijojmė matricėn charKodi dhe e mbushim me shkronjat e strKodi.
    char[] charKodi = strKodi.toCharArray();

    strKodi = "183"
    charKodi = [ 1 | 8 | 3 ]

    Rendisim matricėn charKodi me metodėn Arrays.sort();
    Arrays.sort(charKodi);

    strKodi = "183"
    charKodi = [ 1 | 3 | 8 ]

    Nė fund e printojmė matricėn charKodi nė ekran.
    System.out.println(charKodi);


    Rezultati nė ekran:
    138
    Edi

Faqja 0 prej 2 FillimFillim 12 FunditFundit

Regullat e Postimit

  • Ju nuk mund tė hapni tema tė reja.
  • Ju nuk mund tė postoni nė tema.
  • Ju nuk mund tė bashkėngjitni skedarė.
  • Ju nuk mund tė ndryshoni postimet tuaja.
  •