Oppgave 1
Skal du bruke long
må du ha: long
k = -1L; og med BigInteger må det
være: BigInteger
k = new BigInteger
("-1");
byte og Byte: -1 377 ff short og Short: -1 177777 ffff int og Integer: -1 37777777777 ffffffff long og Long -1 1777777777777777777777 ffffffffffffffff BigInteger: -1 -1 -1
For BigInteger
brukes det vanlig fortegn når et negativt heltall skal skrives
oktalt eller heksadesimalt, dvs. tegnet - foran den oktale (eller heksadesimale) representasjonen
av tallet uten fortegn. Det må være slik siden BigInteger
ikke bruker
et fast antall binære siffer.
Oppgave 2
int[][] a = {{5,15,100,10},{200,5,90,0},{50,150,50,100}}; for (int[] rad : a) { for (int k : rad) System.out.printf(" %3d", k); System.out.printf("%n"); }
Bruk så direktivsetningen " %03d"
Oppgave 3
int k = -1; String binær = Integer.toBinaryString(k); System.out.printf("%1$d %1$#o %1$#x 0b%2$s%n", k, binær);
Oppgave 4
for (int tall = 1; tall < 32; tall++) { String binær = Integer.toBinaryString(tall); System.out.printf("%1$4d%1$4o%1$4x%2$7s%n", tall, binær); }
Oppgave 5
byte b = 123; System.out.printf("%s%n", b); // Utskrift: 123 short s = 123; System.out.printf("%s%n", s); // Utskrift: 123 int i = -123; System.out.printf("%s%n", i); // Utskrift: -123 long l = Long.MAX_VALUE; System.out.printf("%s%n", l); // Utskrift: 9223372036854775807 BigInteger bg = new BigInteger("123"); System.out.printf("%s%n", bg); // Utskrift: 123