C++ [Odwoływanie do struktur]
Ostatnio zmodyfikowano 2014-11-26 20:49
Bezet11 Temat założony przez niniejszego użytkownika |
C++ [Odwoływanie do struktur] » 2014-11-26 20:22:03 Witam! Moim zadaniem jest stworzenie programu, który będzie zawierał strukturę samochodu z jego danymi. Program ma obliczać ilość aut, które mają mniejszy przebieg niż 50000. Błąd widnieje w komentarzu programu. #include <iostream>
using namespace std;
#define przebieg_50000 50000
int n; struct samochod { int pojemnosc; int ilosc_drzwi; int cena; bool klimatyzacja; std::string przebieg; std::string kolor; std::string marka; };
int main() { int ilosc = 0; for( int i = 0; i < n; i++ ) if( samochod[ i ].przebieg < przebieg_50000 ) ilosc++; cout << ilosc << endl; return 0; }
LOG KOMPILACJI : -------- - C++ Compiler: D:\Program Files\Dev-Cpp\MinGW32\bin\g++.exe - Command: g++.exe "C:\Users\BARTEK\Desktop\main.cpp" -o "C:\Users\BARTEK\Desktop\main.exe" -I"D:\Program Files\Dev-Cpp\MinGW32\include" -I"D:\Program Files\Dev-Cpp\MinGW32\mingw32\include" -I"D:\Program Files\Dev-Cpp\MinGW32\lib\gcc\mingw32\4.8.1\include" -I"D:\Program Files\Dev-Cpp\MinGW32\lib\gcc\mingw32\4.8.1\include\c++" -L"D:\Program Files\Dev-Cpp\MinGW32\lib" -L"D:\Program Files\Dev-Cpp\MinGW32\mingw32\lib" -static-libstdc++ -static-libgcc C:\Users\BARTEK\Desktop\main.cpp: In function 'int main()': C:\Users\BARTEK\Desktop\main.cpp:20:13: error: expected primary-expression before '[' token if(samochod .przebieg<50000)ilosc++; ^ |
|
Quirinnos |
» 2014-11-26 20:29:05 Nie lepiej przebieg dać jako inta? i wtedy sprawdzić? |
|
SMTI |
» 2014-11-26 20:31:10 jak masz strukturę to musisz zadeklarować zmienną daj log kompilacji, pewnie tylko to coś takiego: samochód samochód[n];
i rozumiem że masz zamiar ustawić wartości zmienych |
|
Bezet11 Temat założony przez niniejszego użytkownika |
» 2014-11-26 20:36:18 Na mój rozum tam pokazuję, że brakuje czegoś przed kropką... Ale jestem laikiem w tym więc zdaje się na Was :) Log dodałem do pierwszego posta. |
|
SMTI |
» 2014-11-26 20:38:45 i jeszcze: jak użyłeś "using namespace std" to nie pisz std::(w sumie możesz, ale niepotrzebne) |
|
Bezet11 Temat założony przez niniejszego użytkownika |
» 2014-11-26 20:40:05 Zmieniłem tak jak pisałeś ale nic to nie daje, nadal w tym samym miejscu błąd jest.
|
|
Quirinnos |
» 2014-11-26 20:40:56 samochód to typ zmiennej, nie zmienna. samochod[ i ] to tak jak byś napisał int[ i ] napisałeś strukturę (czyli stworzyłeś nowy typ danych) musisz jeszcze stworzyć zmienną tego typu. tak jak robisz int pojemnosc; . Rozumiesz? ;) |
|
SMTI |
» 2014-11-26 20:42:40 poczekaj, poprawiam błędy #include <iostream>
using namespace std;
#define przebieg_50000 50000
int n = 5; struct samochod { int pojemnosc; int ilosc_drzwi; int cena; bool klimatyzacja; long long int przebieg; std::string kolor; std::string marka; };
int main() { samochod zmienna[ n ]; int ilosc = 0; for( int i = 0; i < n; i++ ) if( zmienna[ i ].przebieg < 50000 ) ilosc++; cout << ilosc << endl; return 0; }
|
|
« 1 » 2 |