Witam.
Z góry przepraszam za chaotyczność i ewentualne błędy w kodzie ponieważ jest to drugi raz w życiu, gdy coś tam sobie klepię w codeblocksie.
#include <iostream>
using namespace std;
float x,y,z,a,b,c,k,l,m,n,o;
int main()
{
cout << "Kalkulator oplacalnoœci alkoholu." << endl;
cout << "Uzupelnij wymagane informacje." <<endl;
cout << "Podaj posiadany budzet w zl:" <<endl;
cin >> k;
cout << "Wprowadz dane pierwszego napoju." <<endl;
cout << "Cena:" <<endl;
cin >> x;
cout << "Zawartosc alkoholu w napoju wyrazona w %:" <<endl;
cin >> y;
cout << "Ilosc napoju wyrazona w ml:" <<endl;
cin >> z >>endl;
cout << "Wprowadz dane drugiego napoju." <<endl;
cout << "Cena:" <<endl;
cin >> a;
cout << "Zawartosc alkoholu w napoju wyrazona w %:" <<endl;
cin >> b;
cout << "Ilosc napoju wyrazona w ml:" <<endl;
cin >> c;
l = (z*y)/100*0.8;
m = (b*c)/100*0.8;
n = k/x;
o = k/a;
if(l>m){
cout << "Bardziej oplacalny jest napoj pierwszy poniewaz w mozliwej ilosci jego zakupienia jest wiecej gram alkoholu" <<endl;
cout << o*m <<endl;
}
if(l<m){
cout << "Bardziej oplacalny jest napoj drugi poniewaz w mozliwej ilosci jego zakupienia jest wiecej gram alkoholu" <<endl;
cout << n*l <<endl;
}
return 0;
}
Mój problem polega na tym, że robię coś źle z funkcją if. Wyświetlane są oba warianty ewentualnego wyniku zamiast tylko jednego oraz problem z endl;. Pomiędzy "Wprowadź dane drugiego napoju", a "Cena:" powinna być linijka odstępu tak jak przy wprowadzaniu danych pierwszego napoju, ale jej nie ma. Oba zdania nieestetycznie stykają się ze sobą w jednej linii.
Nie musi on liczyć wszystkiego zgodnie z prawdą bo to tylko taki domowy eksperyment, ale zależy mi na tym, aby działało to tak z jakim zamiarem to napisałem.