Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Lekcja 9 Praca domowa czy dobrze ?

Ostatnio zmodyfikowano 2011-08-07 18:34
Autor Wiadomość
PesiV
Temat założony przez niniejszego użytkownika
Czyli
» 2011-08-07 14:50:36
C/C++
#include <iostream>
using namespace std;
int main()
{
    float a;
    long double b;
    long double c;
   
    bool aCzySukces = cin.good();
    bool bCzySukces = cin.good();
    bool cCzySukces = cin.good();
   
    //resta kodu ...
Teraz ok :)
P-38327
SeaMonster131
» 2011-08-07 14:51:29
Nie. Po co spr czy wczytywanie powiodło się, kiedy jeszcze nic nie wczytałeś? Sprawdzaj to, po każdym wczytaniu.

http://cpp0x.pl/forum/temat/?id=3126
http://cpp0x.pl/forum/temat/?id=4785
http://cpp0x.pl/forum/temat/?id=4750
P-38328
PesiV
Temat założony przez niniejszego użytkownika
» 2011-08-07 14:54:20
aaaa to ma być po każdej zmiennej kumam...

C/C++
#include <iostream>
using namespace std;
int main()
{
    float a;
    long double b;
    long double c;
   
    cout << "podaj liczbe pierwsza ? ";
    cin >> a;
    cout << "Udalo sie wczytac dane ?" << cin.good() << endl;
    cout << "czy cos nawalil ?" << cin.fail() << endl;
    cin.clear();
    cin.sync();
    cin.ignore( 1111, '\n' );
    bool aCzySukces = cin.good(); // ta linijka po każdej zmiennej a potem b i c
    // reszta kodu

P-38329
Dragonit
» 2011-08-07 15:09:38
Czyścisz strumień, a potem sprawdzasz? źle
P-38330
PesiV
Temat założony przez niniejszego użytkownika
» 2011-08-07 15:25:20
C/C++
#include <iostream>
using namespace std;
int main()
{
    float a;
    long double b;
    long double c;
   
    cout << "podaj liczbe pierwsza ? ";
    cin >> a;
    cout << "Udalo sie wczytac dane ?" << cin.good() << endl;
    cout << "czy cos nawalilo ?" << cin.fail() << endl;
    bool aCzySukces = cin.good(); // sprawdzam a
    cin.clear(); //czyszcze
    cin.sync();
    cin.ignore( 1111, '\n' );
   
   
    cout << "podaj liczbe druga ? ";
    cin >> b;
    cout << "Udalo sie wczytac dane ?" << cin.good() << endl;
    cout << "czy cos nawalilo ?" << cin.fail() << endl;
    bool bCzySukces = cin.good(); // sprawdzam b
    cin.clear(); //czyszcze b
    cin.sync();
    cin.ignore( 1111, '\n' );
   
    cout << "podaj liczbe trzecia ? ";
    cin >> c;
    cout << "Udalo sie wczytac dane ?" << cin.good() << endl;
    cout << "czy cos nawalilo ?" << cin.fail() << endl;
    bool cCzySukces = cin.good(); //sprawdzam c
    cin.clear(); // czyszcze c
    cin.sync();
    cin.ignore( 1111, '\n' );
   
    std::cout << "liczba a =" << a << std::endl; //wyswietlam wynik dzialania programu
    std::cout << "liczba b =" << b << std::endl;
    std::cout << "liczba c =" << c << std::endl;
   
   
    return 0;
}

Teraz już dobra powinno być dobrze...
P-38334
Miquel
» 2011-08-07 16:57:56
te linijki:

"
cout << "Udalo sie wczytac dane ?" << cin.good() << endl;
cout << "czy cos nawalilo ?" << cin.fail() << endl;
"
do niczego Ci sie nie przydadza, sluzyly do przyswojenia zasady dzialania funkcji "cin.good" i "cin.fail".

w tresci zadania pisze,ze masz jeszcze razem z wyswietleniem wpisanej wartosci dodac informacje czy zostala ona poprawnie wczytana.

"
std::cout << "liczba a =" << a << std::endl; //wyswietlam wynik dzialania programu
std::cout << "liczba b =" << b << std::endl;
std::cout << "liczba c =" << c << std::endl;
"

dlaczego w ostatnich liniach kodu znowu wykorzystujesz "std"? Program nie zostanie skompilowany, poniewaz na poczatku programu zainicjowales przedrostki "std"("using namespace std;")
P-38342
Dragonit
» 2011-08-07 17:08:37
dlaczego w ostatnich liniach kodu znowu wykorzystujesz "std"? Program nie zostanie skompilowany, poniewaz na poczatku programu zainicjowales przedrostki "std"("using namespace std;")

Co sie ma nie skompilować? Pewnie że sie skompiluje i będzie działać poprawnie. A jak uzywa std:: to nawet lepiej dla niego, niech się uczy dobrych nawyków od początku.
P-38344
Miquel
» 2011-08-07 17:13:44
skoro mowisz, ze sie skompiluje i bedzie tak dzialac to zapewne tak jest, a jesli mowa o dobrych nawykach to niech uzywa std:: w calym programie, albo wcale, bo tak to zle wyglada i nie mozna rozroznic co jest w c++, a co w c.
P-38346
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona