[Algorytm] dodawanie, mnożenie
: 17 mar 2020, o 19:34
Witam,
Mam problem z tymi dwoma zadaniami, które dostałem do zrobienia na przedmiocie architektura komputerów.
A oto ich treść:
Zad.1 Załóżmy, że możemy wykonywać tylko dwa działania na liczbach: dodawanie (dwuargumentowe) i mnożenie przez 2 (jednoargumentowe). Jak „najtaniej” pomnożyć daną liczbę przez 15 jeśli:
a) zarówno dodawanie jak i mnożenie przez dwa kosztuje 1 gr.
b) dodawanie kosztuje 1 gr., a mnożenie przez dwa kosztuje 2 gr.
c) dodawanie kosztuje 2 gr., a mnożenie przez dwa kosztuje 1 gr. A gdybyśmy mieli do dyspozycji jeszcze odejmowanie za 1 gr?
Proszę zwrócić uwagę na to, że w rzeczywistej sytuacji zamiast o groszach myślelibyśmy raczej o mikrosekundach w przypadku procesora do komputera stacjonarnego i mikrojouleach w przypadku procesora do komputera mobilnego (dlaczego właśnie tak?).
Zad.2 Przy założeniach, jak w zadaniu wyżej, zaproponować możliwie „tani” algorytm podnoszenia danej liczby do kwadratu.
Z góry dziękuję za pomoc.
Mam problem z tymi dwoma zadaniami, które dostałem do zrobienia na przedmiocie architektura komputerów.
A oto ich treść:
Zad.1 Załóżmy, że możemy wykonywać tylko dwa działania na liczbach: dodawanie (dwuargumentowe) i mnożenie przez 2 (jednoargumentowe). Jak „najtaniej” pomnożyć daną liczbę przez 15 jeśli:
a) zarówno dodawanie jak i mnożenie przez dwa kosztuje 1 gr.
b) dodawanie kosztuje 1 gr., a mnożenie przez dwa kosztuje 2 gr.
c) dodawanie kosztuje 2 gr., a mnożenie przez dwa kosztuje 1 gr. A gdybyśmy mieli do dyspozycji jeszcze odejmowanie za 1 gr?
Proszę zwrócić uwagę na to, że w rzeczywistej sytuacji zamiast o groszach myślelibyśmy raczej o mikrosekundach w przypadku procesora do komputera stacjonarnego i mikrojouleach w przypadku procesora do komputera mobilnego (dlaczego właśnie tak?).
Zad.2 Przy założeniach, jak w zadaniu wyżej, zaproponować możliwie „tani” algorytm podnoszenia danej liczby do kwadratu.
Z góry dziękuję za pomoc.