Помощ пичове спешно е за една програма |
||||
|
||||
|
|
||||
![]() ![]() |
Пичове помогнете трябва ми спешно една програма но сам начинаещ и немога да я направа.ПРограмата е следната:
Да се състави абстрактен базов клас „фигура” (Figure) и три производни от него класа „окръжност” (Circle), „триъгълник” (Triangle) и „правоъгълник” (Rectang). Базовият клас съдържа наименованието на геометричната фигура name, метод toString(), за извеждане на наименованието на фигурата, абстрактен метод getArea() – за извеждане на лицето (на производните класове от този клас), метод compareTo() – за сравнение на две фигури по стойността на лицето им, метод getName(), който връща стойността, записана в полето name. Производните класове съдържат основните геометрични характеристики на съответните фигури: - класа Circle – поле radius; - класа Triangle – полета a, b и c – страни на триъгълника; - класа Rectang – полета x и y – страни на правоъгълника. Всеки от производните класове има конструктор по подразбиране (без параметри), конструктор, който чете стойностите на геометричните параметри от файл (използвайте класа Scanner), метод toString(), който извежда името на фигурата и нейното лице (обръща се към метода toString() на базовия клас) и метод getArea(), който връща лицето на фигурата. Да бъдат решени следните подзадачи: 1. Метод за създаване и запълване на списък от обекти от класовете Circle, Triangle и Rectang като данните за геометричните им параметри се четат от текстов файл. Данните във файла са организирани по следния начин: <брой на обектите във файла> <тип на обекта> <списък от геометрични параметри> <тип на обекта> <списък от геометрични параметри> ... <тип на обекта><списък от геометрични параметри> Тип на обекта: 0 – за Circle, 1 – за Triangle, 2 – за Rectangl 2. Метод за записване на информацията от списъка от обекти във файл (сериализация) 3. Метод за прочитане на информацията от файла в списък от обекти (десериализация) 4. Метод за извеждане на сумата от лицата на фигурите, включени в списъка |
|||
|
Това мнение е редактирано от sandala на 27.06.2008 11:21
---------------------------
Потребител от: 10.03.08 | Всички уроци от sandala | Всички скриптове от sandala „Спасението на давещите се е в ръцете на самите давещи се!" |
||||
|
|
||||
|
||||
|
|
||||
![]() ![]() |
веднага се хващам!
|
|||
|
---------------------------
Потребител от: 16.01.05 | Всички уроци от tsvetozar | Всички скриптове от tsvetozar http://webstrategy.awardspace.com/ - една идея за web-базирана страгегия с използването на AJAX http://bizast.hit.bg/ - една web-базирана бизнес ориентирана системка, която все повече започва да влиза в употреба (за моя радост) |
||||
|
|
||||
|
|
||||
![]() ![]() |
Хаха това за днешния изпит в нбу ли е?
|
|||
|
---------------------------
Потребител от: 24.06.08 | Всички уроци от cthulhu | Всички скриптове от cthulhu |
||||
|
|
||||
|
|
||||
![]() ![]() |
Хаха да от изпита в нбу.Тя е примерната задача , но на изпита беше подобна.Понеже немогаж да я направа и си търся помощ :)
Здравко ти в Нбу ли си ? |
|||
|
Това мнение е редактирано от sandala на 28.06.2008 04:25
---------------------------
Потребител от: 10.03.08 | Всички уроци от sandala | Всички скриптове от sandala „Спасението на давещите се е в ръцете на самите давещи се!" |
||||
|
|
||||
|
|
||||
![]() ![]() |
Да в нбу съм.На мен ми се падна задачата с кухнениските уреди.
Как мина изпита?Направи ли нещо? |
|||
|
---------------------------
Потребител от: 24.06.08 | Всички уроци от cthulhu | Всички скриптове от cthulhu |
||||
|
|
||||
|
|
||||
![]() ![]() |
import java.io.*;
import java.util.*; public class Test { public static void main(String... args) throws FileNotFoundException { String path = "D:\\Java\\parametri.txt"; /* Така изглежда parametri.txt 0 10 1 2.0 2.0 2.0 2 10 6 */ Scanner in0 = new Scanner(new File(path)); Scanner in1 = new Scanner(new File(path)); Scanner in2 = new Scanner(new File(path)); Figure[] F = new Figure[6]; F[0] = new Circle(); F[1] = new Triangle(); F[2] = new Rectang(); F[3] = new Circle(in0); F[4] = new Triangle(in1); F[5] = new Rectang(in2); for(Figure figure : F){ System.out.println( figure.toString() ); } System.out.println( F[0].compareTo(F[3])); System.out.println( F[1].compareTo(F[4])); System.out.println( F[2].compareTo(F[5])); } } //Figure abstract class Figure implements Comparable<Figure>{ private String name; public Figure(){ name = getClass().getName(); } public Figure(Scanner in){ this(); } @Override public String toString() { return name; } public String getName(){ return name; } public abstract double getArea(); @Override public int compareTo(Figure other) { if (getArea() < other.getArea()) return -1; if (getArea() > other.getArea()) return 1; return 0; } } //Circle class Circle extends Figure{ private double radius; public Circle(){ radius = 20; } public Circle(Scanner in){ super(in); String str; while(in.hasNext()){ if( (str = in.nextLine()).charAt(0) == '0'){ radius = Double.parseDouble(str.substring(2)); } } } @Override public String toString() { return super.toString()+", S = " + getArea(); } @Override public double getArea() { //S = PI.r.r return Math.PI * Math.pow(radius, 2); } } //Triangle class Triangle extends Figure{ private double a, b, c; public Triangle(){ a = b = c = 2; } public Triangle(Scanner in){ super(in); String str; while(in.hasNext()){ if( (str = in.nextLine()).charAt(0) == '1'){ int n1 = 0,n2 = 0, n3 = 0; int[] ind = new int[str.length()]; for(int i = 0;i< str.length();i++){ if( str.charAt(i) == ' '){ ind[i] = i; } } Arrays.sort(ind); for(int i = 0;i< str.length();i++){ if(ind[i] != 0){ n1 = ind[i]; n2 = ind[i+1]; n3 = ind[i+2]; break; } } a = Double.parseDouble(str.substring(n1+1, n2)); b = Double.parseDouble(str.substring(n2+1, n3)); c = Double.parseDouble(str.substring(n3+1)); } } } @Override public String toString() { return super.toString()+", S = " + getArea(); } @Override public double getArea() { //p = (a + b + c)/2 - полупериметъра //S = Херонова формула double p = (a + b + c) / 2; return Math.sqrt( p*(p - a)*(p - b)*(p - c) ); } } //Rectang class Rectang extends Figure{ private double x, y; public Rectang(){ x = y = 6; } public Rectang(Scanner in){ super(in); String str; while(in.hasNext()){ if( (str = in.nextLine()).charAt(0) == '2'){ int n1 = 0,n2 = 0; int[] ind = new int[str.length()]; for(int i = 0;i< str.length();i++){ if( str.charAt(i) == ' '){ ind[i] = i; } } Arrays.sort(ind); for(int i = 0;i< str.length();i++){ if(ind[i] != 0){ n1 = ind[i]; n2 = ind[i+1]; break; } } x = Double.parseDouble(str.substring(n1+1, n2)); y = Double.parseDouble(str.substring(n2+1)); } } } @Override public String toString() { return super.toString()+", S = " + getArea(); } @Override public double getArea() { // S = x.y return x * y; } } //Това нещо иска бая да се тества :) |
|||
|
---------------------------
Потребител от: 22.06.08 | Всички уроци от silver_fox | Всички скриптове от silver_fox |
||||
|
|
||||
|
|
||||
![]() ![]() |
Уаууу пич бая кодец си написал
|
|||
|
---------------------------
Потребител от: 07.12.07 | Всички уроци от Skull | Всички скриптове от Skull =============================================== Sianan Sakich-Sunce moje =============================================== http://pbs.free.bg/ =============================================== |
||||
|
|
||||
|
|
||||
![]() ![]() |
[quote=silver_fox@28.06.2008 21:43]import java.io.*;
import java.util.*; public class Test { public static void main(String... args) throws FileNotFoundException { String path = "D:\\Java\\parametri.txt"; /* Така изглежда parametri.txt 0 10 1 2.0 2.0 2.0 2 10 6 */ Scanner in0 = new Scanner(new File(path)); Scanner in1 = new Scanner(new File(path)); Scanner in2 = new Scanner(new File(path)); Figure[] F = new Figure[6]; F[0] = new Circle(); F[1] = new Triangle(); F[2] = new Rectang(); F[3] = new Circle(in0); F[4] = new Triangle(in1); F[5] = new Rectang(in2); for(Figure figure : F){ System.out.println( figure.toString() ); } System.out.println( F[0].compareTo(F[3])); System.out.println( F[1].compareTo(F[4])); System.out.println( F[2].compareTo(F[5])); } } //Figure abstract class Figure implements Comparable<Figure>{ private String name; public Figure(){ name = getClass().getName(); } public Figure(Scanner in){ this(); } @Override public String toString() { return name; } public String getName(){ return name; } public abstract double getArea(); @Override public int compareTo(Figure other) { if (getArea() < other.getArea()) return -1; if (getArea() > other.getArea()) return 1; return 0; } } //Circle class Circle extends Figure{ private double radius; public Circle(){ radius = 20; } public Circle(Scanner in){ super(in); String str; while(in.hasNext()){ if( (str = in.nextLine()).charAt(0) == '0'){ radius = Double.parseDouble(str.substring(2)); } } } @Override public String toString() { return super.toString()+", S = " + getArea(); } @Override public double getArea() { //S = PI.r.r return Math.PI * Math.pow(radius, 2); } } //Triangle class Triangle extends Figure{ private double a, b, c; public Triangle(){ a = b = c = 2; } public Triangle(Scanner in){ super(in); String str; while(in.hasNext()){ if( (str = in.nextLine()).charAt(0) == '1'){ int n1 = 0,n2 = 0, n3 = 0; int[] ind = new int[str.length()]; for(int i = 0;i< str.length();i++){ if( str.charAt(i) == ' '){ ind[i] = i; } } Arrays.sort(ind); for(int i = 0;i< str.length();i++){ if(ind[i] != 0){ n1 = ind[i]; n2 = ind[i+1]; n3 = ind[i+2]; break; } } a = Double.parseDouble(str.substring(n1+1, n2)); b = Double.parseDouble(str.substring(n2+1, n3)); c = Double.parseDouble(str.substring(n3+1)); } } } @Override public String toString() { return super.toString()+", S = " + getArea(); } @Override public double getArea() { //p = (a + b + c)/2 - полупериметъра //S = Херонова формула double p = (a + b + c) / 2; return Math.sqrt( p*(p - a)*(p - b)*(p - c) ); } } //Rectang class Rectang extends Figure{ private double x, y; public Rectang(){ x = y = 6; } public Rectang(Scanner in){ super(in); String str; while(in.hasNext()){ if( (str = in.nextLine()).charAt(0) == '2'){ int n1 = 0,n2 = 0; int[] ind = new int[str.length()]; for(int i = 0;i< str.length();i++){ if( str.charAt(i) == ' '){ ind[i] = i; } } Arrays.sort(ind); for(int i = 0;i< str.length();i++){ if(ind[i] != 0){ n1 = ind[i]; n2 = ind[i+1]; break; } } x = Double.parseDouble(str.substring(n1+1, n2)); y = Double.parseDouble(str.substring(n2+1)); } } } @Override public String toString() { return super.toString()+", S = " + getArea(); } @Override public double getArea() { // S = x.y return x * y; } } //Това нещо иска бая да се тества :)[/quote] Пич бая си се потрудил мерси за която , но или аз съм бая зле или нещо нищо не излиза.Мерси все пак че си се потрудил наистина |
|||
|
---------------------------
Потребител от: 10.03.08 | Всички уроци от sandala | Всички скриптове от sandala „Спасението на давещите се е в ръцете на самите давещи се!" |
||||
|
|
||||
|
|
||||
![]() ![]() |
То може аз да съм бая зле :) .Защото сега се уча. Виж какво ми дава на мен:
Circle, S = 1256.6370614359173 Triangle, S = 1.7320508075688772 Rectang, S = 36.0 Circle, S = 314.1592653589793 Triangle, S = 1.7320508075688772 Rectang, S = 60.0 1 0 -1 - Имай предвид, че трябва да промениш String path = "D:\\Java\\parametri.txt";!!! |
|||
|
---------------------------
Потребител от: 22.06.08 | Всички уроци от silver_fox | Всички скриптове от silver_fox |
||||
|
|
||||
|
|
||||
![]() ![]() |
//Това трябва да е по добро:
import java.io.*; import java.util.*; public class Test { public static void main(String... args) throws Exception { String path = "D:\\Java\\parametri.txt"; /* Така изглежда parametri.txt Circle 10 Triangle 2,0 2,0 2,0 Rectang 10 6 */ Scanner in = new Scanner(new File(path)); Figure[] F = new Figure[6]; F[0] = new Circle(); F[1] = new Triangle(); F[2] = new Rectang(); F[3] = new Circle(in); F[4] = new Triangle(in); F[5] = new Rectang(in); for(Figure figure : F){ System.out.println( figure.toString() ); } System.out.println( F[0].compareTo(F[3])); System.out.println( F[1].compareTo(F[4])); System.out.println( F[2].compareTo(F[5])); System.out.println( F[0].getName()); in.close(); } } //Figure abstract class Figure implements Comparable<Figure>{ private String name = getClass().getName(); protected static double[]D = new double[6]; public String toString() { return getClass().getName(); } public String getName(){ return name; } public abstract double getArea(); public int compareTo(Figure other) { if (getArea() < other.getArea()) return -1; if (getArea() > other.getArea()) return 1; return 0; } public void parameter(Scanner in){ String str; while(in.hasNext()){ if( (str = in.next()).equals("Circle")){ D[0] = in.nextDouble(); } if((str = in.next()).equals("Triangle")){ D[1] = in.nextDouble(); D[2] = in.nextDouble(); D[3] = in.nextDouble(); } if((str = in.next()).equals("Rectang")){ D[4] = in.nextDouble(); D[5] = in.nextDouble(); } } } } //Circle class Circle extends Figure{ private double radius; public Circle(){ radius = 20; } public Circle(Scanner in){ parameter(in); radius = D[0]; } public String toString() { return super.toString()+", S = " + getArea(); } public double getArea() { //S = PI.r.r return Math.PI * Math.pow(radius, 2); } } //Triangle class Triangle extends Figure{ private double a, b, c; public Triangle(){ a = b = c = 2; } public Triangle(Scanner in){ parameter(in); a = D[1]; b = D[2]; c = D[3]; } public String toString() { return super.toString()+", S = " + getArea(); } public double getArea() { double p = (a + b + c) / 2;//p = (a + b + c)/2 - полупериметъра return Math.sqrt( p*(p - a)*(p - b)*(p - c) );//S = Херонова формула } } //Rectang class Rectang extends Figure{ private double x, y; public Rectang(){ x = y = 6; } public Rectang(Scanner in){ parameter(in); x = D[4]; y = D[5]; } public String toString() { return super.toString()+", S = " + getArea(); } public double getArea() { // S = x.y return x * y; } } |
|||
|
---------------------------
Потребител от: 22.06.08 | Всички уроци от silver_fox | Всички скриптове от silver_fox |
||||
|
|
||||
|
|
||||
![]() ![]() |
Пичове и тва нещо не става.И аз се мъча нещо ама и аз незнам.Вижте следния код -
abstract class Job { String position; double percent1,percent2; int rate, regilar_days, irregilar_days; String toString() { System.out.println("dlyjnosta e: " + position); } abstract int getSalary(); int getPosition { return position; } } } class Manager extends Job { Manager() { percent1 = 70; percent2 = 80; } Manager(Manager man) { DataInputStream datain; } String toString() { System.out.println("Dlyjnosta e: " + position " a zaplatata: " + rate); } double getSalery() { double salary; salary = regular_days * percent1/100 + irregular_days*percent2/100; } } class Worker extends Job { Worker() { percent1 = 50; percent2 = 60; } Worker(Worker wk) { DataInputStream datain; } String toString() { System.out.println("Dlyjnosta e: " + position " a zaplatata " + rate); double getSalery() { double salary; salary = regular_days * percent1/100 + irregular_days*percent2/100; } class Assistent extends Job { Assistent() { percent1 = 55; percent2 = 65; } Assistent(Assistent as) { DataInputStream datain; } String toString() { System.out.println("Dlyjnosta e: " + position " a zaplatata " + rate); } double getSalery() { double salary; salary = regular_days * percent1/100 + irregular_days*percent2/100; } class ThreeJobs { public static void main(String args[]) throws IOException { Job jobs = new Job[3]; Manager mn = new Manager(); Worker wk = new Worker(); Assistent as = new Assistent(); mn.toString(); } } Горе долу нещо такова трябва да е по-простоватичко така да се каже този мой код не върви а и не е довършен.Показвам ви го ако можете да ми помогнете да го редактираме и завършим заедно и да направиме тая задачка.Благодаря ви отново че проявявате интерес. |
|||
|
Това мнение е редактирано от sandala на 20.07.2008 14:37
---------------------------
Потребител от: 10.03.08 | Всички уроци от sandala | Всички скриптове от sandala „Спасението на давещите се е в ръцете на самите давещи се!" |
||||
|
|
||||
| 1 посетител чете тази тема (0 потребители и 1 гост) | |||
|
Активни потребители:
---
|
|||
| |||
Още по темата:
php форум,
flash форум,
html форум,
it форум,
seo форум,
vista форум,
pc форум,
css форум,
java форум,
mysql форум,
дизайн форум













