• 1400/02/02

منفی کردن شرط در حلقه while :

استاد سلام وخسته نباشید 

من الان در جلسه 22 ام شما هستم 

بعد از مشاهده ویدیو خواستم دوباره يک پروژه شبیه به اين درست کنم در پروژه جدید با اسکنر از کاربر ورودی گرفتم 

ولی برای اینکه کابربر چیزی جز محتوای از قبل تایین شده چیزی ننویسه از حلقه while کمک گرفتم 

اما برای اینکه در شرط گذاری شرط را منفی توصیف کنم مشکل دارم ( باید از ! استفاده بشه ) اما هر بار ارور می داد 

کد ها رو در داخل سوال قرار می دم لطفا مشاهده کنید

// کلاس اول خدرو / کلاسی که ارثبری می کنه بر  روی   خودرو ها
public class Khodro {
    private String name ;
    private String model ;
    private option Price ;
    private int Weight ;
    private String Made ;

    public Khodro(String name, String model, option price, int weight, String made) {
        this.name = name;
        this.model = model;
        Price = price;
        Weight = weight;
        Made = made;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getModel() {
        return model;
    }

    public void setModel(String model) {
        this.model = model;
    }

    public option getPrice() {
        return Price;
    }

    public void setPrice(option price) {
        Price = price;
    }

    public int getWeight() {
        return Weight;
    }

    public void setWeight(int weight) {
        Weight = weight;
    }

    public String getMade() {
        return Made;
    }

    public void setMade(String made) {
        Made = made;
    }
}
//کلاس دوم دنا پلاس (فقط همین یک ماشین رو گذاشتم) / برای این کلاس یک متغیر نوشتم برای آبشن ها 
public class dena_plus extends Khodro {

    public dena_plus(String name, String model, option price, int weight, String made) {
        super(name, model, price, weight, made);
    }
    public static void main (String [] args){
        var dena_plus = new dena_plus("dena+","1393_1400",
                new option(190, "Manual gear","Gasoline burner",4),1285,"Iran") ;

    }

    @Override
    public String getName() {
        return super.getName();
    }

    @Override
    public void setName(String name) {
        super.setName(name);
    }

    @Override
    public String getModel() {
        return super.getModel();
    }

    @Override
    public void setModel(String model) {
        super.setModel(model);
    }

    @Override
    public option getPrice() {
        return super.getPrice();
    }

    @Override
    public void setPrice(option price) {
        super.setPrice(price);
    }

    @Override
    public int getWeight() {
        return super.getWeight();
    }

    @Override
    public void setWeight(int weight) {
        super.setWeight(weight);
    }

    @Override
    public String getMade() {
        return super.getMade();
    }

    @Override
    public void setMade(String made) {
        super.setMade(made);
    }




}
// کلاس سوم (همون آبشینی که گفتم برای قیمت گذاری)
public class option {
    private int Maximum_speed;
    private String Gearbox_type;
    private String Moto_type;
    private int Number_of_cylinders;

    public option(int maximum_speed, String gearbox_type, String moto_type, int number_of_cylinders) {
        Maximum_speed = maximum_speed;
        Gearbox_type = gearbox_type;
        Moto_type = moto_type;
        Number_of_cylinders = number_of_cylinders;
    }

    public int getMaximum_speed() {
        return Maximum_speed;
    }

    public void setMaximum_speed(int maximum_speed) {
        Maximum_speed = maximum_speed;
    }

    public String getGearbox_type() {
        return Gearbox_type;
    }

    public void setGearbox_type(String gearbox_type) {
        Gearbox_type = gearbox_type;
    }

    public String getMoto_type() {
        return Moto_type;
    }

    public void setMoto_type(String moto_type) {
        Moto_type = moto_type;
    }

    public int getNumber_of_cylinders() {
        return Number_of_cylinders;
    }

    public void setNumber_of_cylinders(int number_of_cylinders) {
        Number_of_cylinders = number_of_cylinders;
    }
}
// کلاس آخر صفحه فروش / اینجا بود که مشکل خوردم / اگر حلقه درست کار می کرد چند حلقه و دستورات شرطری ديگری دورنش درست مي کردم و در آخر با دستور پرینت از کل متغیر ها یک فاکترو می ساختم
import java.util.Scanner;
public class Sales_page {
    public static void main (String [] args){
        String name = "dena";
        String defult_name_dena = "dena_plus" ;

        var dena_plus = new dena_plus(name,"1393_1400",
                new option(190, "Manual gear","Gasoline burner",4),1285,"Iran") ;
        Scanner input_name = new Scanner(System.in);
        System.out.println("please enter the name car");
        name = input_name.nextLine();
        // در خط پایین ارور به وجود اومد
        while (dena_plus.getName() ! defult_name_dena ){
            System.out.println("we not have car : " + name);
            input_name = new Scanner(System.in);
            System.out.println("please enter the name car");
            name = input_name.nextLine();
            }
        }
    }

با تشکر

logo-samandehi