Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Problem z kodem


boarBiceps

Rekomendowane odpowiedzi

Opublikowano

Witam, robię kurs C++ lnu. Mam zadanie:
 


W trzech bankomatach znajdują się banknoty o nominałach 50, 100 i 200 zł. Na koniec dnia z pierwszego bankomatu ubyła połowa banknotów 50 zł, subtract_100banknotów 100 zł oraz o jeden więcej od subtract_100  banknotów 200 zł. Z bankomatów drugiego i trzeciego ubyła dokładnie połowa zgromadzonego w nich kapitału. 
Napisz funkcję, która zwróci kwotę jaka została łącznie we wszystkich bankomatach na koniec dnia. 
Aby uzyskać ilość banknotów znajdujących się w poszczególnych bankomatach, użyj funkcji getBanknoty( bank, nominal ), gdzie parametry bank nominal są typami wyliczeniowymi zadklarownymi w pliku bankomat_api.h i oznaczają odpowiednio numer banku oraz rodzaj nominału. 
Deklarację funkcji getBanknoty( bank, nominal ) zawiera plik bankomat_api.h. Pamiętaj, aby dołączyć go do kodu źródłowego za pomocą dyrektywy #include.


 
Mój kod:

// Zadanie:
// Napisz funkcję, która zwróci kwotę jaka została łącznie we wszystkich bankomatach na koniec dnia. 
// Aby uzyskać ilość banknotów znajdujących się w poszczególnych bankomatach, użyj funkcji getBanknoty( bank, nominal ),
// gdzie parametry bank i nominal są typami wyliczeniowymi zadklarownymi w pliku bankomat_api.h i oznaczają odpowiednio numer banku oraz rodzaj nominału. 
// Deklarację funkcji getBanknoty( bank, nominal ) zawiera plik bankomat_api.h. Pamiętaj, aby dołączyć go do kodu źródłowego za pomocą dyrektywy #include. 
#include <bankomat_api.h>
int bilansDnia( int subtract_100 )
{
    int A;
    int B;
    int C;
    int wybranoA;
    int wybranoB;
    int wybranoC;
    int sumA;
    int sumB;
    int sumC;
    int wszystkie;
    A = getBanknoty(BANK_POLSKI, NOMINAL_50) * 50 + getBanknoty(BANK_POLSKI, NOMINAL_100) * 100 + getBanknoty(BANK_POLSKI, NOMINAL_200) * 200;
    wybranoA = getBanknoty(BANK_POLSKI, NOMINAL_50) / 2 * 50 +    ( subtract_100 * 100 ) + ( ( subtract_100 + 1 ) * 200 );
    B = getBanknoty(BANK_LNU, NOMINAL_50) * 50 + getBanknoty(BANK_LNU, NOMINAL_100) * 100 + getBanknoty(BANK_LNU, NOMINAL_200) * 200;
    wybranoB = getBanknoty(BANK_LNU, NOMINAL_50) / 2 * 50 + getBanknoty(BANK_LNU, NOMINAL_100) / 2 * 50 + getBanknoty(BANK_LNU, NOMINAL_200) / 2 * 50; 
    C = getBanknoty(BANK_ROBOTOW, NOMINAL_50) * 50 + getBanknoty(BANK_ROBOTOW, NOMINAL_100) * 100 + getBanknoty(BANK_ROBOTOW, NOMINAL_200) * 200;
    wybranoC = getBanknoty(BANK_ROBOTOW, NOMINAL_50) / 2 * 50 + getBanknoty(BANK_ROBOTOW, NOMINAL_100) / 2 * 50 + getBanknoty(BANK_ROBOTOW, NOMINAL_200) / 2 * 50;
    sumA = A - wybranoA;
    sumB = B - wybranoB;
    sumC = C - wybranoC;
    wszystkie = sumA + sumB + sumC;
    return wszystkie;
}

 


Biblioteka bankomat.api.h

 

// Copyright (C) 2015-2016 Liga Niezwykłych Umysłów rev: 0.1
// This software is licensed under the LNU statements

#ifndef BANKOMAT_API
#define BANKOMAT_API

// E_BANKI: wartość wyliczeniowa, numer banku kontrolowany przez Ligowa Inspekcje Bankowa
//      BANK = {numer}
enum E_BANKI
{
    BANK_UNKNOWN        = 0,
    BANK_POLSKI         = 1,
    BANK_LNU            = 2,
    BANK_ROBOTOW        = 3,
    BANK_TECHNOCORE     = 4
};

// E_NOMINALY: wartość wyliczeniowa, nominaly platnicze
//      NOMINAL = {wartosc}
enum E_NOMINALY
{
    NOMINAL_UNKNOWN     = 0,
    NOMINAL_10          = 10,
    NOMINAL_20          = 20,
    NOMINAL_50          = 50,
    NOMINAL_100         = 100,
    NOMINAL_200         = 200
};

// getBanknoty: Funkcja zwraca ilość dostępnych banknotów w podanym banku dla zadanego nominału
// Argumenty:
//      bank: numer banku, wartosc typu E_BANKI
//      nominal: wartość nominału tupu E_NOMINALY
// return:
//      int: ilość banknotów w danym banku dla zadanego nominału
int getBanknoty( E_BANKI bank, E_NOMINALY nominal );

#endif // BANKOMAT_API

 


 

W zakładce "Testy" wyskakuje mi:

 

 FAILEDbilansDnia(10) { return 30600; } => isEqual('30600' == '23475')

FAILEDbilansDnia(16) { return 28800; } => isEqual('28800' == '21675')
FAILEDbilansDnia(21) { return 27300; } => isEqual('27300' == '20175')
FAILEDbilansDnia(5) { return 32100; } => isEqual('32100' == '24975')
FAILEDbilansDnia(8) { return 31200; } => isEqual('31200' == '24075')
FAILEDbilansDnia(3) { return 32700; } => isEqual('32700' == '25575')

Proszę o pomoc

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...