![]() |
a moze to cos z semantyka:
Kod:
(( r < a[j][i+j]) = true ) |
bez tego false dostaje to:
(M[1])*((M[2])*((M[3])*((M[4])*((M[5])*((M[6])*((M[7])*(M[8]))))))) czyli brak wyznaczonego optymalnego nawiasowania |
w C warunek jest spelniony gdy wartosc wylicza sie do nie-zera, czyli jak jest cokolwiek innego od 0 to spelnia, a jak 0 to else.
if (r<a[j][i+j]) to porownanie zwraca chyba 1 (napewno cos rownego od 0) jak jest spelnione 0 jak niespelnione. w Pascalu jest podobnie, tylko tam 0 nazywa sie false a cokolwiek innego - true. Czyli nie powinno byc tego =false. |
bo chyba w c++ warunek si***281; spe***322;nia gdy jest false a w delphi gdy jest true wi***281;c doda***322;em gdy false. Nie zam si***281; za dobrze na c++ ale bez tego kod w delphi si***281; wywala.
To mo***380;e inaczej... jak optymalne nawiasowanie zapisa***263; w delphi wg tego: http://www.im.pwr.wroc.pl/~kik/AiSD/aisd5-4.pdf Algorytm podobny ale mo***380;e ten b***281;dzie dzia***322;a***263;. |
if (r < a[j][i+j])=false then
Dlaczego false ? |
To teraz ja mam mały problem z algorytmami ;) Mam zrobić optymalne mnożenie macierzy. Znalazłem takie kod w c++: http://www-users.mat.uni.torun.pl/~l...orytmy/omm.htm i próbuję go przepisać pod delphi ale coś mi to nie wychodzi. Wydaje mi się że algorytm jest ten sam a mimo to nie działa.
Kod:
unit Unit1;Kod w c++ daje operacji: 306 ((((((M[1])*((M[2])*(M[3])))*(M[4]))*(M[5]))*(M[6]))*(M[7]))*(M[8]) a w delphi: operacji: 1232 (M[1])*((M[2])*(((((M[3])*(M[4]))*(M[5]))*((M[6])*(M[7])))*(M[8]))) |
zalozmy ze na wejsciu mamy zakodowany znak ASCII w HEX (czyli 2 znaki opisujace 1 litere).
Jak zrobimy scanf("%x", &a); gdzie a jest unsigned int (int w praktyce tez moze byc). to z 9B otrzymamy 155. Teraz jak odejmiemy od 255 (to jest 2^8 - 1, najwieksza wartosc bajtu) otrzymane 155 - bedzie 100. Robimy (char) (100) i mamy d. To jest koncepcyjny zapis. Kuchni nie zrobie :) (to dziala tylko dla znakow lacinskich, nie polskich). Poza tym te dane sa bardzo ograniczone, wiec od bidy mozesz zrobic na chama alg, ze wczytujesz wszystko do tablicy i skaczesz wskaznikiem o 2 i za kazdym razem porownujesz za pomoca case/switch ze wszystkimi kodami i zapisujesz w tablicy wynikowej wlasciwy odkodowany znak. To jest szybke, latwe, ale bardzo 'nieinformatyczne', choc zyciowe :) |
Algorytm, może ktoś pomoże :)
Witam ;)
Zainteresował mnie ten problem, udało mi się go rozwiązać, ale nie w sposób zadawalający mnie, więc dzis z nudy postanowiłem pobawić się i wpadłem na pomysł, że można byłoby stworzyć program odczytujący hasło z pliku avi, lub chociaż program, który po podaniu ciągu znaków (HEX) przeliczyłby je na haslo do pliku tzn. narazie chodzi o to, aby znaleść algorytm i przeliczyć pozostałe znaki na HEX a następnie odwrócić algorytm i napisać prosty programik do zamiany HEX-owych wartości na hasło :) Niestety kombinuje już ładne kilka godzin, ale nie mogę wykombinować w jaki sposób zostało zaszyfrowane hasło :| Może na forum jest ktoś znający się na algorytmach i potrafiłby to rozszyfrować, podam to co udało mi się zdobyć: http://img208.imageshack.us/img208/1060/szyfr9qw.jpg |
| Wszystkie czasy w strefie CET. Aktualna godzina: 14:27. |
Powered by vBulletin® Version 3.9.0 LTS
Copyright ©2000 - 2026, vBulletin Solutions Inc.