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
Lekcja 9 Praca domowa czy dobrze ?
» 2011-08-07 13:45:49
Witam
A więc ja to tak widze.
C/C++
#include <iostream>
using namespace std;
int main()
{
    float a;
    char b;
    long double c;
   
    bool bCzySukces = std::cin.good();
   
    std::cout << "podaj liczbe pierwsza ? ";
    std::cin >> a;
    std::cout << "Udalo sie wczytac dane ?" << std::cin.good() << std::endl;
    std::cout << "czy cos nawalil ?" << std::cin.fail() << std::endl;
    std::cin.clear();
    std::cin.sync();
    std::cin.ignore( 1111, '\n' );
   
    std::cout << "Podaj kolejna liczbe ? ";
    std::cin >> b;
    std::cout << "udalo sie wczytac dane ?" << std::cin.good() << std::endl;
    std::cout << "czy cos nawalilo ?" << std::cin.fail() << std::endl;
    std::cin.clear();
    std::cin.sync();
    std::cin.ignore( 1111, '\n' );
   
    std::cout << "podaj trzecia liczbe : ";
    std::cin >> c;
    std::cout << "czy udalo sie wczytac ?" << std::cin.good() << std::endl;
    std::cout << "czy cos nawalilo ?" << std::cin.fail() << std::endl;
    std::cin.clear();
    std::cin.sync();
    std::cin.ignore( 1111, '\n' );
   
    std::cout << "liczba a =" << a << std::endl;
    std::cout << "liczba b =" << b << std::endl;
    std::cout << "liczba c =" << c << std::endl;
   
   
    return 0;
}
wpisuje te liczby które są w pracy domowej i gdy wpisze tak 123 to w wyniku wypisuje mi Liczba druga =t...
P-38316
Dragonit
» 2011-08-07 13:51:44
Po pierwsze po co wpisujesz ciągle std:: ?? masz ją dołączoną na początku więc nie musisz.Po drugie używasz char więc pobiera ci tylko jeden znak. Musisz użyć tablicy char lub string i omijać spacje. 
P-38317
PesiV
Temat założony przez niniejszego użytkownika
OK
» 2011-08-07 14:00:13
Oka std
czyli poprostu od każdej linijki moge odjąć std::

Tablice ? skąd gdzie jak ?
P-38319
Dragonit
» 2011-08-07 14:05:32
Jakby nie patrzeć to twój program nie potrzebuje użycia tablic, jeśli program pyta o jeden znak wiec nie zawracaj sobie tym głowy narazie.

Edit: tak możesz odjąć std::
P-38320
PesiV
Temat założony przez niniejszego użytkownika
OK
» 2011-08-07 14:10:57
Oka tak wyglada zadanie[quote]
Zadanie domowe
Napisz program, który wczyta trzy liczby rzeczywiste, a na końcu programu je wszystkie wypisze. Zadbaj o to, by bufor strumienia wejściowego był za każdym razem czyszczony. Wynik końcowy powinien również zawierać informacje czy wczytanie danej liczby się powiodło.
Przykładowe dane wejściowe
13.3
tak 123
33.22nie
Przykładowe dane wyjściowe
Liczba pierwsza to: 13.3. Wczytano? 1.
Liczba druga liczba to: 0. Wczytano? 0.
Liczba trzecie liczba to: 33.22. Wczytano? 1.
Wskazówka
Informacje o poprawnym (albo niepoprawnym) wczytaniu danych należy przechować w dodatkowych zmiennych typu bool.[/quote]

wpisuje tak 123 i w odpowiedzi dostaje Liczba b=t a nie tak jak w pracy domowej w przykładzie 0
P-38321
Dragonit
» 2011-08-07 14:20:57
Informacje o poprawnym (albo niepoprawnym) wczytaniu danych należy przechować w dodatkowych zmiennych typu bool.
. Dobra masz zmienną typu bool, ale nią nie operujesz wcale.
P-38323
PesiV
Temat założony przez niniejszego użytkownika
Czyli jest ok ?
» 2011-08-07 14:28:13
Czyli jest dobrze... ?
Na tym poziomie wiedzy nic więcej nie zrobie z tym.
P-38325
Dragonit
» 2011-08-07 14:33:20
Czyli jest dobrze... ?
 ... nie
Zobacz, masz 3 pytania, masz 1 zmienną bool, którą do tego wcale nie używasz. Powinieneś mieć 3 zmienne bool i do kaźdej zmiennej program ma przypisać success/fail.

Na tym poziomie wiedzy nic więcej nie zrobie z tym.
Ten wiedza powinna ci wystarczyć na tym poziomie.
P-38326
« 1 » 2 3
  Strona 1 z 3 Następna strona