- iPhone topik
- Apple Watch Ultra - első nekifutás
- Fotók, videók mobillal
- Xiaomi Mi 11 - értékesített büntető
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Google Pixel topik
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Kézbe fogható paradoxon lett az iPhone Air
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
- Android alkalmazások - szoftver kibeszélő topik
Új hozzászólás Aktív témák
-
kovisoft
őstag
válasz
#PeTeY# #5989 üzenetére
Az i=0,1,...,n-1 sorozatot úgy fordítod meg, hogy i helyett n-i-1 -et használsz (i=0 --> n-i-1=n-1, i=n-1 --> n-i-1=0). És akkor mindenhol indulhat minden i-s és j-s ciklusod 0-ról egyesével felfelé, és a sorokat úgy fordítod meg, hogy i helyett n-i-1 -et használsz az indexben azokon a helyeken, ahol a kulcs-csal is indexelsz.
Persze nem muszáj így, csinálhatod azt is, hogy marad az i az indexben, de az i-s ciklusod n-1-ről indul lefelé 0-ig. A végeredmény ugyanaz lesz.
-
kovisoft
őstag
válasz
#PeTeY# #5987 üzenetére
Akkor gondolom sztornó, amit írtam, ha végülis maga a kódolás jó úgy, ahogy csináltad.
A kódolásnál eredeti sorrendben ([i][j]) töltöd fel a tomb tömböt és a kulcs szerint indexelve ([n-i-1][kulcs[j]-1]) olvasod ki.
Dekódolásnál fordítva kellene csinálni: a kulcs szerint indexelve ([n-i-1][kulcs[j]-1]) töltöd fel a tomb tömböt és eredeti sorrendben ([i][j]) olvasod ki.
-
kovisoft
őstag
válasz
#PeTeY# #5985 üzenetére
Ha jól értem, hogy mit szeretnél, akkor szerintem nem a második dupla ciklusban (amikor a ki2-be írsz) kellene alkalmazni a
kulcs[j]-1
-gyel való indexelést, hanem az első dupla ciklusban, amikor kitöltöd atomb
-öt (és persze ekkor oda kell figyelni arra is, hogy a ki file-ba továbbra is a jó karaktert írd ki):for (i=0; i<n; ++i) {
for (j=0; j<kod; ++j) {
tomb[i][kulcs[j]-1]=szoveg[count];
fprintf(ki, "%c ", szoveg[count]);
count=count+1;
}
fprintf(ki, "\n");
}
A ki2-be történő kiírásnál pedig már csak szimplán kiszedni a j-edik oszlopot. Mert így most pont a kulcs inverz permutációját hajtod végre.
-
kovisoft
őstag
válasz
#PeTeY# #5983 üzenetére
Mit jelent, hogy "de nem alulról felfelé"? A sorokat fordított sorrendben kellene kiírni? Ebben az esetben haladj fordított sorrendben a legutolsó i-s ciklusoddal:
for(i=n-1; i>=0; i--) {
A másik lehetőség, hogy a tomb-ből olvasod ki tükrözve a sorokat:kodolt[l] = tomb[n-i-1][kulcs[j]-1];
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- HIBÁTLAN iPhone 12 mini 128GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3392, 94% Akkumulátor
- BESZÁMÍTÁS! ASUS TUF A620M R5 7600X 32GB DDR5 1TB SSD RX 6700 XT 12GB ZALMAN I3 NEO A-Data 750W
- Samsung Galaxy Book2 Pro 360 i7-1260P 16GB 512GB OLED touchscreen, GARANCIA: 1ÉV
- Gamer PC-Számítógép! Csere-Beszámítás! R5 5600X / RX 7600 / 32GB DDR4 / 1TB M.2 SSD
- HIBÁTLAN iPhone SE 2020 64GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS2025, 100% akkumulátor
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest