Ursäkta att jag inte har svarat dig tidigare men jag åkte på en rejäl förkylning så jag har varit sängliggandes i några nätter och på dagarna kallar barnet och frugan hehe.
Men jag postar om inlägget:
Jaha, då har man kört fast igen då.
Ganska rejält också.
Har kollat och läst men kan inte förstå hur man ska göra.
Så här ser koden ut idagsläget:
Kod: Markera allt
/*
* bilprogrammet.cpp
*
* Copyright 2008 Robin Sandberg <robin@PHILIPS>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*/
#include <iostream> // Hämtar information från Iostream bibloteket, iostream är en head fil.
#include <string> // hämtar information från string bibloteket.
int main(int argc, char** argv) // Skickar & tar imot information ifrån operativsystemet.
{
using namespace std; // Använder en "namespace" som underlättar programmeringen av koden.
long double mil, liter, summa; // Valt "long" här därför att jag inte vet hur stort resultat talet blir. "doble" gör talen flytande.
int val;
string bilar;
cout << "*********************************\n"; //Skriver ut en text till bildskärmen.
cout << "* Bensinförbruknings-kalkylator *\n";
cout << "*********************************\n\n - Bekräfta alla inmatningar med Enter -\n\n";
cout << "Inmatning - Antal körda mil?: →_\b ";
cin >> mil; // Skriver in det inmatade värdet och lägger det i variabeln "mil".
cout << "\n\nInmatning - Antal tankade liter?: →_\b ";
cin >> liter; // Skriver in det inmatade värdet och lägger det i variabeln "liter".
cout << "\n\nVal av bil:\n\n1. Volvo\n2. Opel\n3. Saab\n\nVälj bil genom att ange siffran 1-3: →_\b ";
cin >> val; // Skriver in det inmatade valet till variabeln "val".
if (val==1) // Om det inmatade valet är "1" så händer följande.
{
bilar = "Volvo"; // skickar information till stringen bilar att den ska innehålla "Volvo".
}
if (val==2)
{
bilar = "Opel";
}
if (val==3)
{
bilar = "Saab";
}
cout << "\n\n\nBIL MIL LITER BENSINFÖRBRUKNING (1/mil)\n";
cout << "-------- -------- -------- ---------------------------\n";
summa = liter / mil; // Räknar ut liter dividerat med mil.
cout << bilar << " " << mil << " " << liter << " " << summa; // här skriver dom olika variabelna och stringarna ut till bildskärmen.
// här ska meddelandena hamna //
cout << "\n\n\n***********************************\n";
cout << "Skapat av Robin Sandberg.\nDetta program går under GNU/GPL lincens.";
return 0; // Skickar information till "int main()" att programmet har slutförts, detta resulterar i att int main rapporterar detta till OS:et som stänger programmet.
}
Men nu är det så att en eventuell
sats ska känna av vilken
variabel som blev inmatad dvs; volvo , saab eller opel.
och det finns vissa regler om hur stor summan får blir i programmet.
Dessa regler är:
Volvo : 1,0*
Opel: 0,9*
Saab: 0,8*
(0,8* menas med att det är ok om värdet blir 0,8435345 bara inte värdet överstiger 0,9)
Och om summan överstrider för den valda
variabeln så ska det visas ett fel meddelande under menyerna ( se koden ).
Det ska stå:
Serva bilen
Och om summan ligger under eller lika som den valda
variabeln så ska det komma upp detta meddelande istället:
Det ska stå:
Bensinförbrukning OK
Min spontana tanke på koden är att det ska stå följande men det kommer inte fungera riktigt tror jag:
Kod: Markera allt
if (bilar==volvo)
{
// Någon kod som kollar upp regeln för volvo.
cout << "Serva bilen";
}
else
cout << "Bensinförbrukning OK";
Sedan upprepas det för opel osv.