Şu programı yeni bitirdim. Şimdi, sürücü programından çağıran bir sınıfa sunduğum snipet'te şu kodu vermem istendi, ancak bunun nasıl olacağını, nasıl çalışacağını veya yapılması gereken terminolojiyi bilmiyorum. bu.Bir sürücüye oluşturduğum şu Java kodunu nasıl kodlandırabilirim?
/**
* Will Calculate the Area of Given Shapes.
*
* @author Adrian Miranda
* @version (a version number or a date)
*/
import java.util.Scanner;
public class Area_Shapes
{
public static void main(String[] args)
{
Scanner stdIn = new Scanner(System.in);
int Shape;
String A = "The Area is ";
double Area;
double Base;
double Height;
double q1;
double q2;
double radius;
double Length;
char response;
do
{
System.out.println(" Enter A Shape 1 = triangle 2 = square 3 = rhombus 4 = circle 5 = rectangle: ");
Shape = stdIn.nextInt();
if (Shape == 1)
{
System.out.println("Enter Base: ");
Base = stdIn.nextDouble();
System.out.println("Enter Height: ");
Height = stdIn.nextDouble();
Area = (Base * Height)/ 2 ;
System.out.println(A + Area);
System.out.println(" Enter Another Shape? (y/n): ");
response = stdIn.next() .charAt(0);
}
else if (Shape == 2)
{
System.out.println("Enter length ");
Length = stdIn.nextDouble();
Area = Length * Length;
System.out.println(A + Area);
System.out.println(" Enter Another Shape? (y/n): ");
response = stdIn.next() .charAt(0);
}
else if (Shape == 3)
{
System.out.println("Enter q1: ");
q1 = stdIn.nextDouble();
System.out.println("Enter q2: ");
q2 = stdIn.nextDouble();
Area = q1 * q2 * 0.5 ;
System.out.println(A + Area);
System.out.println(" Enter Another Shape? (y/n): ");
response = stdIn.next() .charAt(0);;
}
else if (Shape == 4)
{
System.out.println("Enter radius ");
radius = stdIn.nextDouble();
Area = radius * Math.PI * radius;
System.out.println(A + Area);
System.out.println(" Enter Another Shape? (y/n): ");
response = stdIn.next() .charAt(0);
}
else if (Shape == 5)
{
System.out.println("Enter Base: ");
Base = stdIn.nextDouble();
System.out.println("Enter Height: ");
Height = stdIn.nextDouble();
Area = (Base * Height) ;
System.out.println(A + Area);
System.out.println(" Enter Another Shape? (y/n): ");
response = stdIn.next() .charAt(0);
}
else
{
System.out.println("error, invalid shape, please enter a square triangle or rhombus.");
System.out.println(" Enter Another Shape? (y/n}: ");
response = stdIn.next() .charAt(0);;
}
}while (response == 'y');
}
}
(düzenlemek sürücü sınıfına örnek döngü eklendi). Birincisi, bana göre bölgede, alan için sayıları zaten vermişsinizdir, fakat kullanıcının bunları kendisinin girmesini istiyorum. 2 Bütün program döngüsünü nasıl yapabilirim? Şöför sınıfındaki 3, bana Shape_Area sa = new ....... satırının işleyiş şeklini ve amacının ne olduğunu açıklayabilir misiniz? Son olarak, 4, programın nasıl çalıştığı, sürücü olmayan bir sınıfa ne zaman sokulduğuna göre, nasıl bölge verileceği ve sonuçların nasıl üretileceği, sürücü sınıfından nasıl işliyor? –
@ A.Miranda: 1. Bu sürücü giriş istiyor. 2. Girdi alanının çevresine bir ilmek ekleyin ve sonunda (şimdi Shape_Area sınıfında sahip olduğunuza benzer şekilde) sorun. 3. Yeni bir Shape_Area nesnesi oluşturursunuz. Mevcut Shape_Area kodunuza sahip olmanızın yolu (cevaba işaret eden ayarlamalar), Şekli açarsınız ve çıkışı görüntülersiniz; Bu aynı yaklaşımı kaldıracaktır. 4. Soruyu anlama. – KevinO
Soru 4 için özür dilerim, garip bir şekilde söyledim, ama programın çağrı ve sürücü yöntemi açısından nasıl çalıştığını kastediyorum. Kodlamaya yeni başlıyorum, bu yüzden terminolojiyi takip etmede sorun yaşıyorum ve nihaî sonucun üretilmesi açısından neyin nasıl ve ne işe yaradığı hakkında. Sürücü sınıfı diğeriyle nasıl etkileşiyor? –