algorytm.org

Implementacja w C/C++



Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Symbol Newtona - Implementacja w C/C++
Ocena użytkownikóww: *****  / 36
SłabyŚwietny
Nadesłany przez Bartosz Bednarczyk, 11 lipca 2011 14:00
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.

Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.

Symbol Newtona - Iteracyjnie.cpp:
#include <iostream>
 
/*
 * Bartosz "WiedźMAC" Bednarczyk
 * Liceum Ogólnokształcące im. Władysława Broniewskiego w Strzelcach Opolskich
 * Iteracyjne obliczanie wartości Symbolu Newtona ( C++ )
 * www.algorytm.org
 */
 
unsigned long long Newton( unsigned int n, unsigned int k)      // Funkcja obliczająca symbol newtona
{
        double Wynik = 1;       // Deklaracja zmiennej ( używamy double dla dokładności obliczeń )
        
        for( unsigned int i = 1; i <= k; i++)   // Od 1 do k wykonujemy : 
        {
                Wynik = Wynik * ( n - i + 1 ) / i;      // Obliczanie ze wzoru iteracyjnego
        }
        
        return (unsigned long long) Wynik;      // Zwróć Wynik
}
 
int main(void) 
{
        unsigned int n, k;
        
        std::ios_base::sync_with_stdio(false);  // Przyśpieszanie I/O
        
        std::cin >> n >> k;     // Wczytywanie liczb
        
        if( k == 0 || k == n ) std::cout << "1";        // Jeżeli k = 0 lub k = n to wypisz 1
        else std::cout << Newton(n, k);                 // W przeciwnym wypadku oblicz wartość symbolu newtona        
                 
        return 0;
}
Dodaj komentarz