ďťż

Ładny brzuch

Witam.
mam takie oto zadanko: Napisz program który przyporządkuje liczbę do jednego z przedziałów: ujemnych, jednocyfrowych, dwucyfrowych, pozostałych.
Największy Problem mi stawia wyraz "jednego" nie wiem jak sobie z tym poradzić proszę o pomoc
#include<iostream> #include<conio.h> int main() { int Liczba; { std::cout << "Podaj liczbe" << std::endl; std::cin >> Liczba; if (Liczba < 0) { std::cout << "Liczba jest ujemna"; if (Liczba < 10 && Liczba > -10) std::cout << "Liczba jest jednocyfrowa"; } if (Liczba > 10 && Liczba < -10) std::cout << "Liczba jest dwucufrowa"; else std::cout << "Pozostale"; } getch(); }



Twoj kod po małej przeróbce, nie daje głowy ze zadziała bo go nie sprawdzałem ale poprawiłem błąd w algorytmie...
#include<iostream> #include<conio.h> int main() { int Liczba; { std::cout << "Podaj liczbe" << std::endl; std::cin >> Liczba; if (Liczba < 0) { std::cout << "Liczba jest ujemna"; if(liczba > -10 ) std::cout << "liczba jednocyfrowa"; } else if (Liczba < 10) std::cout << "Liczba jest jednocyfrowa"; else if (Liczba > 10 || Liczba < -10) std::cout << "Liczba jest dwucufrowa"; else std::cout << "Pozostale"; } getch(); }

Dzięki jest lepiej ale program nie działa na dwucyfrowe.hmm.....

btw. przy 2-cyforwych powinno byc >= 10 i <= -10
... nie działa tzn. co wypisuje?



tak będzie najprzejrzyściej http://img265.images...mage=asd9qr.png

program działa poprawnie, a Ty masz zagadke na dzisiejszą noc czemu tam wyświetla taki komunikat ;)

wskazówka:
4Bajty

int ma rozmiar 4 bajtów ale.....jestem początkującym i nie wiem dlaczego tak się dzieje, myślałem może że jak zmienię typ liczby to będzie dobrze jednak tak nie jest :/ jeśli możesz zdradź mi ten sekret dlaczego tak jest bo mnie to niezmiernie ciekawi :)
Użytkownik xienonster edytował ten post 24 styczeń 2007, 00:46
#include<iostream> #include<conio.h> int main() { int Liczba; { std::cout << "Podaj liczbe" << std::endl; std::cin >> Liczba; if (Liczba < 0) //{ std::cout << "Liczba jest ujemna"; // if(Liczba > -10 ) std::cout << " liczba jednocyfrowa"; //} else if (Liczba < 10) std::cout << "Liczba jest jednocyfrowa"; else if (Liczba >=10 && Liczba <=99) std::cout << " Liczba jest dwucufrowa"; else std::cout << " Pozostale"; } getch(); }
To jest poprawne rozwiązanie owego zadanka nie chodziło jednak o te "4 bajty" tylko....zły algorytm. pozdrawiam

a racja zlekcewzyłem to iz liczba moze miec wiecej niz 2cyfry ...
ale to nie wyjasnia czemu pokazało sie ze liczba jest jednocyfrowa chyba ;)
wpisałes tam liczbe składającą sie z 10x7 a taka liczba nie miesci sie w zakresie liczby int wiec licznik sie tak jakby przekręcił ;)

no tak ale tez wpisywałem liczbę typu "777" i było to samo a to że akurat wpisałem tyle 7 to przypadek i akurat wtedy zrobiłem screnna wiedząc że przy wpisaniu małej liczby jest to samo no ale się wszystko rozwiązało i jest git :) Pozdrawiam

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •