[C++] NWD,NWW. Wprowadzenie wielu par liczb
Ostatnio zmodyfikowano 2013-11-17 14:17
pekfos |
» 2013-11-17 12:59:32 Co ten program, według Ciebie, miał robić? |
|
Monika90 |
» 2013-11-17 13:00:13 Raczej coś takiego: int a, b; while( std::cin >> a >> b ) { }
|
|
michal123 Temat założony przez niniejszego użytkownika |
» 2013-11-17 13:04:34 @pekfos Zdaje się , że jeśli wiersz zdefiniuję jako linijkę tekstu w tym moim pliku txt to zadziała. Mogę prosić o kolejne wskazówki, gdyż próbję na różne sposoby i nie działa? @Monika90 Ten kod niby działa ale podaje złe wyniki, o co chodzi? #include <iostream>
int main() { int a, b; while( std::cin >> a >> b ) { while( a != b ) { if( b > a ) b -= a; else a -= b; } int azap = a, bzap = b; std::cout << "NWD = " << a << std::endl; std::cout << "NWW = " <<( azap * bzap ) / a; } return 0; }
|
|
pekfos |
» 2013-11-17 13:36:03 Tworzysz azap i bzap w złym miejscu. |
|
michal123 Temat założony przez niniejszego użytkownika |
» 2013-11-17 13:42:42 Super, właśnie też na to wpadłem . Zaraz poprawię jeszcze program i wrzuce ostateczną wersję razem z wynikiem w prawidłowej postaci (miejmy nadzieje że zadziała)
|
|
michal123 Temat założony przez niniejszego użytkownika |
» 2013-11-17 14:17:06 Teraz działa, jak trzeba. Zmieniłem jeszcze żeby mi wyrzucało wynik na liczba1 | liczba2 | NWD | NWW . Dzięki za pomoc Monika90. Dzięki pekfos - jak zawsze pomocny:)) #include <iostream>
int main() { int a, b; while( std::cin >> a >> b ) { int azap = a, bzap = b; while( a != b ) { if( b > a ) b -= a; else a -= b; } std::cout << "a=" << azap << "||b=" << bzap << "||NWD = " << a << "||NWW = " <<( azap * bzap ) / a << std::endl; } return 0; }
|
|
1 « 2 » |