Problem z strukturą dynamiczną
Ostatnio zmodyfikowano 2016-02-21 18:28
agentcu Temat założony przez niniejszego użytkownika |
Problem z strukturą dynamiczną » 2016-02-20 20:20:24 Witam mam problem z napisaniem struktury dynamicznej, gdyż nie wiem gdzie tkwi problem. Napisałem taką strukturę:
include <iostream> #include <string>
int main() { using namespace std;
struct Pizza { string firma; float srednica; float waga; };
cout << "Podaj srednice pizzy: "; Pizza * p = new Pizza; (cin >> p->srednica).get();
cout << "Podaj producenta pizzy: "; getline(cin, p->firma).get();
cout << "Podaj wage pizzy: "; cin >> p->waga;
cout << endl << endl; cout << "Producent: " << p->firma << endl; cout << "Srednica: " << p->srednica << endl; cout << "Waga: " << p->waga << endl;
delete p;
return 0; }
Program się kompiluje bez błędów, a zwraca takie wyniki Podaj srednice pizzy: 3,65 Podaj producenta pizzy: albatros Podaj wage pizzy:
Producent: 65 Srednica: 3 Waga: 0
Proszę o pomoc bo mam ciemnię przed oczyma. |
|
mateczek |
» 2016-02-20 21:24:07 #include <iostream> #include <string> using namespace std; int main() { struct Pizza { string firma; float srednica; float waga; }; cout << "Podaj srednice pizzy: "; Pizza * p = new Pizza; cin >> p->srednica; cin.ignore(); cout << "Podaj producenta pizzy: "; getline( cin, p->firma ); cout << "Podaj wage pizzy: "; cin >> p->waga; cout << endl << endl; cout << "Producent: " << p->firma << endl; cout << "Srednica: " << p->srednica << endl; cout << "Waga: " << p->waga << endl; delete p; return 0; }
|
|
agentcu Temat założony przez niniejszego użytkownika |
» 2016-02-20 23:35:49 Dzięki program zadziałał. Potrafi mi ktoś odpowiedzieć czemu tan program dla zmiennej z kropka dziala a z przecinkiem juz nie? np
z przecinkiem: Podaj srednice pizzy: 3,4 Podaj producenta pizzy: Podaj wage pizzy: albatros aluminium
Producent: 4 Srednica: 3 Waga: 0
te same dane podane z kropka Podaj srednice pizzy: 3.45 Podaj producenta pizzy: albatros Podaj wage pizzy: 4.567
Producent: albatros Srednica: 3.45 Waga: 4.567 |
|
Pawlo3 |
» 2016-02-21 08:05:03 No bo przecinek nie służy w C/C++ do rozdzielania części przed przecinkiem od tej po przecinku. Do tego służy kropka...niestety z przecinkiem się nie da. |
|
pekfos |
» 2016-02-21 18:28:06 Do tego służy kropka...niestety z przecinkiem się nie da. |
Da się, ale co złego w kropce? Można to przestawić za pomocą dziedziczenia po std::numpunct. |
|
« 1 » |