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

Poziom 1 Obsługa strumienia wejściowego

Ostatnio zmodyfikowano 2019-10-08 19:51
Autor Wiadomość
Jasieg_T
czesc ja nowy na forum
» 2018-08-13 13:18:50
czy dobrze zrobiłem zadanie ? faktycznie troche niejasno są opisane niektóre funkcje np. ta  std::cin.ignore( std::numeric_limits < std::streamsize >::max(), '\n' ); pare rzeczy musiałem sie domyślać głownie dlatego ze nie były potwierdzone pełnym przykładem w napisanym programie(w sensie nie było wglądu na skrypt, nie wiem czy to sie tak nazywa ale w sensie tekst:)) tutaj mój program dodam że ucze sie programowania od dwoch dni.
#include <iostream>


int main()
{
//zmienne dla  bledów w programie
bool AA;
bool BB;

// zmienna a
int a;

   std::cin >> a ;
  AA = std::cin.fail();



// usuwanie b³edów zmiennej a

   std::cin.clear() ;
   std::cin.ignore(1000,'\n') ;

//zmienna b
int b;
   std::cin >> b ;
   BB=std::cin.fail();

//usuwanie b³êdoww zmiennej b

   std::cin.clear() ;
   std::cin.ignore(1000,'\n') ;


//koñcowe informacje
   std::cout<< "liczba o oznaczeniu a= " << a  << std::endl;
   std::cout<< "liczba o oznaczeniu b= " << b << std::endl<< std::endl ;
   std::cout<<"bledy w pierszym etapie ="<< AA<<std::endl;
   std::cout<<"bledy w drugim etapie ="<< BB<< std::endl<< std::endl;


zapomniałem o 3 zmiennej ale program dziala :)
Nie rozumiem troche działania std::cin.fail jak to jest ? wykrywa błedy w całym programie czy jak ? postanowiłem dodać do kazdego typowania liczby bo w koncu nie mogłem zrozumieć jak to działą.  Do ktorego momentu wykrywa błedy i skad mam to wiedzieć ? nie znalazlem nic w lekcji kiedy pokazuje numer 1 to jest bład rozumiem ? 

P-172083
pekfos
» 2018-08-13 19:51:28
Nie rozumiem troche działania std::cin.fail jak to jest ? wykrywa błedy w całym programie czy jak ?
fail nie wykrywa żadnych błędów.
W programie pojawił się nowy zapis: std::cin.fail(), który jest metodą należącą do strumienia std::cin. Za jego pomocą możemy odczytać informację, czy wystąpił bład w trakcie wykonywania którejś z poprzednich operacji. Jeżeli coś zakończy się niepowodzeniem, strumień przechodzi w stan błędu i dalsze operacje na strumieniu są ignorowane.

Do ktorego momentu wykrywa błedy i skad mam to wiedzieć ?
Jak wyżej, i może to?
» Kurs C++ » Poziom 1Podstawy programowania - teoria i terminologia lekcja
Komputer jest urządzeniem pracującym w pierwotnym założeniu sekwencyjnie.
I może taka prosta obserwacja, że instrukcje w programie wykonują się po kolei (nie chce mi się szukać lepszego cytatu z kursu, jeśli istnieje). Skoro operacje mogą zakończyć się błędem i masz instrukcję do odczytania, czy wystąpił błąd, to nie powinno być problemu wiedzieć, co kiedy należy użyć.
P-172086
Jasieg_T
» 2018-08-14 19:56:35
Dobra dzięki byłem troche przemeczony i nie rozumiałem tego :) jednak czasami przydaje sie jak ktoś spojrzy na sytuacje z innej perspektywy jakoś w głowie to sobie komplikowałem :)
P-172105
Przemek978
Temat założony przez niniejszego użytkownika
» 2018-08-23 16:47:56
przecież kod masz podany
P-172193
Przemek978
Temat założony przez niniejszego użytkownika
» 2018-08-23 16:53:32
perkos mógłbyś podać kod jak to wygląda byłbym wdzieczny
P-172194
pekfos
» 2018-08-23 17:06:24
przecież kod masz podany
O jakim kodzie ty mówisz?
mógłbyś jeszcze napisać gdzie w kodzie to wstawić bo wyskakuje mi błąd  bool bCzyBlad
Gdzie jest ten kod, w którym był błąd i jak brzmiał dokładnie komunikat błędu?
P-172195
konrad1806
zadanie z lekcji 1 - obsluga strumienia wejsciowego
» 2019-10-08 19:51:08
Witam,
jestem tu nowy, dopiero co dolaczylem do kursu,
czy dobrze zrozumialem te lekcje i czy tak ma ten program wygladac i dzialac ?

#include <iostream>
#include <limits>


int main ()
{
    float a;
    float b;
    float c;

    std::cout << "Podaj liczbe a : ";
    std::cin >> a;
    bool aCzyBlad = std::cin.fail();
    std::cin.clear();
    std::cin.ignore( std::numeric_limits < std::streamsize >::max(), '\n' );
    std::cout << "Czy cos nawalilo ? " << std::cin.fail() << std::endl;

    std::cout << "Podaj liczbe b : ";
    std::cin >> b;
    bool bCzyBlad = std::cin.fail();
    std::cin.clear();
    std::cin.ignore( std::numeric_limits < std::streamsize >::max(), '\n' );
    std::cout << "Czy cos nawalilo ? " << std::cin.fail() << std::endl;

    std::cout << "Podaj liczbe c : ";
    std::cin >> c;
    bool cCzyBlad = std::cin.fail();
    std::cin.clear();
    std::cin.ignore( std::numeric_limits < std::streamsize >::max(), '\n' );
    std::cout << "Czy cos nawalilo ? " << std::cin.fail() << std::endl;

    std::cout << "Liczba a = " << a << std::endl;
    std::cout << "Liczba b = " << b << std::endl;
    std::cout << "Liczba c = " << c << std::endl;
    return 0;
}

Z gory dziekuje za odpowiedz i podpowiedz ...
P-175321
1 « 2 »
Poprzednia strona Strona 2 z 2