![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 0 Dołączył: 24.11.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam problem z zadaniem ktorego tresc jest nastepujaca: nalezy obliczyc reszte z dzielenia BEZ uzycia operatora modulo przez 97 z zalozeniem ze skrypt operuje na liczbach nie wiekszych niz 16 bitow. Celem zadania jest obliczenie wartosci IBAN czyli liczba dzielona bedzie miala 26 cyfr jezeli dobrze sie orjetuje. Problem polega w tym ze nie wiem jak sobie poradzic bez operatora... moze ktos podac wskazowke? -------------------- If you can't find a program that does what you want it to do, then write your own.
|
|
|
![]()
Post
#2
|
|
Administrator PHPedia.pl Grupa: Developerzy Postów: 1 102 Pomógł: 2 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Tak napisane w minutę. Sprawdź czy działa. -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 300 Pomógł: 1 Dołączył: 22.09.2003 Skąd: Czeladź Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Nie wiem czy dokładnie o to chodzi, ale resztę można obliczyć poprostu: x/y=z+r r=x-floor(x/y)*y (chyba - mogłem się walnąć ale na prostym przykładzie działa:P) Może to coś Ci pomoże, chociaż pewnie już dawno na to wpadłeś ![]() Pozdrawiam, Tsharek -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
ja bym polecał:
funkcja poprzednika może nie dziłać prawidłowo monieważ pentla while wykona się raz za dużo dla tego sposobu lepiej by było użyć składni do... while |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 0 Dołączył: 27.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(tsharek @ 2005-12-27 12:30:05) r=x-floor(x/y)*y Ten sposób jest dużo szybszy od pętli gdyż ile ta pętla będzie się wykonoywała dla danych np. 97*10^25 ( liczba dzielona bedzie miala 26 cyfr) modulo 2 wykona 10^25 przebiegów i wyjdzie mu zero. Odradzam pętle. I jak w 16 bitach zapiszesz 26 cyfr ![]() ![]() |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
oczywiście to rozwiązanie jest naleprze im krutszy kod tym lepiej
![]() pod warunkiem że łatwo go potem(potem znaczy po np 6miesiącach) przeczytać |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 0 Dołączył: 24.11.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat bcmod nie działa? Zadanie polega na NIE uzywaniu takich funkcji Cytat I jak w 16 bitach zapiszesz 26 cyfr ![]() Dziele cala liczbe na kilka mniejszych wyrazow. Poradzilem sobie dzieki wskazowce tsharek. -------------------- If you can't find a program that does what you want it to do, then write your own.
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
ksiadz:
Cytat jezeli dobrze sie orjetuje konradk2: Cytat krutszy sory za ot. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 01:30 |