obliczanie objętości

0

witam, mam za zadanie "Napisz program, który będzie wyznaczał objętość prostopadłościanu lub walca w zależności od tego, która z opcji zostanie wybrana. Przyjmij, że wartość stałej Pi wynosi 3,141.
Wejście

Zestawy danych składające się z nazwy bryły ("walec" lub "prostopadloscian") oraz jej wymiarów: promień i wysokość lub 3 krawędzie w liczbach rzeczywistych.

Wyjście

Objętość bryły w liczbach rzeczywistych (z dokładnością do dwóch miejsc po przecinku)."

mój program wygląda następująco, jednak jest w nim jakiś błąd.. :

#include <iostream>
using namespace std; 

int main () { 
    double pi=3.141; 
    string s; 
    double wynik, promien, wysokosc, bok1, bok2, bok3; 
    
    while(cin>>s) {
        if(s=="walec") { 
            cin>>promien>>wysokosc; 
            wynik=pi * promien*promien*wysokosc; 
            
             } 
        
         else { 
            cin>>bok1>>bok2>>bok3; wynik=bok1*bok2*bok3; 
               } 
               
          wynik = wynik * 100;
            wynik=(int)(wynik + 0.5);
            cout << wynik/100<< endl;
    }    
    return 0;
    }

Lekko się spóźniłem, ale dodałem <code> żeby się lepiej potomnym czytało - msm

0
          wynik = wynik * 100;
           wynik=(int)(wynik + 0.5);
           cout << wynik/100<< endl;

Do czego służy ten fragment, a ściślej operacje na wynik w nim? Przecież liczysz go wcześniej.

0

wynik ma być podany z dokłądnością do dwóch miejsc po przecinku

0

Czy do zamiany liczby na 32. bitową jest jakaś funkcja?

1 użytkowników online, w tym zalogowanych: 0, gości: 1