|
| lægge "1" til det indtastede Fra : z1terapi | Vist : 584 gange 50 point Dato : 03-03-06 10:10 |
|
Hej
Jeg prøver mig lidt frem med noget Javakodning. Jeg vil så gerne prøve at lave en såkaldt Cæsar kryptering. Det vil sige at hvis en bruger trykker 'A', bliver det husket som 'B'. Hvis han trykker 'D', bliver det husket som 'E' osv. Altså den bruger det næste bogstav i alfabetet.
Jeg har dette, som bare tager inputtet og skriver det ud. Men hvordan får jeg den til at lægge 1 til bogstavet, så det bliver eksempelvis 'B' i stedet for 'A'?
Kode public class chartest {
public static void main(String arg[])
throws java.io.IOException
{
char stak[] = new char[15];
for(int i = 0; i <=15; i++)
{
char bogstav = (char)System.in.read();
stak[i] = bogstav;
System.out.print(bogstav);
}
}
/** Creates a new instance of chartest */
public chartest() {
}
} |
på forhånd tak
Thomas
| |
| Kommentar Fra : peque |
Dato : 03-03-06 10:35 |
|
Det du udskriver er hvilket nr i stak du udskriver
char bogstav = (char)System.in.read();
i++;
stak[i] = bogstav;
dermed lægger du en mere til det index i din stak som den leder efter o udskriver derfor det næste bogstav...
Håber det var det du søgte
| |
| Kommentar Fra : z1terapi |
Dato : 03-03-06 11:08 |
|
Det ændrede intet. Det bogstav jeg taster, bliver skrevet ud
/Thomas
| |
| Kommentar Fra : Forvirret |
Dato : 03-03-06 12:05 |
|
Du får lagt bogstavet ind i stakken, men bruger ikke stakken til noget. Derfor skal du lægge 1 til "bogstav", da det er den variabel, du skriver ud.
char bogstav = (char)System.in.read();
stak[i] = bogstav;
bogstav++;
System.out.print(bogstav);
| |
| Kommentar Fra : z1terapi |
Dato : 03-03-06 12:16 |
|
Det virkede ikke umiddelbart, men har fundet ud af at når jeg har fyldt stak[],
laver den godt nok om til det næste bogstav. Men det jeg ville var jo at den skulle gøre det hver gang jeg skrev et bogstav...
Det ser nu sådan ud:
Kode public class chartest {
public static void main(String arg[])
throws java.io.IOException
{
char stak[] = new char[15];
for(int i = 0; i <=15; i++)
{
char bogstav = (char)System.in.read();
// stak[i] = bogstav;
bogstav++;
System.out.print(bogstav);
}
}
/** Creates a new instance of chartest */
public chartest() {
}
} |
/Thomas
| |
| Du har følgende muligheder | |
|
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
| |
|
|