1

Тема: Допоможіть знайти помилку.

ПОМИЛКА:
This declaration has no storage class or type specifier.
Ось код.

#include<iostream>
#include<string>
#include<fstream>

using namespace std;

class Device{
private:
    string Name, Maker;
    int  Warranty,Price;
public:
    Device() : Name(" "), Maker(" "), Warranty(0), Price(0){}
    void set(string nm, string mk, int wr, int rp){
        Name = nm;
        Maker = mk;
        Warranty = wr; 
        Price = rp;
    }
    void INPUT(istream &in){
        in >> Name >> Maker >> Warranty >> Price; 
    }
    void OUTPUT(ostream &out){
        out << Name << " " << Maker << " " << Warranty << " " << Price;
    }
    string getName(){ 
        return Name;
    }
    string getMaker(){ 
        return Maker;
    }
    int getWarranty(){
        return Warranty; 
    }
    int getPrice(){ 
        return Price; 
    }
};


void SORTING(Device *a, int n){
    Device temp;
    for (int i = 0; i < n; i++)
        for (int j = 0; j<n - 1 - i; j++)
            if (a[j].getPrice()>a[j + 1].getPrice())
            {
                temp = a[j];
                a[j] = a[j + 1];
                a[j + 1] = temp;
            }
}


void PRINTING(Device *a, int n, int warr){
    for (int i = 0; i < n; i++){
        if (a[i].getWarranty()> warr )
            a[i].OUTPUT(cout);
    }
}


void main(){
    int n, warr;
    ifstream input("Device.txt");
    ofstream output("sorted.txt");
    input >> n;
    Device *a = new Device[n];
    for (int i = 0; i < n; i++){
        a[i].INPUT(input);
    }
    SORTING(a, n);
    for (int i = 0; i < n; i++){
        a[i].OUTPUT(output);
    }
    cout << "Enter the minimum warranty:" << endl;
    cin >> warr;
    PRINTING(a, n, warr);
    delete []a;
    input.close();
    output.close();
    system("pause");
}
A good example is the best sermon.

2

Re: Допоможіть знайти помилку.

This declaration

Зазвичай при цьому компілятор показує (або підсвічує, або пише номер рядка), яке саме оголошення він має на увазі. Інакше раджу змінити компілятор.

3

Re: Допоможіть знайти помилку.

koala написав:

This declaration

Зазвичай при цьому компілятор показує (або підсвічує, або пише номер рядка), яке саме оголошення він має на увазі. Інакше раджу змінити компілятор.

Компілятор вказує на останній символ коду("}")

A good example is the best sermon.

4

Re: Допоможіть знайти помилку.

mazurkevych написав:
koala написав:

This declaration

Зазвичай при цьому компілятор показує (або підсвічує, або пише номер рядка), яке саме оголошення він має на увазі. Інакше раджу змінити компілятор.

Компілятор вказує на останній символ коду("}")

Хм... Друже, не знаю як в вас, але в мене компілює без помилок. Друге діло, що воно компільнуло і нічого не відбувається, або просто Windows закриває його як помилку.

"Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program."
- Linus Torvalds
Подякували: koala1

5

Re: Допоможіть знайти помилку.

Logans написав:
mazurkevych написав:
koala написав:

Зазвичай при цьому компілятор показує (або підсвічує, або пише номер рядка), яке саме оголошення він має на увазі. Інакше раджу змінити компілятор.

Компілятор вказує на останній символ коду("}")

Хм... Друже, не знаю як в вас, але в мене компілює без помилок. Друге діло, що воно компільнуло і нічого не відбувається, або просто Windows закриває його як помилку.

до програми має бути прикріплений текстовий документ з відповідною назвою

A good example is the best sermon.