Co jest nie tak w tym programie? //C++

Wywala mi błąd że coś jest nie tak z tym

i że musze dodać przed cout " ; " a jak dodam to " ; " to sie uruchamia program ale jak wpisze wysokosc w stopach i enter to program się wyłącza. A jak zamiast:

wpisze:

No to pokazuje “cout undeclared (first use this function)” i “cin undeclared (first use this function)”. Co jest nie tak? Używam kompilatora Dev-C++

#include 

#include 

main()

{ 

float stopy ;

float metry ; 

float przelicznik = 0.3 ;


cout << "Podaj wysokość w stopach : " ;

cin >>stopy ; 


metry = stopy * przelicznik;


cout << "\n";


cout << stopy << " stop to jest : " << metry << "metrow\n" ;

system("PAUSE");

return 0;

}
  1. nie miales srednika w jednym miejscu

  2. żeby program ci się nie zamykał sam musi na końcu coś być, najlepiej system(“PAUSE”); a żeby to było trzeba dodać stdlib.h

  3. jak robisz takie mnożenia, to lepiej jak wszystkie z tych liczb są tego samego typu, mogą nie być, ale później przy bardziej zaawansowanych programach mogą się pojawić jakieś dziwne wyniki, więc lepiej odrazu nabrać dobrej maniery w programowaniu

Skoro to ma być w C++, to ja bym zrobił to tak:

#include 

#include 

using namespace std;

int main()

{ 

float stopy; 

float metry; 

float przelicznik = 0.3; 

cout << "Podaj wysokosc w stopach : ";

cin >> stopy; 

metry = stopy * przelicznik; 

cout << endl; 

cout << stopy << "stop to jest : " << metry << "metrow\n" << endl;

system("PAUSE");

}

No raz jak to napisał WhiteDervish - wstawić deklarację używania standardowej przestrzeni nazw - using namespace std;

Po drugie nie dołączać starych wersji plików nagłówkowych, w starym stylu, z rozszerzeniem .h. Czasem diametralnie różnią się od tych bez rozszerzenia .h, czasem prawie się nie różnią, ale jeżeli programujesz w C++ to nie załączaj tych do C - one są do C lub dla tych, którzy przepisują swoje programy z C do C++…

Tak więc w twoim programie był błąd z #include, powinno być:

#include 

//Oraz

using namespace std;

int main()

metry=stopy * przelicznik; //średnik

Z tego co pamiętam to jest to jeden z pierwszych przykładów w Symfonii, więc jakoś słabo przepisywałeś…

moja postac tez dziala bez zarzutu i nie trzeba dawac przestrzeni nazw wcale

Skąd mam wiedzieć jakiej biblioteki użyć?

Może działa, ale tak się raczej nie powinno pisać, zresztą g++ wypluwa przy kompilacji:

no ja akurat kompilowałem pod DEV++ i działa, fakt faktem zawsze zadeklaować można :wink: zaszkodzić, nie zaszkodzi

Ja to wszystko z tej książki “Symfonie C+” biore no i powiem wam że wczoraj nic nie wiedziałem o C++, wieczorem zacząłem się uczyć,a dziś już umiem pare prostych programów napisać :smiley: =D> :stuck_out_tongue: To jest jak narkotyk :wink:

No to zrobiłem sobie taki mały programik, żeby zobaczyć co już umiem no i coś jest nie tak, bo przykładowo wpisze imię “Kamil” no a mi wywala już w programie zamiast “Czesc Kamil, bardzo milo mi cie poznac. Pozdro” to wywala mi “Czesc 2.8026e-45, bardzo milo mi cie poznac. Pozdro” No i czemu to tak robi, no i jescze pytanie: do czego służy

. Pozdro

Jak chcesz wpisać litery do floata?

“int” też nie działa ;/

  1. Dopisz na początku:

    #include

i zamiast:

float name;

napisz:

std::string name;
using namespace przestrzen_nazw;

służy do ustawiania domyślnej przestrzeni nazw. Jeśli napiszesz:

...

using namespace std;

...

cout << "bla bla" << endl;

...

to kompilator będzie wiedział, że chodzi Ci o:

...

std::cout << "bla bla" << std::endl;

...

Warto użyć tego, gdy często wykorzystuje się zmienne, funcke itp. z danej przestrzeni nazw.

To może najpierw przeczytaj CAŁĄ Symfonie, a później bierze się za pisanie? Albo czytaj ze zrozumieniem. Bo typy są omawiane na samym początku, a jak tych chcesz wpisywać tekst do typów liczbowych…

Klasa string jest omawiana dosyć późno w Symfonii C++ Standard… lepiej przeczytaj ją całą albo chociaż pół, a później sprawdź czy coś umiesz.

To przyklad z symfoni :slight_smile: robilem go wlasnie i mialem ten sam problem co ty. Przepisywalem powoli z ksiazki wszystko tak samo, sprawdzalem dokladnie i jeszcze raz kilka razy przepisalem.

KOCHANIE TO MA BYC W JEZYKU C A NIE W C++ …

Proszę nazwać temat konkretnie.

Nie krzycz. Jak piszesz to wyłącz Caps Lock. Popraw to