Moro,
eli tämä pieni koodinpätkä ei jostain syystä tykkää toimia. Tulee yllättävän paljon virheilmoituksia. Pystyisikö joku jeesimään?
#include <iostream> using namespace std; float sulake(float,float); int main() { float teho; cout << "Paljonko laite kuluttaa(W): "; cin >> teho; float tulos = sulake(teho, 220); if (tulos < 10) cout << "Tarvitset 10A sulakkeen"; else if (tulos < 16) cout << "Tarvitset 16A sulakkeen"; else if (tulos < 20) cout << "Tarvitset 20A sulakkeen"; else cout << "Laitteen taakse tarvitaan useampi sulake"; return EXIT_SUCCESS; } float sulake(float teho, int 220) { float virta = teho / 220; return virta; }
Kannattaa jatkossa lisätä myös ne virheilmoitukset mukaan, niin auttaminen on helpompaa.
Tuossa on ainakin kaksi selvää virhettä, en ehdi just nyt kääntämään.
1) sulake-funktion tyypit ovat ristiriitaiset. Alussa olevassa esittelyssä toinen parametri on float, mutta toteutuksessa se on int.
2) Parametrin nimi ei saa alkaa numerolla, joten "220" on virheellinen. Vaihda tilalle vaikkapa "int v" ja seuraavalle riville "teho / v".
Lisäksi on mahdollista, että EXIT_SUCCESS ei ole näkyvissä. Jos siitä tulee valitusta, lisää #inlude <stdlib.h>.
Kiitoksia jlaire!
Ongelmana siis oli nähtävästi tuo 220. Nyt kääntyi ilman ongelmia!
Aihe on jo aika vanha, joten et voi enää vastata siihen.