Problem 1

  1. Fredrik har ett antal kronor (anges av användare). Deborah har hälften av vad Fredrik har. Joan har hälften av vad Deborah och Fredrik har tillsammans. Hur mycket pengar har de tillsammans?
  2. Givet ett antal timmar (anges av användare) ska programmet räkna motsvarande antal veckor, dagar och timmar.
  3. En lärares betygsunderlag består av inlämningsuppgift (10%), prov 1 (25%), prov 2 (25%), och slutprov (40%). Skriv ett program som beräknar slutbetyget efter att de fyra delar av betygsunderlaget är givna av användaren.
  4. Skriv ett Java-program som läser ett heltal mellan 0 och 1000 och adderar alla siffror i talet.
  5. Skriv ett Java-program som läser ett tal i tum och konverterar det till meter, centimeter och decimeter (1 tum = 0,0254 m).
  6. Skriv ett program som frågar efter ett antal timmar och som visar motsvarande veckor, dagar och timmar.

Lösning

import java.util.Scanner;

public class Pengar{

public static void main(String[] args) {

float fredrik, deborah, joan, total;

Scanner input = new Scanner(System.in);
System.out.print("Hur mycket pengar har Fredrik? ");
fredrik = input.nextFloat();

deborah = fredrik/2;
joan = (deborah + fredrik)/2;

total = fredrik + deborah + joan;

System.out.println("Deborah har " + deborah + "\nJoan har " + joan);
System.out.println("");

System.out.println("De tre tillsammans har " + total + " kr.");
input.close();

}

}

Hur mycket pengar har Fredrik? 400 (anges av användaren, exempel)
Deborah har 200.0
Joan har 300.0

De tre tillsammans har 900.0 kr.

import java.util.Scanner;

public class VeckorDagarTimmar {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);
int givnaTimmar, veckor, dagar, timmar;
System.out.print("Ange ett antal timmar: ");
givnaTimmar = input.nextInt();

veckor = givnaTimmar / (7*24);
dagar = (givnaTimmar % (7*24)) / 24;
timmar = givnaTimmar%24;

System.out.println("\n" + givnaTimmar + " timmar motsvarar: ");
System.out.println(veckor + " veckor, " + dagar + " dagar, " + timmar +
" timmar.");

}

}

Returnerar:

Ange ett antal timmar: 5400 (givet av användare, exempel)

5400 timmar motsvarar:
32 veckor, 1 dagar, 0 timmar.

import java.util.Scanner;

public class Slutbetyg {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);
float deltagande, prov1, prov2, slutprov, resultat;

System.out.print("Ange inlämnings omdöme i poäng från 0 till 100: ");
inuppgift = input.nextFloat();
System.out.print("Ange prov 1 resultat från 0 till 100: ");
prov1 = input.nextFloat();
System.out.print("Ange prov 2 resultat från 0 till 100: ");
prov2 = input.nextFloat();
System.out.print("Ange slutprov resultat från 0 till 100: ");
slutprov = input.nextFloat();

inuppgift *= 0.10f;
prov1 *= 0.25f;
prov2 *= 0.25f;
slutprov *= 0.40f;

resultat = inuppgift + prov1 + prov2 + slutprov;

System.out.println("\nInlämningsuppgift: \t" + deltagande);
System.out.println("Prov 1: \t" + prov1);
System.out.println("Prov 2: \t" + prov2);
System.out.println("Slutprov: \t" + slutprov);
System.out.println("-------------------------");
System.out.println("Resultat: \t" + resultat);
input.close();
}

}

Returnerar:

Ange inlämnings omdöme i poäng från 0 till 100:  65
Ange delprov 1 resultat från 0 till 100: 88
Ange delprov 2 resultat från 0 till 100: 76
Ange slutprov resultat från 0 till 100: 65

Inlämningsuppgift: 6.5
Prov 1:      22.0
Prov 2:     19.0
Slutprov: 26.0
-------------------------
Resultat: 73.5

import java.util.Scanner;

public class ArithmeticExpressions {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

System.out.print("Ange ett heltal mellan 0 och 1000: ");
int heltal = input.nextInt();

int siffra1 = heltal % 10;                                                 // Exempel 456  som delas med 10 = 45,6 då modulus = 6
System.out.println("siffra1 = " + siffra1);                  // returnerar 6
int kvarSiffror = heltal / 10;                                         // 456 / 10 = 45,6 (decimaler kappas eftersom datatyp är int)
System.out.println("Återstår = " + kvarSiffror);     // returnerar 45
int siffra2 = kvarSiffror % 10;                                     // 45 / 10 = 4,5 då modulus = 5
System.out.println("siffra2 = " + siffra2);               // returnerar 5
kvarSiffror = kvarSiffror / 10;                                    // 45 / 10 = 4,5 eller bara 4
System.out.println("Återstår = " + kvarSiffror);   // returnerar 4
int siffra3 = kvarSiffror % 10;                                   // 4 / 10 = 0,4 då modulus = 4
System.out.println("siffra3 = " + siffra3);             // returnerar 4
kvarSiffror = kvarSiffror / 10;                                  // 4 / 10 = 0,4 eftersom int då = 0
System.out.println("återstår = " + kvarSiffror);  // returnerar 0
int siffra4 = kvarSiffror % 10;                                  // 0 / 10 går nej då modulus = 0
System.out.println("siffra4 = " + siffra4);            // returnerar 0
int sum = siffra3 + siffra2 + siffra1 + siffra4;
System.out.println("Additionen av alla siffror i " + num + " är " + sum);

}

}

Returnerar:

Ange ett heltal mellan 0 och 1000: 456
siffra1 = 6
Återstår = 45
siffra2 = 5
Återstår = 4
siffra3 = 4
återstår = 0
siffra4 = 0
Additionen av alla siffror i 456 är 15

import java.util.Scanner;

public class TumTillMeter {

public static void main(String[] Strings) {

Scanner input = new Scanner(System.in);

System.out.print("Ange ett värde i tum som ska konverteras till meter, centimeter och decimeter: ");
double inch = input.nextDouble();
double meter = inch * 0.0254;
double centimeter = meter * 100;
double decimeter = meter * 10;
int tum = (int)inch;
System.out.print(tum + " tum är: \n" +  String.format("%.4f", meter) + " meter \n"
+ String.format("%.2f", centimeter) + " centimeter \n"
+ String.format("%.2f", decimeter) + " decimeter.");

}

}

Returnerar:

Ange ett värde i tum som ska konverteras till meter, centimeter och decimeter: 19
19 tum är:
0,4826 meter
48,26 centimeter
4,83 decimeter.

import java.util.Scanner;

public class VeckorDagarTimmar {

public static void main(String[] args) {

int totalTimmar, veckor, dagar, timmar;
Scanner input = new Scanner(System.in);

System.out.print("Anget ett antal timmar: ");
totalTimmar = input.nextInt();

veckor = totalTimmar / 168; // 24 * 7
dagar = totalTimmar % 168 / 24;
timmar = totalTimmar % 24;

System.out.println(totalTimmar + " timmar motsvarar: "
+ veckor + "veckor, " + dagar " dagar och " + timmar + " timmar.");

}

}

Returnerar:

Ange ett antal timmar: 123456
123456 timmar motsvarar: 734 veckor, 6 dagar och 0 timmar.