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

Zadanie 1.11

Ostatnio zmodyfikowano 2016-07-08 15:33
Autor Wiadomość
CCbolt
Temat założony przez niniejszego użytkownika
Zadanie 1.11
» 2016-07-08 14:01:10
Problem mam z ostatnim sumowaniem w programie, nie widzę błędu.

C/C++
#include <iostream>

using namespace std;

int main()

{
   
    int a, b, c;
    float x1, x2, x3;
   
    x1 = x2 = x3 = 15;
   
    cout << " Podaj A: ";
    cin >> a;
    cout << " Podaj B: ";
    cin >> b;
    cout << " Podaj C: ";
    cin >> c;
   
    cout << "A1: (a+b)-x2= " <<( a + b ) - x2 << endl;
    cout << "A2: (c-a)*x1= " <<( c - a ) * x1 << endl;
    cout << "A3: (b*c)/x3= " <<( b * c ) / x3 << endl;
   
    bool x =( a + b ) - x2 <=( c - a ) * x1; // x porownuje A1 i A2
    cout << "A1 <= A2: " << x << endl;
   
   
    bool y =( b * c ) / x3 ==( a + b ) - x2; // y porownuje A3 iA2
    cout << "A3 == A2: " << y << endl;
   
    bool z =(( c - a ) * x1 ) -(( b * c ) / x3 ) <(( b * c ) / x3 ) +(( b * c ) / x3 );
    cout << "A2-A3 < A3+A3: " << y << endl;
   
    return 0;
}
P-149770
pekfos
» 2016-07-08 14:04:49
Wyświetlasz zły wynik. Może nie wprowadzaj niepotrzebnych zmiennych, jeśli masz problem z upilnowaniem, czy używasz potem właściwego wyniku.
P-149771
CCbolt
Temat założony przez niniejszego użytkownika
» 2016-07-08 14:53:09
Praktykuję, lepiej teraz popełnić błąd niż później. Jak to powinno poprawnie wyglądać? wszystkie wyniki poza ostatnim są ok.
P-149772
BlackFive
» 2016-07-08 14:58:19
#include <iostream>

using namespace std;

int main(){
   
    int a, b, c;
    float wynik1, wynik2, wynik3; // zmienne pomocnicze które sprawią że twój kod będzie bardziej przejrzysty
    float x1, x2, x3;
   
    x1 = x2 = x3 = 15;
   
    cout << " Podaj A: ";
    cin >> a;
    cout << " Podaj B: ";
    cin >> b;
    cout << " Podaj C: ";
    cin >> c;
   
    wynik1 = (a+b)-x2; // zamiast pisać równanie 3 razy lub więcej zapisz sobie do zmiennej
    wynik2 = (c-a)*x1; // jeżeli pomylił byś się w pisaniu równania i zasadą Ctrl+C/V zrobił np. 100 kopii to poprawiaj to później
    wynik3 = (b*c)/x3; // a tak to zmiana jest w jednym miejscu :)
   
    cout << "A1: (a+b)-x2= " << wynik1 << endl;
    cout << "A2: (c-a)*x1= " << wynik2 << endl;
    cout << "A3: (b*c)/x3= " << wynik3 << endl;
   
    bool x = wynik1 <= wynik2; // x porownuje A1 i A2
    cout << "A1 <= A2: " << x << endl;
   
    //bool y =( b * c ) / x3 ==( a + b ) - x2; // y porownuje A3 iA2
    // Wyżej porównujesz z A1 za bardzo sobie namieszałeś i gubisz się w kodzie...
    bool y = wynik3 == wynik2; // y porownuje A3 iA2 
    cout << "A3 == A2: " << y << endl;
   
    bool z =(wynik2-wynik3) < (wynik3+wynik3);
    cout << "A2-A3 < A3+A3: " << z << endl; // tutaj miałeś błąd z wypisaniem wyniku zamiast zmiennej z miałeś y
   
    return 0;
}


upraszczając kod możesz wprowadzać dane również w taki sposób:

cout << " Podaj A, B, C: ";
cin >> a >> b >> c;
Kolejną daną wprowadzasz po wciśnięciu przycisku "ENTER"
P-149773
karambaHZP
» 2016-07-08 15:17:44
Jak to powinno poprawnie wyglądać? wszystkie wyniki poza ostatnim są ok.
W ostatnim wyświetlasz y zamiast z.
P-149774
CCbolt
Temat założony przez niniejszego użytkownika
» 2016-07-08 15:33:52
Faktycznie "z" z "y" pomyliłem. @BlackFive dzięki za podpowiedź, trochę pod siebie podrasowałem kod i zdaje się że jest przejrzysty

C/C++
#include <iostream>

using namespace std;

int main()
{
    int a, b, c;
    float x1, x2, x3;
    float A1, A2, A3; // zmienne pomocnicze, wyniki
   
    x1 = x2 = x3 = 15;
   
    cout << "Podaj A: ";
    cin >> a;
    cout << "Podaj B: ";
    cin >> b;
    cout << "Podaj C: ";
    cin >> c;
   
    A1 =( a + b ) - x2; //wyniki
    A2 =( c - a ) * x1;
    A3 =( b * c ) / x3;
   
    cout << "A1: (a+b)-x2= " << A1 << endl;
    cout << "A2: (c-b)*x1= " << A2 << endl;
    cout << "A3: (b*c)/x3= " << A3 << endl;
   
    bool x = A1 <= A2;
    cout << "A1 <= A2: " << x << endl;
   
    bool y = A3 == A2;
    cout << "A3 == A2: " << y << endl;
   
    bool z =( A2 - A3 ) <( A3 + A3 );
    cout << "(A2-A3)<(A3+A3): " << z << endl;
   
    return 0;
}


Ten kod jest fajny ale źle się dane w konsoli wprowadza, mało przejrzyście.
C/C++
cout << " Podaj A, B, C: ";
cin >> a >> b >> c;
P-149775
« 1 »
  Strona 1 z 1