Nyckelord: Datatyper, Variabler

Skapa flera metoder som tillsammans räknar ut arean på en cirkel
a:
Skriv en metod inputValue() där användaren får skriva in ett nummer. Metoden ska returnera värdet som användaren skriver in.
b:
Skriv en metod power(), där metoden får in två heltal. Metoden ska returnera det första talet upphöjt i det andra.
c:
Skriv en metod circleArea() som kvadrerar ett tal och som sedan multiplicerar resultatet med pi. Metoden ska returnera resultatet.
d:
Skriv en metod showNumber() som visar användaren ett reellt tal med två decimaler i en dialogruta.
e:
Skriv ett program som använder sig av ovanstående metoder för att skriva ut arean på en cirkel vars radie är ett tal som användaren skriver in.
Ledtråd A
Använd klassen Scanner för att be användaren om en input.
Ledtråd B
Använd klassen math.pow() för att ta en double, upphöjt i en annan double.
Ledtråd C
Radien på en cirkel beräknas genom att ta radien * radien * pi. Gör beräkningen och returnera resultatet som en double.
Ledtråd D
Visa en dialogruta kan man göra genom att använda klassen JOptionPane. Du behöver importera klassen swing för att kunna använda dig av JFrames.
import javax.swing.*;
JFrame frame = new JFrame("Arean på cirkel");
JOptionPane.showMessageDialog(frame, "Arean på cirkeln är: " + output);
Ledtråd E
Använd resultatet från föregående metod och skicka in resultatet i nästa. Exempelvis:
double value = inputValue();
double area = circleArea(value);
showNumber(area);
System.exit(0);
System.exit(0) behövs för att avsluta programmet efter att dialogrutan har visats.
Svar
/* Importerar klassen swing för att visa dialogrutor
* och Scanner för att ta emot input.
*/
import javax.swing.*;
import java.util.Scanner;
public class Uppgift6 {
public static void main(String[] args) {
double value = inputValue();
double area = circleArea(value);
showNumber(area);
System.exit(0);
}
// Metod som heter inputValue, frågar användaren om en radie och returnerar värdet som en double
static double inputValue(){
Scanner input = new Scanner(System.in);
System.out.println("Skriv in radien på cirkeln: ");
return input.nextDouble();
}
// Tar en double upphöjt i en annan double. Returnerar svaret som en double.
static double power(double val, double power) {
return Math.pow(val, power);
}
// Beräknar arean på en cirkel, givet radien
static double circleArea(double radius) {
return power(radius, 2) * Math.PI;
}
/* Skapar en dialogruta som visar arean på en cirkel
* Använder String.format för att formatera talet till en string med två decimaler
*/
static void showNumber(double val) {
String output = String.format("%.2f", val);
// Skapar en dialogruta som visar ett meddelande
JFrame frame = new JFrame("Arean på cirkel");
JOptionPane.showMessageDialog(frame, "Arean på cirkeln är: " + output);
}
}
Förklaring
Varje metod sköter sin del av programmet. Metoderna kan sedan återanvändas i andra metoder. Exempelvis använder vi i ovanstående exempel metoden power() för att beräkna arean av cirkeln i metoden circleArea().
Vi använder static för alla metoder i detta exempel eftersom vi anropar metoderna direkt från huvudklassen.