Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z prawidłowym działaniem programu.

Ostatnio zmodyfikowano 2019-06-15 15:10
Autor Wiadomość
Mefju08
Temat założony przez niniejszego użytkownika
Problem z prawidłowym działaniem programu.
» 2019-06-15 13:05:15
Producent paneli słonecznych wyprodukowanej w technologii na bazie krzemu amorficznego podaje, że roczny spadek ich wydajności wynosi 0.87%.
Uzupełnij funkcję double calc_efficiency( int Wp, int period ), tak aby zwracała wartość mocy panelu w watach po określonym okresie eksploatacji. Parametry funkcji oznaczają:
Wp - nominalna moc nowego panelu w watach ( watt peak capacity)
period - okres w latach, po którym chcemy obliczyć przewidywaną moc panelu.

Zrobiłem coś takiego i nie działa to prawidłowo.

double calc_efficiency( int Wp, int period )
{
   
    for ( long double x=0; x<=period; x++){
      
        long double  lossPerYear,totalLoss;
        lossPerYear = Wp * 0.0087;
       
        totalLoss = Wp - lossPerYear * period;
        return totalLoss;
       
       
       
    }
   
    return 0;
}
P-174795
pekfos
» 2019-06-15 13:23:15
To ma być spadek procentowy względem nominalnej wartości (tak zrobiłeś), czy względem poprzedniego roku? Jak testujesz, czy wyniki są poprawne?
P-174796
Mefju08
Temat założony przez niniejszego użytkownika
» 2019-06-15 13:32:44
Tylko pierwszy wynik jest dobrze.
P-174797
Jacob99
» 2019-06-15 13:47:08
Chcesz obliczyć nic innego jak procent składany, tylko zamiast zwiększać wartość to ją zmniejszasz. Wzór na to:
V = P * (1 - x)^n
gdzie V jest wartością szukaną, P jest wartością początkową, x jest oprocentowaniem rocznym, n jest liczbą lat. W twoim przypadku ten wzór przybiera postać:
V = Wp * (1 - 0.0087) ^ period
P-174798
Mefju08
Temat założony przez niniejszego użytkownika
» 2019-06-15 15:02:38
Podczas próby podnoszenia do potęgi "period" wyskakują mi błędy,że nie moge dodać tego operatora. Biblioteki dodałem.
P-174799
pekfos
» 2019-06-15 15:06:32
Czy ty próbowałeś potęgować operatorem ^? W C++ nie ma operatora potęgowania. Użyj funkcji pow() z <cmath>, albo pętli.
P-174800
Mefju08
Temat założony przez niniejszego użytkownika
» 2019-06-15 15:10:16
Dodałem złą bibliotekę... Dzięki za pomoc. Zamykam
P-174801
« 1 »
  Strona 1 z 1