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?

Naiwne potęgowanie modularne - Implementacja w C/C++
Ocena użytkownikóww: *****  / 2
SłabyŚwietny
Nadesłany przez Marian, 26 lutego 2011 16:03
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.

npm_1_c.cpp:
// Naiwne Potegowanie Modularne
// www.algorytm.org

#include<iostream>
using namespace std;

int main()
{
	int b, n;
	long long int a, wynik = 1;
	cout << "Program oblicza wartosc wyrazenia a^b mod n.\nPodaj a: ";
	cin >> a;
	cout << "Podaj b: ";
	cin >> b;
	cout << "Podaj n: ";
	cin >> n;
	cout << a << "^" << b << " mod " << n << " = ";
	a %= n; // a = a mod n
	for (int i = 0; i < b; i++)
	{
		wynik *= a; // wynik = wynik * a
		wynik %= n; // wynik = wynik mod n
	}
	cout << wynik << endl;

	return 0;
}
Dodaj komentarz