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

Lekcja 17 zadanie 1 pytanie

Ostatnio zmodyfikowano 2017-03-10 13:30
Autor Wiadomość
IceMan85PL
Temat założony przez niniejszego użytkownika
Lekcja 17 zadanie 1 pytanie
» 2017-03-10 13:25:29
Mam pytanie odnosnie tego zadania: "Napisz funkcję, która będzie wczytywała liczby ze standardowego wejścia i zwracała wczytaną wartość. Funkcja ma zagwarantować, że zwracana liczba zawsze jest poprawna. Oznacza to, że funkcja będzie musiała pytać użytkownika o wprowadzenie liczby dopóki nie poda poprawnej". Dokladniej chodzi mi o delkarowanie zmiennej w pętli
do while
, otóż jesli deklaruje zmienne int a i bool spr_a tak jak ponizej czyli w petli kompilator nie widzi zmiennych jesli wezne zmienne umieszecze w funkcji, ale przed petla jest ok. Czy oby na pewno wszytsko robie dobrze i czy nie powinno sie deklarowac zmiennych w petli?
C/C++
#include <iostream>

using namespace std;


int wczytajLiczbe()
{
    do
    {
        int a;
        cin >> a;
        bool spr_a;
        spr_a = cin.good();
        cin.clear();
        cin.sync();
        if( spr_a == 0 )
             cout << "Podaj porawna liczbe" << endl;
       
    } while( spr_a != 1 );
   
    return a;
}

int main()
{
    std::cout << "Podaj liczbe: ";
    int liczba = wczytajLiczbe();
    std::cout << "Podales liczbe: " << liczba << std::endl;
    return 0;
}
P-158796
hit
» 2017-03-10 13:28:17
Nie powinieneś ich deklarować w pętli ponieważ robisz to wielokrotnie z każdym jej wykonaniem. Deklaruj przed.
P-158797
IceMan85PL
Temat założony przez niniejszego użytkownika
» 2017-03-10 13:30:02
Dzieki za szybka odpowiedz
P-158798
« 1 »
  Strona 1 z 1