• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zadanie c++ podstawa

Object Storage Arubacloud
0 głosów
238 wizyt
pytanie zadane 9 grudnia 2018 w C i C++ przez m4rcingsxr Początkujący (360 p.)

Witam czy ktoś mógłby mi pomóc z tym zadaniem, nie wiem gdzie robie błąd,  chodzi o to żeby program pytał o wartości dopóki nie podamy dodatnich

int a,b;
   

    while(a<0 || b<0)
{
     cout << "podaj a:" ;
    cin >> a;
    cout <<"podaj b:" ;
    cin >> b;

    if(a<0 || b<0)
        cout << "nieprawidlowa wartosc" ;
        else
            cout << "pp jest rowne: " << a*b << endl;


}

 

4 odpowiedzi

0 głosów
odpowiedź 9 grudnia 2018 przez Arkadiusz Sikorski Pasjonat (20,160 p.)
wybrane 9 grudnia 2018 przez m4rcingsxr
 
Najlepsza
int main()
{
    int a, b;
    while(true) {
        std::cout << "Podaj a: ";
        std::cin >> a;
        std::cout << "Podaj b: ";
        std::cin >> b;
        if(a > 0 && b > 0)
            break;
        else
            std::cout << "a i b muszą być dodatnie!" << std::endl;
    }
    std::cout << "pp = " << a*b << std::endl;
}

Pętla zakończy się tylko, jeśli użytkownik poda a > 0 "i" b > 0, w przeciwnym wypadku wyświetli komunikat i poprosi jeszcze raz :)

komentarz 9 grudnia 2018 przez m4rcingsxr Początkujący (360 p.)
super, działa! niedokonca rozumiem dlaczego true w nawiasach :(, mógłbys wytlumaczyc?
komentarz 9 grudnia 2018 przez Arkadiusz Sikorski Pasjonat (20,160 p.)

while(true) oznacza pętlę nieskończoną. Będzie ona wykonywać się w nieskończoność, dopóki użytkownik nie poda prawidłowych danych. Do "wyskoczenia" z tej pętli używany jest warunek i break.

komentarz 9 grudnia 2018 przez m4rcingsxr Początkujący (360 p.)
super wszystko jasne, dzięki za poświęcony czas! :)
komentarz 9 grudnia 2018 przez Arkadiusz Sikorski Pasjonat (20,160 p.)
Powodzenia z dalszą nauką! :)
0 głosów
odpowiedź 9 grudnia 2018 przez Shimeo7 Obywatel (1,910 p.)
Najlepiej wg mnie zrobić pętle while, a w jej warunku sprawdzić czy liczba jest mniejsza od zera
komentarz 9 grudnia 2018 przez m4rcingsxr Początkujący (360 p.)
próbowałem
0 głosów
odpowiedź 9 grudnia 2018 przez Marcin Siniarski Gaduła (4,420 p.)

Coś w stylu

int a = 0,b = 0;
while(true) {
   cout << "Podaj a";
   cin >> b;
   cout << "Podaj b";
   cin >> b;
   if(a >0 || b > 0)
      break;
   else
      cout << "Niepoprawne warosci" << endl;
}
cout << "pp = " << a*b << endl;

 

0 głosów
odpowiedź 9 grudnia 2018 przez adamus Użytkownik (860 p.)

Weddług mnie uzyj do-while, zobacz:
 

	do{
		cout<<"Podaj a ";
		cin>>a;
		cout<<"Podaj b ";
		cin>>b;
	}while(a<0&&b<0);

Rozumiesz?
Koniec :)

komentarz 9 grudnia 2018 przez m4rcingsxr Początkujący (360 p.)
ale nie moze byc && bo wystarczy ze jeden warunek nie bedzie spelniony
komentarz 9 grudnia 2018 przez adamus Użytkownik (860 p.)
Tak ale podales ze dwie liczby maja byc dodatnie
komentarz 9 grudnia 2018 przez Arkadiusz Sikorski Pasjonat (20,160 p.)
Tu musiałoby być "||". Program ma prosić użytkownika o dane, dopóki a <= 0 LUB b <= 0.

Równoważnie: jeśli którekolwiek liczba jest niedodatnia (a LUB b), pytamy użytkownika jeszcze raz.

Podobne pytania

0 głosów
3 odpowiedzi 443 wizyt
pytanie zadane 24 maja 2017 w C i C++ przez Andrzej Sojka Użytkownik (510 p.)
+1 głos
1 odpowiedź 548 wizyt
pytanie zadane 14 grudnia 2021 w C i C++ przez fsfxvcxv Obywatel (1,160 p.)
0 głosów
0 odpowiedzi 92 wizyt

92,579 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,964 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...