Parašė AivarasZs· 2011 Gru. 11 15:12:33
#1
Sveiki, susidūriau su šokiom tokiom problemo gal padėsit. Kaškaip blogai skaičiuoja mano programa.
Užduotis
Elektrinis virdulys – per metus vidutiniškai sunaudoja e kWh elektros energijos, elektrinë viryklë –
v kWh, šaldytuvas – s kWh, kompiuteris – k kWh, skalbimo mašina – sm kWh, televizorius – t
kWh, energija taupanti elektros lemputë – m kWh. Namuose yra n tokiu elektros lempuciu. Šeima
nusprendë ir per mënesi sunaudoti ne daugiau kaip g kWh elektros energijos (visi duomenys yra
sveikieji skaiciai). Jei šeima sunaudos ne daugiau elektros energijos per metus, negu planavo, tai
planas yra geras, jei ne – keliu elektra taupanciu lempuciu ng reikia atsisakyti, kad sunaudotu
planuojama elektros energijos kieki g.
Pasitikrinkite: kai e = 94, v = 201, s = 519, k = 358, sm = 261, t = 143, m = 10, n = 12, g = 150, tuomet
ekrane turi buti rodoma: Taupymo planas geras.
Kai e = 94, v = 201, s = 519, k = 358, sm = 261, t = 143, m = 10, n = 12, g = 140, tuomet ekrane turi buti
rodoma: Reikia atsisakyti 2 elektra taupanciu lempuciu.
Kodas.
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int e, v, s, k, sm, t, m, n, g;
int kWhPerMenesi;
int kiekLempuciuAtsisakyti = 0;
int arPlanasGeras;
cout << "Programa darba pradejo." << endl;
cout << "Iveskite e, v, s, k, sm, t, m, n, g " << endl;
cin >> e;
cin >> v;
cin >> s;
cin >> k;
cin >> sm;
cin >> t;
cin >> m;
cin >> n;
cin >> g;
kWhPerMenesi = (e + v + s + k + sm + t + (m * n)) / 12;
if (kWhPerMenesi <= g)
{
arPlanasGeras == true;
}
if (m > 0)
{
kiekLempuciuAtsisakyti++;
m--;
}
if (arPlanasGeras && kiekLempuciuAtsisakyti == 0)
{
cout << "Taupymo planas geras." << endl;
}
else if (arPlanasGeras)
{
cout << "Reikia atsisakyti " << kiekLempuciuAtsisakyti << " elektra taupanciu lempuciu." << endl;
}
else
{
cout << "Taupymo planas blogas" << endl;
}
cout << "Programa darba baige." << endl;
cin.get();
cin.get();
return 0;
}
Parašė ultimato· 2011 Gru. 19 21:12:39
#2
blee ;D gali pradzioj pries main int nutrint, kad liktu tiesiog main () ,bet nemanau kad cia bus klaida ;DD Manau kad klaida yra else ife, o kelintokas esi?
Parašė AivarasZs· 2011 Gru. 19 22:12:41
#3
Šitą uždavinį jau padėjo pataisyti uzdarbis.lt vienas narys. Beje nelabai yra skirtumo dėl to priekį int. Aš esu devintokas, bet lankau atskira mokykla progravimui. :)
Parašė online· 2012 Sau. 23 23:01:23
#6
ultimato parašė:
blee ;D gali pradzioj pries main int nutrint, kad liktu tiesiog main () ,bet nemanau kad cia bus klaida ;DD Manau kad klaida yra else ife, o kelintokas esi?
idomiai tu cia mastai c++ gaboja int reiksia sveika skaiciu kaip 0,1ir taip toliau
jaigu funkcija bus be tipo gausis errors.. kiek zinau c++ padare update kureme nebereik grazinti reiksmes sio atveju return 0; bet sito nesu tikras nes nemeginau girdejau tik gandus